Killing child kills Java parent

I have a Java process that is a child of the Solaris SMF and the Java starts it's own child process. When I kill Java's child then the Java process dies also. No standard output or error output. It just disappears and stops executing.
1: root@TestHost4:/ >ptree 9797
2: 7     /lib/svc/bin/svc.startd
3:   9797  java -jar <PathToJarFile> run
4:     10005 /opt/bin/perl -w <PathToPerlScript>
5: root@TestHost4:/ >kill 10005
6: root@TestHost4:/ >ptree 9797
7: root@TestHost4:/ >The perl script (line 4) is a child of the java app (line 3). When I kill the script (line 5) I end up also killing the java app (line 6)
How can I kill the child but not the parent?
I wrote the Java app myself and there is nothing in the logic that would cause all the threads to end or that would cause a call to System.exit except immediately after a logged message of the intention

If it it being killed then it wouldn't call System.exit() of course.There are 3 processes, SMF, Java and child. When the child is killed, the Java process dies
The child process is being created via Runtime.exec/ProcessBuilder right?Right
I think I have the answer in another thread
[http://forums.sun.com/thread.jspa?messageID=10567703&#10567703]

Similar Messages

  • Killing child process, not just the shell

    Killing child process, not just the shell
    #241 - 07/11/03 11:30 AM
    Edit post Edit Reply to this post Reply Reply to this post Quote
    Hi,
    I am working on a system for automatically testing student submissions on an introductory course about unix scripting. The program works by running a test script on a student submission, using Runtime.getRuntime().exec(). The Process object has a limited life span of 10 seconds (by default), and if it is still running after these 10 seconds, Process.destroy() is used to kill it.
    A bug exists when one of the submissions being tested times out. When the destroy() method is used it leaves a child process running... since students can also run
    some tests from the file submission client, the number of hanging processes soon adds up as they test and test again to get it right before submission. Eventually this results in too many processes and the server keels over.
    Does anyone have any ideas on killing these hanging processes?

    Not much help, but I think this is a known bug ...
    http://developer.java.sun.com/developer/bugParade/bugs/4770092.html

  • [Solved] Bash: killing child processes

    I decided to make a session manager that will kill all child processes before exiting, the only problem is that it doesn't kill them all.
    I tried using the same function, and using it in conjunction with
    yes >/dev/null & bash
    yes >/dev/null & bash
    yes >/dev/null & bash
    yes >/dev/null & bash
    running in a terminal, and it sent all of them the TERM signal.
    I'm out of ideas.
    Code is here.
    The relevant section is:
    # Kill child process of given parent
    # This uses PIDs not names
    # Also prints out a list of child pids that should be killed
    # FIXME: Clean this up a bit
    kill_child_processes()
    PARENT_ID=$1
    # Find child processes and put them in the form PID%seperator%COMMAND
    local CHILD_PROCESSES=$(ps o ppid,pid,command | \
    awk "{if (\$1 == $PARENT_ID) {print \$2,\"_\",\$3;}}" | \
    sed 's| _ |%seperator%|')
    # Do this for each child
    for child in $CHILD_PROCESSES; do
    # Extract the PID and COMMAND into separate variable from $child
    local child_pid=$(echo $child | sed 's|%seperator%.*||')
    local child_command=$(echo $child | sed 's|.*%seperator%||')
    # If the child command has child processes, recurse through it
    if [ "$(ps o ppid,pid,command | awk "{if (\$1 == $child_pid) {print \$2;}}")" != "" ]; then
    kill_child_processes $child_pid
    fi
    # If the command isn't part of a blacklist, send it the TERM signal
    if [ x$(for dont_kill_command in $DONT_TERM; do \
    [ x$dont_kill_command == x$child_command ] && echo "MATCH"; \
    done) == x"" ]; then
    kill $child_pid &
    # echo the PID so we can use it later
    echo $child_pid
    fi
    done
    Thanks.
    Last edited by some-guy94 (2010-01-13 22:48:39)

    gradgrind wrote:You might like to try pkill / pgrep with the -g option?
    Unfortunately that isn't what I'm looking for, I want this to work with multiple sessions(not that difficult), and also work with other apps on other tty's.
    Currently what it does is it runs ps o ppid,pid,command x which gives a nice table
    1234 5678 command1
    1234 5679 command2
    and if the ppid matches the session's pid, it's pid is saved, and (this part is looped) if it has child processes, then the function is run on the pid, afterward the pid is killed.
    It works when I separate the function from the rest of the script, but when it is in a session it fails to work properly.
    Last edited by some-guy94 (2010-01-05 23:11:57)

  • Problem in Passing the value from child window to Parent window.

    Hi Frenz,
    I have a requirement like this. i have to pass a value from child window to parent window to one test field. That text field is not a normal text field.
    It was created like the following as SQL query.
    select
    ''LNo,
    apex_item.text(25,'',0,15,
    'style="width:100px;" onblur="javascript:showUpsell(this.value);" onkeypress="javascript:validateKeyPress(event,this.value,this.id);" onkeyup="javascript:this.value=this.value.toUpperCase();" id="P37_ITEMNO"') ItemNo
    Now i want to pass a value to the Item no from child window.
    i wrote the java script like this,
    opener.document.forms[0].f25.value="100";
    It was not working..Any suggestions for that..
    Thanks in advance

    Dear Baaju,
    How do you redirect your control from Child to Parent window.
    If you use a button to do this, then you can set this value in the branching of page.
    Rana

  • Auto creation of child requests when parent request has more than one group

    Hi,
    I have created a request dataset which has a child form for AD Group. While raising a request, if I add more than one group, how to process the approval flow. Because I will be having different different approvers for different different groups. Is there any way to create child requests automatically when we submit a request with more than one group? I am using OIM 11.1.1.5.0.
    I know in OIM 11g, whenever user raises request for more than one beneficiary/target-resource then OIM breaks that request into Child Requests. But this is not happening when I add more than one group in the same resource. Do I need to write my own code for DataValidator to split parent request into child requests upon validating child form? If so, is it going to impact the existing feature which is creating child request when parent has more than one user/resource.
    Please let me know.

    No not possible OOTB in current version. Check {thread:id=2318652} for more information.
    -Bikash

  • How to access objects in the Child Form from Parent form.

    I have a requirement in which I have to first open a Child Form from a Parent Form. Then I want to access objects in the Child Form from Parent form. For example, I want to insert a record into a block present in Child Form by executing statements from a trigger present in Parent Form.
    I cannot use object groups since I cannot write code into Child Form to first create object groups into Child Form.
    I have tried to achieved it using the following (working of my testcase) :
    1) Created two new Forms TESTFORM1.fmb (parent) and TESTFORM2.fmb (child).
    2) Created a block named BLK1 manually in TESTFORM1.
    3) Created two items in BLK1:
    1.PJC1 which is a text item.
    2.OPEN which is a push button.
    4) Created a new block using data block wizard for a table EMPLOYEE_S1. Created items corresponding to all columns present in EMPLOYEE_S1 table.
    5) In WHEN-NEW-FORM-INSTANCE trigger of TESTFORM1 set the first navigation block to BLK1. In BLK1 first navigable item is PJC1.
    6) In WHEN-NEW-ITEM-INSTANCE of PJC1, code has been written to automatically execute the WHEN-BUTTON-PRESSED trigger for the "Open" button.
    7) In WHEN-BUTTON-PRESSED trigger of OPEN item, TESTFORM2 is opened using the following statement :
    open_form(‘TESTFORM2',no_activate,no_session,SHARE_LIBRARY_DATA);
    Since its NO_ACTIVATE, the code flows without giving handle to TESTFORM2.
    8) After invoking OPEN_FORM, a GO_FORM(‘TESTFORM2’) is now called to set the focus to TESTFORM2
    PROBLEM AT HAND
    ===============
    After Step 8, I notice that it passes the focus to TESTFORM2, and statements after go_form (in Parent Form trigger) doesnot executes.
    I need go_form with no_activate, similar to open_form.
    Edited by: harishgupt on Oct 12, 2008 11:32 PM

    isn't it easier to find a solution without a second form? If you have a second window, then you can navigate and code whatever you want.
    If you must use a second form, then you can handle this with WHEN-WINDOW-ACTIVATED and meta-data, which you have to store in global variables... ( I can give you hints if the one-form-solution is no option for you )

  • Fastest way to create child class from parent?

    As the subject states, what do you folks find is fastest when creating child classes directly from the parent? (esp. when the parent is in a lvlib) I thought I'd post up and ask because the fastest way I've found to get working takes a few steps.
    Any suggestions ae appreciatized!
    -pat

    Thanks for the quick response Ben!
    Yea, I apologize, in your response I realize my OP was more than vague haha (it hapens when you get used to your own way of doing things I guess huh)- I'm trying to create a child from a parent so that it has all of the methods that the parent has.
    In order to do so I currently have to open and close LV a few times during my current process so that vi's in memory dont get mixed up- Currently I save a copy of the parent class in a sub dir of where it is saved, close out of LV, open the new 'copy of parent.lvclass', save as>>rename 'child class.lvclass', close LV, and open up the project to 'add file', then right click>>properties>>inheritance.
    Is this the only way to do this?
    Thanks again!
    -pat
    p.s. I'm tempted to steal your cell phone sig, hope you dont mind haha good stuff!

  • Child .swf controlling parent timeline

    Hello Captivate Heroes,
    I've searched around, and can't seem to find any solid info on an issue my team is having. I'm a bit of a noob when it comes to Javascript, so I apologize if this question is too basic for this forum.
    Is it possible for an embedded .swf (created in Captivate) to control the main timeline in a parent .swf? Consider the example below:
    1) This window is an embedded .swf (another captivate file, which I’ll refer to as the “child”) that has an interactive walkthrough. It loads and begins playing immediately. I want users to complete this module and all interactions in it before continuing to the next slide in the “parent” file. Essentially, I want either the child or the parent timeline to play, but never both at the same time.
    2) This is our normal continue button, and I don’t want it appearing until 1 has been completed.
    My solution was to add a javascript call on the first slide of the child file that tells the parent file to pause its timeline (something like _root.rdcmdPause=1;). Then, do the opposite on the last child slide ( _root.rdcmdResume=1;). In this way, the parent slide would essentially pause on its first frame (which doesn’t have an active continue button) while the child animation continues to play. However, this isn’t working. It’s been a really long time since I’ve scripted, so I’m very rusty. Is that the proper way to manipulate parent variables in a child file? Do you have any other ideas on how to accomplish this task?
    I have a backup solution -- providing a "password" at the end of the child animation, which users can use to unlock the continue button. I'd rather use a more graceful solution
    Thank you in advance,
    Jamie

    Hi Jamie,
    I don't think JavaScript is going to help you here.  You need to be doing this in ActionScript 3. 
    For the non-scripting part, you can control the Captivate movie using system variables.  To pause the main slide, you could assign rdcmdPause=1 on the Slide Entry action.  You may want to adjust the slide transition to none so that it won't look faded out when it pauses the movie.  You can also show/hide items on the slide using the timeline, but it sounds like you won't really know when the Learner will be done with the interactive child .swf. 
    From what you described, it sounds like the Child .swf (#1) needs to communicate with other objects on the slide... mainly the continue button (#2).  In order to do that you'll most likely need to make the child .swf #1 into a widget so that it can communicate with the main movie and other objects on the slide.  I would suggest 3 possibilities:
    1.  Learn to use a widget framework such as Widget Factory or CpGears to make this possible
    2.  Take a look at the Infosemantics Event Handler Widget.  Not sure if it will meet all your needs, but it's worth a look.
    3.  Hire a Captivate Widget Developer to make this possible... and yes I am a Widget Developer (shameless plug )
    Hope that helps,
    Jim Leichliter

  • How To Display  attributes of Child Node and Parent Node in same view

    Suppose I have two view Carview and CarDetail View...IN Component context I have Parent Node Called Cars and It have its attribute as Price,Warranty,Year and also One Child Node Called as Brand Name Whose attribute are PrimaryBrand and SecondaryBrand..Now If I do Mapping of My First View i.e CarView with Child node of BrandName..and then I Have To Show Whole Detail of Car in CarDetailView.......How Can I Achieve it..

    Hi Vinay,
    You can map the child node and even the paren tnode to the same view if u want to display in the same window..
    If not if ur requirment is to dispaly in the sme view but should not map the child and parent to the Same view then you can take another new view.. and insert 2 view containers and then add the Child view and parent view in that view containers and then Diaplay the newly created view.
    Regards,
    Raju Bonagiri

  • Calling a function in child window from parent window

    Hi,
    How can I call a method in child window from parent window in adobe air using javascript. In the following example I need to call mytest() function in
    child.html from parent.html file.
    Thanks,
    ASM
    //parent.html
    <HTML><HEAD>
    <script>
    var initOptions = new air.NativeWindowInitOptions();
    initOptions.type = air.NativeWindowType.NORMAL;
    initOptions.systemChrome = air.NativeWindowSystemChrome.STANDARD;
    var bounds = new air.Rectangle(300, 300, 600, 500);
    var html2 = air.HTMLLoader.createRootWindow(false, initOptions, false, bounds);
    var urlReq2 = new air.URLRequest("child.html");
    html2.load(urlReq2);
    html2.stage.nativeWindow.activate();
    html2.window.mytest();       //NOT WORKING
    </script>
    </HEAD><body></body></HTML> 
    // child.html
    <HTML><HEAD>
    <script>
    function mytest()
      air.trace("in child window");
    </script>
    </HEAD> <body></body></HTML>

    I suspect your problem is that the child window hasn't been created by the time you call the function in the parent.Loading the content is an asynchronous processes -- AIR doesn't stop executing your code until the window has finished loading child.html. So, you will need to add an eventlistener to html2 and call the function from there:
    html2.addEventListener( "complete", onChildLoaded );
    function onChildLoaded( event )
         html2.window.mytest();

  • How to create child part from Parent Item - BLOW UP Master - Automatically

    Hi to All,
    Have any one defined this process?
    To create child part from Parent Item - BLOW UP Master - Automatically ie. we receive FG from customer which we need to blow up to its child part. In that case, FG should be consumed & child parts should be generated in stock.
    We tried with recursive, but the stock of FG was again generating with recursive.
    Ex. FG after receiving from customer in stock 1
    Child parts (with offtake 1) X1, X2, X3 in stock zero.
    After processing, FG stock should be zero & X1, X2, X3 = 1.
    Regards
    Nitin

    Create a BOM for one of the "child" parts that has the "FG from customer" as a component and all the other child parts are negative quantity components (by products).
    To make it simple have all the components backflushed and auto goods receipt the child in the BOM header.  Create a production order, then process the confirmation (this will auto goods receipt the 1st child, consume by backflush the "FG from customer" and put the other child parts into stock as by products.
    You will need to get your material prices correct first so that there is minimal variance in the production order.

  • How to pass a data from child window to parent window

    Hi,
    I have a jsp page with two hidden fields and a button, On clicking the button a popup will come out. There are two combobox in the popup and a search button. After putting a value in the comboboxes,if I click the search button, I need the datas of the combobox to pass to the parent's hidden fields then I need to do a data base search with that values of hidden fields and display the result in the parent page.
    I could I solve this problem, Please help, Its urgent.
    Thanks and Regards
    Rajib Sharma

    I think that you can use the JavaScipt as follow to pass a data from child window to parent window
    <HEAD>
    <script>
    function passData(){
    opener.form1.test1.value=form2.test2.value; //pass the value of test2 to the parent's test1
    window.close();
    </script>
    </HEAD>
    <BODY>
    <form name=form2>
    <input name=test2 type=text>
    <input type=button onclick="passData()" value=CLOSE>
    </form>
    </BODY>

  • Problem: Passing the business data from Child DC to Parent DC

    HI Dear All,
    I    developed two DC,s Parent and Child DC,i am able to pass the data from Parent DC to CHild DC,when i am trying to pass the data from Child DC to Parent DC i am unable to map the context attributes. Is it possible to pass the data from Child DC to Parent DC.
    Thanks in advance,

    What I wrote earlier:
    Yes you can acheive it by doing a flip. ie, in this case the present Parent DC will become Child DC and present Child DC will become Parent DC. Now you can share the context atrributes in reverse way (ie, you can access the context attributes of current Parent DC in current Child DC).
    Sorry Parameshwari. As Anand suggested, It will give an error called Cycle in component usage definitions, if you are doing the procedure what I suggested.
    In that case only you can do only one thing , you should maintain the requried context attribute in child DC and you can use it in parent DC.
    Child DC using Parent DC's context attribute is not possible.
    Regards,
    Jithin

  • Spawning child program from parent concurrent program.

    Hi All,
    I am trying to spawn multiple child programs from Parent concurrent program, Parent concurrent program is having execution method as HOST.
    Here is how I designed it.
    1. Parent Concurrent program (Parent Conc program with execution method as HOST).
    2. Host file is abc.prog calls PLSQL package xyz.main.
    3. xyz.main has logic to launch multiple child programs - (Child Conc program with execution method as PLSQL stored proc) using fnd_request.submit_request utility.
    All the child programs are getting launched but are in INACTIVE/NOMANAGER state. Could you please let me know how to overcome this issue.
    Both Parent and child programs are added to standard concurrent manager. This issue is only coming when parent program as execution method as HOST if parent program execution method is PLSQL stored procedure then child programs are running fine..
    I also tired initializing apps in HOST file (abc.prog) before calling PLSQL package xyz.main.
    Thanks.
    Sham.

    hi,
    even i was facing the same issue. while submitting the child requests through fnd_request.submit_request i tried the following:
    FND_REQUEST.submit_request (
    application => 'Application Short Name',
    program => 'Program Executable Name',
    description => 'Program Description',
    start_time => NULL,
    sub_request => FALSE,
    argument1 => 'Input 1',
    argument2 => 'Input 2' );
    After this the Programs were submitted successfully.

  • Dynamic Parent/Child Select List - Parent may have only a single entry

    Hello,
    I have a parent/child select list implemented using APEX only, ie no AJAX.
    The child list always has multiple entries, but the parent may only have a single entry, depending on who is running the application. When the parent has just one entry it can't submit, so the child list remains empty. Also when the parent has multiple entries, the user must select another entry from the parent list to cascade the child list.
    I have put a button to fire the branching to same page submit, but this is a little clunky. Is there a way of cascading the child list when the page opens? Preferably without ajax, but if has to be then ok
    I've looked for an answer to this but all threads I have followed seem to assume parent to have multiple entries, and that child list requires parent selection, but this not so in my application.
    Thanks, Jock

    Anyone?
    Even an acknowledgment that this should be obvious to me, or that it is not currently possible would be of assistance.
    Thanks,
    Jock

Maybe you are looking for

  • Execute a xquery in XML file ith Size Limit.

    Hi there, I have the following XML file: <Fuzzy> <Rule> <rule_ID>1</rule_ID> <event>insert</event> <happen>after</happen> <condaction>collection('test.dbxml')/Bookstore/Book</condaction> </Rule> </Fuzzy> I use the following code to execute the xquery

  • Using an Antispam and antivirus with ims as a relay

    Hi Jay, I've setup an IMS 5.2 sp1 on my DMZ to relay mail to my inside IMS 5.2 sp1 and I'd like to send all incoming and outgoing email for scan with a virus scanner on a different box, I did the following: 1- setup and IMS as a relay 2- I activate d

  • Discoverer Tables in Oracle Apps

    Hello All, We have implemented Oracle Financials 11i (11.5.9) and Discoverer 4i. We have around 300 discoveror reports.Out of these we think we can amalgmate few and can make them more generic .To do that I need to go through every single report to c

  • Restricting Specific OOTB according to Role

    Hi Could you also tell, can we restrict OOTB reports specfic to a role. Say some out of box reports should be visible to procurement executive role and some to Commodity manager? Regards Neel

  • Cisco Prime Infrastructure, trial version

    I am trying the Cisco Prime Infrastructure, trial version. In client management I can see only 802.3 clients, but not clients directly attached to the switch ports. Finding where a client, searched by IP or MAC address, is connected, is a mandatory n