Opened 12 years ago

Closed 12 years ago

Last modified 12 years ago

#201 closed defect (fixed)

Stall/Hang with Java6 b27 + Odin 0.8.8

Reported by: jep Owned by: dmik
Priority: major Milestone: GA5
Component: general Version: 1.6.0 Build 27 GA4
Severity: medium Keywords:
Cc:

Description

I've got two computers that have problems.
One AMD Quad Core (hasn't worked before either) and the Laptop Sony Vaio Intel Core i3. The latter used to work with Odin 0.8.7 + Java6 b25 and patches applied as it could run GenealogyJ 3. Now both computers show the same behavior, they stall and hang and the VIO output look faulty as parts of the text seem to be missing (Odin 0.8.7 + Java6 b25). The AMD based computer still reboot after a short while unless I use C-A-D and do a Hard kill.

JDownload 0.9xyz as well as JDownload 2.x show both the same behaviour as GenealogyJ.

Please do note that the Java installers for both GenealogyJ and JDownload 2.x work well, just as JDownload 0.9xyz itself work well (though slow) on an old single core machine here.

Side note:
Flash GA 0.4.0 is more unstable now, also cause reboots on the Laptop. Flash respond faster, but also cause sound to click like an old radio with push buttons, between each run and also if one tries to jump to another part of a flash clip.

Change History (10)

comment:1 by dmik, 12 years ago

Milestone: EnhancedGA5
Owner: set to dmik
Status: newaccepted

This sounds like a regression of console I/O changes in Odin (http://svn.netlabs.org/odin32/ticket/90#comment:5). I will check this first.

comment:2 by dmik, 12 years ago

It turned out that:

a) VioWrtCharStr() is bogus - it can't properly wrap lines if the string length is greater than the screen width. It will print garbage on the second and subsequent lines (this is what you see I'm sure). At least the bug is seen on non-standard VIO screen widths (like 180 chars here).

b) Odin code doesn't handle long strings either. It only handles the first line (to scroll the screen up if it's the last line on the screen) and for the rest of lines it relies on VioWrtCharStr (which is bogus). This is totally wrong anyway since VioWrtCharStr doesn't do scrolling.

I fixed Odin so that it now breaks all the string into lines and prints them separately (instead of doing this for the first line only). This is in r 22059.

Here a fixed Odin32 DLL, please try it and report back if it works for you now: ftp://ftp.netlabs.org/pub/odin/test/kernel32.zip

Note that I couldn't manage to get GenealogyJ hanging so this may be a separate bug (or may be just the same -- VioWrtCharStr behavior is unexpected when the string is greater than the screen width it seems).

comment:3 by jep, 12 years ago

Sorry, the new kernel didn't help me out.

dir kernel32.dll give:
13-01-10 22.01 1.734.682 124 a--- kernel32.dll

Last gui output:
Still non responsive gui in JDownloader2 that take ~99.9% (most of the time) of one core.
It's possible to open the About Odin dialog to see info about odin 0.8.8 and all contributors, but it doesn't repaint the gui window once opened. It's possible to resize the window, but the interior stay the same and doesn't reshape.
Found a file that seem to log the test output as well and can now see that JDownloader 2
think it show a message box with the question if I'd like to participate and help them out by providing automatic feedback. After that it listens for new links placed in the clipboard and the log ends.

Last vio output:
INFO: BuildRev: 1815
2013-jan-22 15:34:26 org.appwork.update.updateclient.Updater readVersion
INFO: BuildRev: 1815
Ignored: javax.swing.SortingFocusTraversalPolicy
UpdaterState_BranchUpdateState
UpdaterState_BranchUpdateState

::: UpdaterState_BranchUpdateState

UpdaterState_DownloadBranchlistState
UpdaterState_DownloadBranchlistState

::: UpdaterState_DownloadBranchlistState

UpdaterState_BranchUpdateState
UpdaterState_BranchUpdateState

::: UpdaterState_BranchUpdateState

UpdaterState_DownloadHashlistState
15:34:27 - 15:34:27 - Startade uppdatering: 22.01.13
15:34:27 - 15:34:27 - Installationss

comment:4 by jep, 12 years ago

GenealogyJ 3
Stall and hang on the splash screen.

Log file output:
INFO:genj.util.EnvironmentChecker.log:Classpath = C:\PROGRAMS\GenealogyJ\contrib\fop\commons-io-1.0.jar (does exist)
INFO:genj.util.EnvironmentChecker.log:Classpath = C:\PROGRAMS\GenealogyJ\contrib\fop\commons-logging-api-1.0.4.jar (does exist)
INFO:genj.util.EnvironmentChecker.log:Classpath = C:\PROGRAMS\GenealogyJ\contrib\fop\fop.jar (does exist)
INFO:genj.util.EnvironmentChecker.log:URLClassloader java.net.URLClassLoader@126f75b[file:/C:/PROGRAMS/GenealogyJ/lib/genj.jar, file:/C:/PROGRAMS/GenealogyJ/lib/genj_en.jar, file:/C:/PROGRAMS/GenealogyJ/lib/geo.jar, file:/C:/PROGRAMS/GenealogyJ/lib/graphj.jar, file:/C:/PROGRAMS/GenealogyJ/lib/jcommon-1.0.16.jar, file:/C:/PROGRAMS/GenealogyJ/lib/jfreechart-1.0.13.jar, file:/C:/PROGRAMS/GenealogyJ/lib/jump.jar, file:/C:/PROGRAMS/GenealogyJ/lib/spin-1.5.jar, file:/C:/PROGRAMS/GenealogyJ/lib/swingx-0.7.jar, file:/C:/PROGRAMS/GenealogyJ/contrib/fop/avalon-framework-4.2.0.jar, file:/C:/PROGRAMS/GenealogyJ/contrib/fop/batik-awt-util.jar, file:/C:/PROGRAMS/GenealogyJ/contrib/fop/batik-bridge.jar, file:/C:/PROGRAMS/GenealogyJ/contrib/fop/batik-css.jar, file:/C:/PROGRAMS/GenealogyJ/contrib/fop/batik-dom.jar, file:/C:/PROGRAMS/GenealogyJ/contrib/fop/batik-ext.jar, file:/C:/PROGRAMS/GenealogyJ/contrib/fop/batik-gvt.jar, file:/C:/PROGRAMS/GenealogyJ/contrib/fop/batik-svg-dom.jar, file:/C:/PROGRAMS/GenealogyJ/contrib/fop/batik-svggen.jar, file:/C:/PROGRAMS/GenealogyJ/contrib/fop/batik-util.jar, file:/C:/PROGRAMS/GenealogyJ/contrib/fop/batik-xml.jar, file:/C:/PROGRAMS/GenealogyJ/contrib/fop/commons-io-1.0.jar, file:/C:/PROGRAMS/GenealogyJ/contrib/fop/commons-logging-api-1.0.4.jar, file:/C:/PROGRAMS/GenealogyJ/contrib/fop/fop.jar]
INFO:genj.util.EnvironmentChecker.log:URLClassloader sun.misc.Launcher$AppClassLoader@f4a24a[file:/C:/PROGRAMS/GenealogyJ/genj.jar]
INFO:genj.util.EnvironmentChecker.log:URLClassloader sun.misc.Launcher$ExtClassLoader@cac268[file:/C:/PROGRAMS/Java6/lib/ext/dnsns.jar, file:/C:/PROGRAMS/Java6/lib/ext/localedata.jar, file:/C:/PROGRAMS/Java6/lib/ext/sunjce_provider.jar, file:/C:/PROGRAMS/Java6/lib/ext/sunmscapi.jar, file:/C:/PROGRAMS/Java6/lib/ext/sunpkcs11.jar]
INFO:genj.util.EnvironmentChecker.log:Memory Max=518 979 584/Total=32 440 320/Free=27 783 408

VIO output still stop with:
/lib/ext/sunpkcs11.jar]
INFO:genj.util.EnvironmentChecker.log:Memory Max=518

Take 2

Changed the parameters of my script to redirect STDERR to one file and STDOUT to another file and now it starts!!! Yehhaaa!!

Is it the right kernel32.dll i received?

comment:5 by jep, 12 years ago

I have only one kernel32.dll on this computer and it's placed in the odin\system32-folder.

Redirection of output doesn't seem to help JDownloader that probably suffer from some additional problem. One only get a time frame of a second to klick anything on the manu to try to e.g. reach the settings before it hang.

Test yourself the non win-*nix-mac-specific package they've hidden away on a multicore computer:
http://jdownloader.org/knowledge/wiki/development/translation/translate-jdownloader

Version 0, edited 12 years ago by jep (next)

comment:6 by dmik, 12 years ago

I've tried the new JDownloader from the above link and I can confirm that it hangs giving the 100% CPU load when it checks for updates, the last line I see is

UpdaterState_BranchUpdateState
19:33:16 - 19:33-15 -

Using Odin 0.8.7 solves this problem. So there is still some issue with the new console I/O scheme. Good that we have a reproducible test case. I will check it.

comment:7 by dmik, 12 years ago

This should be fixed now (r 22061 in Odin). A signed/unsigned comparison problem would cause an endless while loop (would when printing chars with codes > 127). It was a bit tricky to find.

Please test the new KERNEL32.DLL available here: ftp://ftp.netlabs.org/pub/odin/test/kernel32-2.zip

comment:8 by dmik, 12 years ago

Resolution: fixed
Status: acceptedclosed

No feedback for long. I suppose it works for you too.

comment:9 by jep, 12 years ago

Tested this (both right before updating kernel32.dll and right after) on my computers and it now behave very well without redirection of output!

GenealogyJ start fast and work as expected.
JDownloader 2 also started and it was possible to select menu items (not possible before) and all seemed fine.

Very good work! Great work, Thank you!


JD2 wanted to update though and now have other issues as the unpacking routine throw a Java Null Pointer exception somewhere near 83% of the installation procedure)

comment:10 by dmik, 12 years ago

Thanks for reporting.

Feel free to open a different ticket for the NPE but please collect as much info as possible.

Note: See TracTickets for help on using tickets.