Zeus Hangs for 15 seconds when its window is selected
Zeus Hangs for 15 seconds when its window is selected
Just updated to 3.98f under windows 7 and my workspace is on a linux system. If I have the built-in ctags builder enabled and have a file from the network share opened in the editor it can take 15 seconds to switch focus back to that window during which time it's displaying a "not responding" message in the title bar. If I disable the built in tags builder, then when I switch focus away from Zeus and back to it, the hang is only about 6 seconds. Finally with the tags builder disabled and no open file, the hang is about 4 seconds. I had previously used an ~ year old version that didn't have these issues at least not as noticeably ( file version reported as 3.98.16.0 ). I do have to disable all automatic tags generation (even on the older version) as the editor will hang for 30 to 45 seconds if I save a single file with automatic tag generation turned on.
Re: Zeus Hangs for 15 seconds when its window is selected
When Zeus gets activate it does a check of all the files currently open to see if anything has changed and for that check it needs to get details from the file system for each file.
So it sounds like Zeus is having a bit of trouble accessing those file details for any file found on the shared network
I will take a look at the code and see if I can isolate a possible culprit.
For the file share are you using Samba
Cheers Jussi
So it sounds like Zeus is having a bit of trouble accessing those file details for any file found on the shared network

I will take a look at the code and see if I can isolate a possible culprit.
For the file share are you using Samba

Cheers Jussi
Re: Zeus Hangs for 15 seconds when its window is selected
Alas it's a large corporate network and I have no visibility into the hardware on the other end ... Thanks for looking into this though.
Re: Zeus Hangs for 15 seconds when its window is selected
Could you try the following test.
1. Download the test executable found here: http://www.zeusedit.com/z300/file_test.zip
2. Extract the file_test.exe file contained to the c:\temp folder
3. Start Zeus
4. Open a network file in Zeus and make it the active file
5. Use the Tools, DOS Command Line menu and run this command:
That command should produce output similar to this:
1. Download the test executable found here: http://www.zeusedit.com/z300/file_test.zip
2. Extract the file_test.exe file contained to the c:\temp folder
3. Start Zeus
4. Open a network file in Zeus and make it the active file
5. Use the Tools, DOS Command Line menu and run this command:
Code: Select all
c:\temp\file_test.exe "$fn"
Code: Select all
Start: checkForChange
Start: lockCheck
Duration: 0 sec
End: lockCheck
Start: lockedEx
Duration: 0 sec
End: lockedEx
End: checkForChange
Start: checkForFileChange
End: checkForFileChange
Testing File: D:\Projects\Zeus IDE\Apollo\zfwmdi01.cpp
Total Duration: 0 sec
Re: Zeus Hangs for 15 seconds when its window is selected
The times produced by the test appear quite reasonable. I tried an
experiment where I had the same file open in notepad++ and then switched
window focus between it and firefox. The switch was virtually
instantaneous in either direction, so I tried with Zeus and firefox. The
same pattern as before repeated itself, instantaneous switch to firefox,
a 6 second hang when switching to Zeus.
Here are the results of the test you asked for, and thanks for looking into this:
experiment where I had the same file open in notepad++ and then switched
window focus between it and firefox. The switch was virtually
instantaneous in either direction, so I tried with Zeus and firefox. The
same pattern as before repeated itself, instantaneous switch to firefox,
a 6 second hang when switching to Zeus.
Here are the results of the test you asked for, and thanks for looking into this:
Code: Select all
---------------------------------------------------------------------------
Zeus - Version 3.98f
Copyright (c) Xidicone P/L 1993-2016. All rights reserved.
---------------------------------------------------------------------------
Start: checkForChange
Start: lockCheck
Duration: 0.015 sec
End: lockCheck
Start: lockedEx
Duration: 0 sec
End: lockedEx
End: checkForChange
Start: checkForFileChange
End: checkForFileChange
Testing File:
M:\raid-r07-branch\sandboxes\src\slammer\raid\Sidrat\SysUtils\HdwrMode.cpp
Total Duration: 0.015 sec
Re: Zeus Hangs for 15 seconds when its window is selected
The results show the problem is not related Zeus trying to access the file.
So that must mean it is definitely all Zeus workspace related.
Could you repeat your Zeus/Firefox test as follows:
1. Do the test with the Zeus workspace open and one file open from that workspace.
2. Do the test with the same file open but with the Zeus workspace closed.
I would expect the second test to work without problems.
Cheers Jussi
So that must mean it is definitely all Zeus workspace related.
Could you repeat your Zeus/Firefox test as follows:
1. Do the test with the Zeus workspace open and one file open from that workspace.
2. Do the test with the same file open but with the Zeus workspace closed.
I would expect the second test to work without problems.
Cheers Jussi
Re: Zeus Hangs for 15 seconds when its window is selected
And right you are, without an opened workspace, switching between windows is immediate. Should I nuke this workspace and start over ?
thx,
John.
thx,
John.
Re: Zeus Hangs for 15 seconds when its window is selected
Code: Select all
Should I nuke this workspace and start over?
There is definitely a bug somewhere in the ctags database code attached to the workspace, which can result in a slow down.
The hard part is identifying the cause. I've seen it maybe twice and it has been reported a handful of times

But the fix should be as simple as using the Tags, Rebuild menu to recreate the ctags database.
Cheers Jussi
Re: Zeus Hangs for 15 seconds when its window is selected
I had previously disabled tagging as it was making things worse, but I went back and enabled it and rebuilt the tags db. As far as I can tell that had no effect on the time lag between switching windows. Turning the tag db off does improve things marginally ( maybe a second or two faster, but the switch still takes ~7 seconds ). One interesting thing, with the tags db turned off, when I start up Zeus I see the message about loading the workspace and the ctags database for about 15 seconds, then in the next few seconds it loads up the files and becomes ready ( about ~22 total ).
Re: Zeus Hangs for 15 seconds when its window is selected
I reverted back to my previous version (3.97w) and there are no hangs on switching windows. When I recently upgraded I followed the instructions and applied the zConfig files from 3.97w over the top of 3.98f. Could it be that given the disparity in versions that just doesn't work properly ?
Re: Zeus Hangs for 15 seconds when its window is selected
That could be an issueCould it be that given the disparity in versions that just doesn't work properly ?

To test this I would do the following:
1. If you have not done so already make a full backup of this folder:
Code: Select all
C:\Users\<Your User Id>\AppData\Roaming\Xidicone\Zeus
But after making that backup and before deleting that folder and re-running that installer could you also do the following.
1. Open your workspace and right click on the top workspace node an in the popup menu you will see an option to Copy Name(s) to Clipboard.
Copy and paste that name back into a new document.
That will give you a full file name with a .zwi extension.
2. Repeat that same process for all the projects in the workspace.
That will give you a full file name with a .zpi extension.
3. Go to this folder:
Code: Select all
C:\Users\<Your User Id>\AppData\Roaming\Xidicone\Zeus\zTags
Those are the ctags database files for each of the project in the workspace.
If you bundle all those files into a zip and send them to me I will see if I can replicate the slowdown at this end.
At my end initially the workspace will not open correctly as I will not have any of the source files for that workspace.
But that is ok as I can easily fake this by just creating a set of dummy source files.
I know you wouldn't, but don't send me any of those source files

And before sending through that zip file also do this test:
With Zeus not running delete this folder:
Code: Select all
C:\Users\<Your User Id>\AppData\Roaming\Xidicone\Zeus\zTags
That is what the tags rebuild should have done, but just in case it didn't those files would now be fully re-created.
One final thing you could try is all the other versions since 397w which can be found here:
http://www.zeusedit.com/z300/ze32r397z.zip
http://www.zeusedit.com/z300/ze32r398b.zip
http://www.zeusedit.com/z300/ze32r398c.zip
http://www.zeusedit.com/z300/ze32r398d.zip
http://www.zeusedit.com/z300/ze32r398e.zip
I would install each in it's own folder (i.e zeus3.97z, zeus3.98a, ....., zeus3.98e).
All those version are tagged in the source control so knowing which version caused your issue would narrow down the change set.
Cheers Jussi
Re: Zeus Hangs for 15 seconds when its window is selected
I finally had time to try a newer version (I had switched back to 3.97w to get some work done and have now loaded 3.98f) and had the same problem. I followed the instructions and wiped out the Xidicone\Zeus directory along with the installed version and reinstalled. I created a new workspace from scratch and now have a focus switch time of just a bit over 3 seconds. I also tried my older workspace files and that was about 5 seconds ( but the .zdb file was stored on the share in that configuration and that may have had something to do with the extra 2 seconds ). I did these tests with automatic tagging disabled, I turned it back on and it may have made a slight difference ( 1/2 a second ), but that could also be network loading.
Re: Zeus Hangs for 15 seconds when its window is selected
Zeus is now at version 3.98lhave now loaded 3.98f

This is very strange since I would have not expected any code changes in this area between those two version of ZeusI created a new workspace from scratch and now have a focus switch time of just a bit over 3 seconds.

The only thing that has changed is the C++ compiler used to build the Zeus executable, which in turn would have changed the C runtime.
What I will do is create a new Zeus beta version that adds in some tracing so we can see where Zeus is spending it's time.
Watch this space as that beta should be ready shortly.
Cheers Jussi
Re: Zeus Hangs for 15 seconds when its window is selected
To try and identify the cause of this time delay could you do the following:
1. Download the Zeus beta version found here: http://www.zeusedit.com/z300/z-beta.zip
2. Start Zeus and paste this text into a Zeus File, New window:
3. Select that line of text and use the View, Open File menu to open that log file.
3. Truncate the log file.
4. Use the Tools, DOS Command Line menu and run this command:
5. Replicate the slow down.
6. Inspect the log file to see which Workspace action is causing the delay.
Cheers Jussi
1. Download the Zeus beta version found here: http://www.zeusedit.com/z300/z-beta.zip
2. Start Zeus and paste this text into a Zeus File, New window:
Code: Select all
"$zud\ZeusErr.log"
3. Truncate the log file.
4. Use the Tools, DOS Command Line menu and run this command:
Code: Select all
zeus.exe -s -t
6. Inspect the log file to see which Workspace action is causing the delay.
Cheers Jussi
Re: Zeus Hangs for 15 seconds when its window is selected
Well that was short lived, from yesterday to today the window focus switch time has jumped from 3.5 seconds to 35 seconds on the same Workspace. To my knowledge the network is unchanged, and after making a few edits last night I left Zeus running overnight.
I've attached the log file, the first section is the Zeus startup and shows the long Workspace load time at 14:43:22. The second section is from my switching focus away from Zeus and then back again. The delay for Workspace load is similar at 14:44:35 in the log.
thx,
John.
I've attached the log file, the first section is the Zeus startup and shows the long Workspace load time at 14:43:22. The second section is from my switching focus away from Zeus and then back again. The delay for Workspace load is similar at 14:44:35 in the log.
thx,
John.
- Attachments
-
- ZeusErr.zip
- Error log output
- (1.49 KiB) Downloaded 6168 times