Unable to save workspace
6 posts
• Page 1 of 1
Unable to save workspace
I'd been using ]Runtime and then got
)save
Cannot perform operation when # is referenced by session namespace.
Reached via:
⎕SE.SALTUtils...dmx...EN
What does this mean and how do I recover from it?
)save
Cannot perform operation when # is referenced by session namespace.
Reached via:
⎕SE.SALTUtils...dmx...EN
What does this mean and how do I recover from it?
- nicholas.small
- Posts: 23
- Joined: Tue Mar 30, 2021 8:45 pm
Re: Unable to save workspace
It means that there is a namespace reference somewhere in ⎕SE (most probably in ⎕SE.SALTUtils.dmx) that points to something in the root namespace #. The workspace cannot be saved when references exist between any subspace ⎕SE and any subspace of # (in either direction).
We'll look at whether the ]runtime command can be a bit more careful about this. Meanwhile, you may be able to work around it by expunging ('⎕SE.SALTUtils.dmx') to see whether that clears it up.
We'll look at whether the ]runtime command can be a bit more careful about this. Meanwhile, you may be able to work around it by expunging ('⎕SE.SALTUtils.dmx') to see whether that clears it up.
-
Morten|Dyalog - Posts: 460
- Joined: Tue Sep 09, 2008 3:52 pm
Re: Unable to save workspace
Somewhere in ⎕SE there has been created a namespace (or object or an array that contains such) that is a reference to # or a namespace within it.
If you have a non-empty )si stack then )clearing it might well remove the problem because the reference will almost certainly be localised in one of the ⎕SE functions.
Alternatively it may be that your function has created a global reference in ⎕SE to # or a namespace within it. In this case it will be necessary to examine your code to find and eliminate the offending reference perhaps by localisation and to remove the reference from ⎕SE.
If you have a non-empty )si stack then )clearing it might well remove the problem because the reference will almost certainly be localised in one of the ⎕SE functions.
Alternatively it may be that your function has created a global reference in ⎕SE to # or a namespace within it. In this case it will be necessary to examine your code to find and eliminate the offending reference perhaps by localisation and to remove the reference from ⎕SE.
-
Phil Last - Posts: 628
- Joined: Thu Jun 18, 2009 6:29 pm
- Location: Wessex
Re: Unable to save workspace
Thanks, Morten - that resolved the issue.
A couple of other accompanying factors:
1. I had a 'Find' window open when I last ran ]Runtime and when I first tried )save.
2. There were what appeared to me to be spurious blank lines produced after the result of ]Runtime:
]runTime "((200⍴ns)SSASSIGNtest (20⍴'\abc\defg\hi\jkl\mno') (2×⍳5))" "(200⍴ns)SSASSIGNI (20⍴'\abc\defg\hi\jkl\mno') (2×⍳5)" -c
((200⍴ns)SSASSIGNtest (20⍴'\abc\defg\hi\jkl\mno') (2×⍳5)) → 9.3E¯6 | 0% ⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕
(200⍴ns)SSASSIGNI (20⍴'\abc\defg\hi\jkl\mno') (2×⍳5) → 1.1E¯5 | +13% ⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕
]runTime "((200000⍴ns)SSASSIGNtest (20000⍴'\abc\defg\hi\jkl\mno') (2×⍳5000))" "(200000⍴ns)SSASSIGN (20000⍴'\abc\defg\hi\jkl\mno') (2×⍳5000)" -c
((200000⍴ns)SSASSIGNtest (20000⍴'\abc\defg\hi\jkl\mno') (2×⍳5000)) → 6.7E¯4 | 0% ⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕
(200000⍴ns)SSASSIGN (20000⍴'\abc\defg\hi\jkl\mno') (2×⍳5000) → 5.9E¯4 | -12% ⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕
FNS←⎕NL 3 4
The first line is empty and the next three have seven blanks.
I've just twice repeated the commands above. The first time the output was as above, the second time there were no spurious blank lines.
A couple of other accompanying factors:
1. I had a 'Find' window open when I last ran ]Runtime and when I first tried )save.
2. There were what appeared to me to be spurious blank lines produced after the result of ]Runtime:
]runTime "((200⍴ns)SSASSIGNtest (20⍴'\abc\defg\hi\jkl\mno') (2×⍳5))" "(200⍴ns)SSASSIGNI (20⍴'\abc\defg\hi\jkl\mno') (2×⍳5)" -c
((200⍴ns)SSASSIGNtest (20⍴'\abc\defg\hi\jkl\mno') (2×⍳5)) → 9.3E¯6 | 0% ⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕
(200⍴ns)SSASSIGNI (20⍴'\abc\defg\hi\jkl\mno') (2×⍳5) → 1.1E¯5 | +13% ⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕
]runTime "((200000⍴ns)SSASSIGNtest (20000⍴'\abc\defg\hi\jkl\mno') (2×⍳5000))" "(200000⍴ns)SSASSIGN (20000⍴'\abc\defg\hi\jkl\mno') (2×⍳5000)" -c
((200000⍴ns)SSASSIGNtest (20000⍴'\abc\defg\hi\jkl\mno') (2×⍳5000)) → 6.7E¯4 | 0% ⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕
(200000⍴ns)SSASSIGN (20000⍴'\abc\defg\hi\jkl\mno') (2×⍳5000) → 5.9E¯4 | -12% ⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕
FNS←⎕NL 3 4
The first line is empty and the next three have seven blanks.
I've just twice repeated the commands above. The first time the output was as above, the second time there were no spurious blank lines.
- nicholas.small
- Posts: 23
- Joined: Tue Mar 30, 2021 8:45 pm
Re: Unable to save workspace
I should add that this ⎕SE.SALTUtils.dmx is a clone of ⎕DMX, stored in SALTUtils as a record of any error that happened during user command execution. It could indeed contain problematic references. In version 19.0, we've ensured that that it doesn't have such issues.
-
Adam|Dyalog - Posts: 143
- Joined: Thu Jun 25, 2015 1:13 pm
Re: Unable to save workspace
Hi Nicholas,
If this happens to you again, please try a )reset and see if that helps.
Also, in general, you can create create an aplcore-like file with
where c:\tmp\ is an existing directory of your choice.
If you open another instance of Dyalog, you should be able to copy code and other objects from this mycor.cor file.
e.g.
)copy c:\tmp\mycor.cor
Regards,
Vince
If this happens to you again, please try a )reset and see if that helps.
Also, in general, you can create create an aplcore-like file with
+2 ⎕nq '.' 'dumpws' 'c:\tmp\mycor.cor'
where c:\tmp\ is an existing directory of your choice.
If you open another instance of Dyalog, you should be able to copy code and other objects from this mycor.cor file.
e.g.
)copy c:\tmp\mycor.cor
Regards,
Vince
- Vince|Dyalog
- Posts: 432
- Joined: Wed Oct 01, 2008 9:39 am
6 posts
• Page 1 of 1
Who is online
Users browsing this forum: No registered users and 1 guest
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group