Closed pemcg closed 7 years ago
Updated the instructions again, we should be able to get proper crash reports when you kill the process using SIGABRT. Let's give it a try.
@Naatan my one liner lasted less then a hour :-)
I still incorporated it into the new command :)
@Naatan You removed lldb instructions from post when you added kill line :)
@tuckdesign yes, that was intentional :) The kill line should give a crash reporter which will send us the backtrace info we need. Please let me know if you do not get a crash reporter dialog.
Just had hang and yes, got crash reporter.
@Naatan One more sent with crash reporter. Hope you are getting those.
We're getting them, thanks! :)
Hi guys, we're looking at possible culprits for the hangs and one possibility is our apsw dependency, which was introduced in Komodo 9.3.0. Unfortunately we still haven't had a consistent repro so we cannot properly test whether this is the cause. Could some of you try installing Komodo IDE 9.2.1 to see if this version has hangs for them also?
You can download Komodo 9.2.1 here: http://downloads.activestate.com/Komodo/releases/archive/9.x/9.2.1/
If that does not work, try updating the ActivePython version contained in Komodo 10:
Note this is extremely experimental. Also keep in mind that this is licensed code, so your Komodo license still applies.
I upgraded to 10.12.5 as recommended up thread. I still get hangs:
Date/Time: 2017-05-20 07:51:43 -0600
OS Version: Mac OS X 10.12.5 (Build 16F73)
Architecture: x86_64h
Report Version: 25
Data Source: Stackshots
Command: komodo
Path: /Applications/Komodo IDE 10.app/Contents/MacOS/komodo
Version: 10.2 (10.2.2)
Parent: launchd [1]
PID: 25353
@hughdbrown that's an old recommendation, please see my previous comment - https://github.com/Komodo/KomodoEdit/issues/2424#issuecomment-302768895
Anyone following the suggestions from https://github.com/Komodo/KomodoEdit/issues/2424#issuecomment-302768895 ? Any hangs so far?
Please report back, if a solution is working and you don't tell us about it we won't know it works ... ;)
For me it only crashed once with macOS 10.12.5. When I reported that 10.12.5 did not work and also crashes, that was the last crash for me. Since that date (2 weeks) Komodo is running without crash. Yesterday I updated to 10.12.6 Beta.
That's good to hear. I've definitely seen reports come in from 10.12.5 though, so it does not appear 10.12.5 resolves the issue.
Back from vacation. I installed 10.2.2 a few minutes ago, and sent my first hang report from it just now.
@NeilFraser do you mean you installed 10.2.2 from our website or from the link I shared on this ticket?
@Naatan Ok, I installed Komodo 9.2.1 and will let you know do I have hangs with it too.
@tuckdesign those are old instructions. Please see the dev note in the first post.
@Naatan Yes, just reported my second hang of the day with 10.2.2 from the link on this ticket. :(
Thanks @NeilFraser, I'll see about preparing another build with more extensive changes.
I've updated the link in the dev note with a new build
The build from the link stood up longer than other but in an hour failed as usual.
Same on my side. Yesterday was working fine, today just started it and it got hang.
Same experience as @vrurg and @tuckdesign, last night v10.2.2 build 89897 seemed to be more stable than usual. But this morning I got two back-to-back hangs.
Maybe Komodo just isn't a Friday kind of IDE.
Thanks guys, I'll be posting another build today.
Updated the build linked in the dev instructions, please give it a try.
Be mindful of features no longer working (such as codeintel) as this build contains potentially breaking changes.
This version lasted for 10min :( and got a hang. Still sending reports with crash reporter...
@tuckdesign actually that crash was of a different cause, please continue trying this build.
Hang again, with latest build. Sent report.
thanks @tuckdesign, for some reason I can't get proper symbols from your report. When the hang happens next time can you do the lldb steps again? I'll update the instructons accordingly.
Thanks @tuckdesign Looks like it's still the same hang.
We're testing something more destructive internally to hopefully narrow down the issue.
For the record, we're fairly certain the issue is related to Python's process spawning logic. It uses process forking to spawn a process which according to Apple support is the likely cause of a deadlock like the one we are seeing. The challenge now is finding a way around this.
When it starts it goes on and on: komodohang_05_30_2017_11_10am.txt
komodohang_05_30_2017_11_53am.txt @Naatan Not sure should i send it each time or you have enough info???
huge thanks @Naatan and the ActiveState team for working on this thorny issue. Komodo is a great tool and part of my daily workflow, and we really appreciate it.
that being said, I get a hang with this build too :-( and a weird output from lldb. My ps aux..
follows.
ps aux | grep komodo | grep -v codeintel | grep -v grep
dch 10194 0.0 0.0 2472628 11488 ?? S Wed02PM 0:00.40 /Users/dch/Applications/Komodo.app/Contents/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/dch/Library/Application Support/KomodoIDE/10.2/XRE/extensions/komodo_terminal@activestate.com/content/../pylib/butterfly/butterfly.server.py --unsecure
dch 38516 0.0 2.1 4412228 692796 ?? S 3:57PM 0:59.13 /private/var/folders/rv/8w04tcb13kqbxcyqprhrvvfm0000z_/T/AppTranslocation/00255370-BC32-48EC-817F-5B7565942289/d/Komodo.app/Contents/MacOS/komodo -psn_0_1622412
The first one is a process of the "Terminal" add-on. https://github.com/Defman21/komodo-terminal-butterfly
Thanks guys, I think we have enough logs for the moment. We're currently trying to reproduce the issue so we can test something out, unfortunately it's not that simple for us to reproduce.
If anyone feels so inclined, this is extremely experimental:
lldb -p $(ps aux | grep komodo | grep -v codeintel | grep -v grep | awk '{print $2}')
thread backtrace all
t <thread number>
thread return
Thanks everyone for your cooperation and patience.
Found the fork thread:
thread #41: tid = 0x1ba479, 0x00007fffcbae731e libsystem_kernel.dylib`__ulock_wait + 10
frame #0: 0x00007fffcbae731e libsystem_kernel.dylib`__ulock_wait + 10
frame #1: 0x00007fffcbbcaaff libsystem_platform.dylib`_os_ulock_wait + 25
frame #2: 0x00007fffcbbca3d2 libsystem_platform.dylib`_os_unfair_lock_lock_slow + 130
frame #3: 0x00007fffcb0dc4a3 libobjc.A.dylib`_objc_atfork_prepare + 281
frame #4: 0x00007fffca411a4a libSystem.B.dylib`libSystem_atfork_prepare + 26
frame #5: 0x00007fffcb9fe414 libsystem_c.dylib`fork + 12
frame #6: 0x0000000124c9b9b4 _posixsubprocess.so`subprocess_fork_exec + 1412
frame #7: 0x0000000114b0d42b Python`PyEval_EvalFrameEx + 18011
...
Then returned the thread:
(lldb) t 41
* thread #41: tid = 0x1ba479, 0x00007fffcbae731e libsystem_kernel.dylib`__ulock_wait + 10
frame #0: 0x00007fffcbae731e libsystem_kernel.dylib`__ulock_wait + 10
libsystem_kernel.dylib`__ulock_wait:
-> 0x7fffcbae731e <+10>: jae 0x7fffcbae7328 ; <+20>
0x7fffcbae7320 <+12>: movq %rax, %rdi
0x7fffcbae7323 <+15>: jmp 0x7fffcbadfcaf ; cerror_nocancel
0x7fffcbae7328 <+20>: retq
(lldb) thread return
* thread #41: tid = 0x1ba479, 0x00007fffcbbcaaff libsystem_platform.dylib`_os_ulock_wait + 25
frame #0: 0x00007fffcbbcaaff libsystem_platform.dylib`_os_ulock_wait + 25
libsystem_platform.dylib`_os_ulock_wait:
-> 0x7fffcbbcaaff <+25>: movl %eax, %ebx
0x7fffcbbcab01 <+27>: cmpl $-0x1, %ebx
0x7fffcbbcab04 <+30>: jne 0x7fffcbbcab15 ; <+47>
0x7fffcbbcab06 <+32>: callq 0x7fffcbbcc2f4 ; symbol stub for: __error
(lldb) quit
Quitting LLDB will detach from one or more processes. Do you really want to proceed: [Y/n] y
Komodo continues to beach ball. Full stack (from before the thread return) attached. Let me know if I'm doing this right.
Also, the instructions say "Copy the output into Komodo". I think you might be forgetting something... :)
Lol, good point :) Thanks for trying that @NeilFraser !
@Naatan Tried one experiment: Removed Python.framework from Komodo IDE and created symlink to system's Python.Framework (/System/Library/Frameworks/Python.framework), and it looked fine for some time, but got hang again :(
Updated command: lldb -p $(ps aux | grep komodo | grep -v codeintel | grep -v grep | awk '{print $2}') -b -o 'thread backtrace all' 2>&1 > $(date +'%Y%m%d-%H%M%S').txt
Feel free to update the name of the file to something else.
The more crazy command to capture the lldb output into a nicely named file.
lldb -p $(ps aux | grep komodo | grep -v codeintel | grep -v grep | awk '{print $2}') -b -o 'thread backtrace all' 2>&1 > $(/Applications/Komodo\ IDE\ 10.app/Contents/MacOS/komodo --version | awk {'print $1"-"$3"-"$5"-"'} | sed 's#)##')$(date +'%Y%m%d-%H%M%S').txt
Saving a file.
lol @mrochford, nice :) I'll keep that around for when we need more lldb outputs. I'm preparing a build with some additional logging so we can hopefully trace the code at fault.
@tuckdesign Only Python3 would be able to truly resolve this issue, and our code is not Python3 compatible. We're looking for a bandaid solution in the interim.
Tried the 'thread return' thing and the result is the same as with @NeilFraser – mening, there is no restult. Attached is the full trace after the attempt to unlock.
Short Summary
I'm running Komodo IDE 10.2.1 on MacOS 10.12.4. I haven't used Komodo for a while so I'm not sure if the issues are related to the 10.12.4 upgrade that I did this morning, but I've had 2 cases today of Komodo hanging (infinite beachball). I've also noticed generally that the UI is frustratingly slow scrolling up and down, it's not a smooth experience at all.
Both of the hangs have been with about 5-6 files open, relatively small files (<400 lines)
Note From Developer - Please Read
A nightly is now available with a fix for this hang, you can download it here:
http://downloads.activestate.com/Komodo/nightly/komodoide/latest-10.2.x/
If you are still experiencing this issue with the latest build please supply a backtrace of Komodo in this ticket (when it is hanging).
To get the backtrace take the following steps:
issue #2424
Steps to Reproduce
Random
Expected results
Actual results
Platform Information
Komodo IDE for Mac Komodo 10.2.1 *Operating System (and version) MacOS 10.12.4
Additional Information
Attached is the text of the "Report the problem to Apple" output when I did a force quit. komodo_hang.txt