Opened 3 years ago

Closed 2 years ago

#128 closed defect (fixed)

Hang at exitlist

Reported by: an64 Owned by:
Priority: Feedback Pending Milestone: GA2
Component: general Version: 1.6.0-b22 GA
Severity: medium Keywords:
Cc:

Description

Any java program hangs at exit, process commander shows
"java.exe exiting thread"

It started with beta 2 and any newer version include ga

kernel 14.103a uni

I tried to remove any other java binaies and reinstall odin

My cmd file
set PATH=K:\1u\j\bin;
rem %PATH%
set BEGINLIBPATH=K:\1u\j\bin;
rem %BEGINLIBPATH%
set CLASSPATH=
SET JAVA_HOME=K:\1u\j
SET SWING_HOME=
java.exe %1 %2 %3 %4 %5 %6 %7 %8 %9

Change History (16)

comment:1 follow-up: Changed 3 years ago by dmik

I suppose you have an environment which is not supported.

Does it also hang when you simply do java -version?

Which version of Odin? Java strictly requires a version of Odin as stated on the Wiki page. Are you sure a different version of it is not on LIBPATH? May be you have some other application running that drags some other Odin version into memory?

Try this .cmd:

set PATH=<path_to_Java_GA>\bin;<path_to_Odin>\SYSTEM32;%PATH%
set BEGINLIBPATH=<path_to_Java_GA>;<path_to_Odin>\SYSTEM32;%PATH%
set JAVA_HOME=<path_to_Java_GA>
set LIBPATHSTRICT=T
<your_java_command>

Which version of OS/2 is it? Note that we only test our builds on eCS 2.x. If the above doesn't help, please try to install eCS 2.0 GA (or any recent RC) on a new partition and only try Java + Odin w/o installing any additional software.

comment:2 Changed 3 years ago by dmik

  • Priority changed from major to Feedback Pending

comment:3 Changed 3 years ago by rbri

Similar effect here; when starting SmartSVN with javaw it terminates; when using java it hangs.
eCS 2.0 and latest odin

comment:4 Changed 3 years ago by rbri

Strange, sometimes it works, sometimes not. Will do some more testing in the next days.

comment:5 Changed 3 years ago by dmik

Rbri, using the above .cmd?

I'm almost sure it will work on a fresh eCS 2.0 install. Checking this and, if works, detecting which software makes it hang by installing it one by one, would really help. Since it works fine on all our test machines, we can't do anything about that w/o this sort of help.

You may also try to take a process dump of the hung process by doing the following on the command line:

  1. Enable process dumping.
    pdumpusr SUMM,MVDM,SEM,SYSFS,SYSVM
    procdump on /L:<full_path_where_to_store_dumps>
    
  2. Start your Java application using java.exe, make it hang. Note: make sure that there is exactly *one* java process running (hanging).
  3. Issue the following command:
    procdump force /PROC:java.exe
    

This will generate one or more PDUMP.nnn files which you should zip up, upload to ftp://ftp.dmik.org/incoming and put a note here. Please also supply the POPUPLOG.OS2 file (if any) and any of the hs*.log files you may find in the directory where you started the Java application from.

After you have collected PDUMP.nnn files, you may want to turn off further dumping with:

procdump off

comment:6 Changed 3 years ago by rbri

Hi dmik,

after 2h of rebooting i made no progress. The only thing i changed in my config.sys was removing jdk 1.4.2 from path.
I tried many different programs, starting before java or after but was not able to find a way that definitive forces the hang at the end. And today i had much less hangs at all. But something new arises. Sometimes i got a class not found ex (always a different class). I never changed the cmd file used for starting the application. No idea what is going on.

The only thing i can do is to keep an eye on it, maybe some day i can create a real (reproducible) report.

Again thanks for the great work.

RBRi

comment:7 Changed 3 years ago by dmik

You still didn't tell me if you tried it with my .cmd from comment:1 and if you tried it on a clean eCS 2.0 install. And if you tried to get a process dump. So the bug remains in Feedback Pending state until all these actions are performed as we can't go further w/o this information.

Regarding "class not found" exceptions, it's a known issue (#130).

comment:8 Changed 3 years ago by rbri

Yes of course i tried your suggested setup. From a first test it looks like it helps. But there was now way to reproduce the behavior. Later it works without this setting. For the last two hours i had no hangs.
My eCS is (nearly) a plain 2.0 GA. Only addition is the latest ACPI driver (BTW i also did some test without ACPI and never had this hangs).
If i see a chance to reproduce the hang i will also try to capture a process dump. Maybe you can leave this pending for a while as collector.
(maybe more tomorrow)

comment:9 in reply to: ↑ 1 Changed 3 years ago by an64

Replying to dmik:

Does it also hang when you simply do java -version?

No, and does not hang on errors like "jar file not found" ,etc

Which version of Odin? Java strictly requires a version of Odin as stated on the Wiki >page. Are you sure a different version of it is not on LIBPATH?

No, and now reinstalled odin into clean directory without any other dlls(video codecs,etc)

May be you have some other application running that drags some other Odin version into >memory?

No, tried on clean boot

Try this .cmd:

set PATH=<path_to_Java_GA>\bin;<path_to_Odin>\SYSTEM32;%PATH%
set BEGINLIBPATH=<path_to_Java_GA>;<path_to_Odin>\SYSTEM32;%PATH%
set JAVA_HOME=<path_to_Java_GA>
set LIBPATHSTRICT=T
<your_java_command>

Same hang as before

Which version of OS/2 is it?

Aurora fp5

Note that we only test our builds on eCS 2.x. If the above doesn't help, please try to >install eCS 2.0 GA (or any recent RC) on a new partition and only try Java + Odin w/o >installing any additional software.

Hm, will try later, if procdump does not help you to find a problem.
Sent an64.zip , no popuplog generated, no hs*.log files , only
D:\temp\hsperfdata_an64\63 file with all 0's inside and 65536 bytes length

comment:10 Changed 3 years ago by dmik

Rbri, thanks for testing. Looks like a floating problem in your case. Please try the new the ftp://ftp.dmik.org/tmp/j/o129.wpi Odin build to see if it changes anything.

an64, thx for the dump. In short, it looks like thread 1 is hung while running the unwind procedure and thread 3 is waiting for the semaphore that should be posted when the number of threads drops to 1 but that never happens. Perhaps, you suffer from this issue in an unusual way. So please try the Odin test build mentioned above too.

comment:11 Changed 3 years ago by an64

Nothing changes

comment:12 Changed 3 years ago by dmik

Okay, please try now one more fix: ftp://ftp.dmik.org/tmp/j/kernel32_1.zip (a drop-in replacement for one DLL in ftp://ftp.dmik.org/tmp/j/o129.wpi) to see if it changes anything.

If not, I have no other ideas on what could cause the screwup of the unwind procedure in thread 1 ATM (as neither Java nor Odin exception handlers participate in unwinding any more). May be some other DLL is causing this. Please try installing eCS 2.0, as I guess it will fix the issue for you.

Note that Rbri's issue seems to be different from yours, he uses eCS 2.0 and according to his words gets Java apps running fine sometimes. I expect o129.wpi + kernel32_1.zip will fix the problems for him.

Last edited 3 years ago by dmik (previous) (diff)

comment:13 Changed 3 years ago by an64

No, same hang :(

Will try to clear config.sys and find the source of the problem...

comment:14 Changed 3 years ago by wlhartzell

Mars 24j version 5.51, an old program found at <http://kimludvigsen.dk/os2/gfd/app.java/mars24j.zip> has this problem. There are several programs that one must use file->exit or equivalent. Another is Jbuddymessenger 3.2.100815 found at <http://www.zion.com/products/messenger/downloads/dist/unix/JBuddyMessenger.tgz>, and JIP 0.95 found at <http://www.bashiro.com/soft/thml/JIP_GEN_ALL_0.95.zip>, and RSSview 2.0 beta found at <http://rssview.sourceforge.net/>, and XNap2.5r3 found at <http://xnap.sourceforge.net/>. All are not new and I don't believe this is a Java bug, but an Odin bug.

comment:15 Changed 2 years ago by diver

how does all the above work with latest java and latest odin?

comment:16 Changed 2 years ago by dmik

  • Resolution set to fixed
  • Status changed from new to closed

I tried Jbuddymessenger and JIP and see no any problems with termination at all. File->Exit works, closing the window works, terminating the process from outside also works. Since there's also no feedback from the reporter for long I'm closing this defect.

Note #159 though that describes another hang-related problem (but it has nothing to do with the original topic).

Note: See TracTickets for help on using tickets.