JDK-4614552 : (process) Command prompt does not kill java process (w2k, wnt)
  • Type: Bug
  • Component: core-libs
  • Sub-Component: java.lang
  • Affected Version: 1.4.0
  • Priority: P4
  • Status: Open
  • Resolution: Unresolved
  • OS: windows_2000
  • CPU: x86
  • Submitted: 2001-12-17
  • Updated: 2008-03-18
Related Reports
Relates :  
Description
On a Win 2000, unning GlobalSuite manual test suite, doing <Ctl> C to exit wouldn't stop the process; sometimes even after suite is finished, it started itself again for another run. The manual GlobalSuite test sutie is in appletviewer application.

Noticed in Merlin build 89, regressed back, this is reproducible for
build 89, 88, 87, 86, 85. It couldn't be reproduced in build 84.

Not reproducible on Solaris, haven't tried on other Window platforms.

This problem seems related to bug 4504639, 4508472? except this is on Win 2000.

To reproduce:
--------------

1. Install j2sdk-1_4_0-rc-bin-b8x-win-xxx.exe on a Win 2000
2. Install GlobalSuite, a bundle gs13-b06.tar.gz can be found in
/net/sqesvr/export/i18n/i18n_merlin_ws/GlobalSuite
	- copy to your directory and
	- gunzip -d gs13-b06.tar.gz
	- tar -xvfp gs13-b06.tar
3. cd GlobalSuite
4. sh run_gs.sh -jdk:[your jdk path] quick-manual
5. after a status window pop up (or even before that), in Command Prompt window,    do <Ctl> C to cancel (exit) the test
6. notice the test wouldn't stop, and continued as if <Ctl> C has not been executed, even though in command Prompt window shows a new prompt

Note: the bug is reproducible when executing a list of test cases, and is not reproducible if executes one test at a time.

###@###.### 2001-12-17

===============================================================================
This problem is also reproducible on Win98 SE with MerlinB89.

###@###.### 2001-12-17

Comments
WORK AROUND kill the process java.exe from task manager. Killing the command prompt won't work.
11-06-2004

EVALUATION This seems mis-filed against Java2D; I think it's a runtime/VM issue instead. What seems to be happening is that the main process spins off sub-processes (via the Runtime.exec() call) and that these sub-processes are not terminated when the main app is killed. I've attempted to narrow down the test case into something a little smaller; see the attached "Fractal.zip" file. To run it, go into the directory and type "java ExecTest". This class starts up the fractal demo (via appletviewer) and then spins in a loop. I was able to kill the Fractal demo by ctrl-C'ing in the console window in build 85, but not in build86 or later. It's not clear to me what the behavior should be (is it a bug to not kill exec'd processes?) or what the priority of the bug should be. But it definitely doesn't seem related to Java2D. I'm forwarding the bug to the runtime team for further evaluation. ###@###.### 2001-12-17 I did see the same results as Chet, assigning to Karen ###@###.### 2001-12-18 Duplicated on NT with: 1) b89 sdk with b89 vm 2) b89 sdk with b83 vm Test passed with: 1) b83 sdk with b83 vm 2) b83 sdk with b89 vm My interpretation of this is that the problem is in the sdk, not in the vm. I don't know if the issue is in the appletviewer or in the runtime.exec. With a list of changes in the SDK to b85 and b86 this would be more obvious. ###@###.### 2001-12-18 Chet Haase suggests we track down the changes to src/win32/native/java/lang/Win32Process_md.c in builds 85/86 for 4244515. ###@###.### 2001-12-19
18-12-2001