[Carbon-dev] Why do we use exec in wso2server.sh?

2011-04-15 Thread Afkham Azeez
Instead of simply doing; "java ..." we do "exec java ...". Why have we used exec here? I'm trying to solve the restart issue using exit codes, and when exec is used, the process exit code cannot be captured. -- *Afkham Azeez* Senior Software Architect & Senior Manager; WSO2, Inc.; http://wso2.com

Re: [Carbon-dev] Why do we use exec in wso2server.sh?

2011-04-15 Thread Sanjiva Weerawarana
Its good to use exec so that the parent shell process doesn't hang around. That's common practice for shell scripts which set up a bunch of stuff and run something else right at the end. But that should not be a problem as the process exit status should be that of the exec'ed command IIRC (new com

Re: [Carbon-dev] Why do we use exec in wso2server.sh?

2011-04-15 Thread Afkham Azeez
Thanks! sh -c "exec java ..." worked! Earlier the script only had "exec java ..." On Sat, Apr 16, 2011 at 7:15 AM, Sanjiva Weerawarana wrote: > Its good to use exec so that the parent shell process doesn't hang around. > That's common practice for shell scripts which set up a bunch of stuff and

Re: [Carbon-dev] Why do we use exec in wso2server.sh?

2011-04-15 Thread Sanjiva Weerawarana
No saying "sh -c .." means you're creating a new shell and then exec'ng in there. In that case you might as well just say "java .." (without the exec at all). Doesn't having "exec java" at the end give the return code of the java command to the calling shell? That's what's spsed to happen. Sanjiv

Re: [Carbon-dev] Why do we use exec in wso2server.sh?

2011-04-15 Thread Afkham Azeez
If you do; $ exec ./foo.sh You will simply see the following line; [Process completed] and the control does not return to the current shell. On Sat, Apr 16, 2011 at 10:21 AM, Sanjiva Weerawarana wrote: > No saying "sh -c .." means you're creating a new shell and then exec'ng in > there. In th

Re: [Carbon-dev] Why do we use exec in wso2server.sh?

2011-04-15 Thread Afkham Azeez
This is what I'm doing in the wso2server.sh. When I restart, I issue a System.exit(121) command. So the shel will spawn a new Java process once the current one exits. This can be done on Windows too with the ERRORLEVEL variable. So, we are relying on the original process which spawned the java proc

Re: [Carbon-dev] Why do we use exec in wso2server.sh?

2011-04-15 Thread Afkham Azeez
This solution is working on Windows as well! Here is the relevant change to the wso2server.bat :runJava "%JAVA_HOME%\bin\java" -Xbootclasspath/a:%CARBON_XBOOTCLASSPATH% -Xms256m -Xmx512m -XX:MaxPermSize=128m -Dimpl.prefix=Carbon -Dcom.sun.management.jmxremote -classpath %CARBON_CLASSPATH% %JAVA_OP

Re: [Carbon-dev] Why do we use exec in wso2server.sh?

2011-04-15 Thread Sanjiva Weerawarana
Ah ok now I understood what you want to do .. yep sounds good. Only change you could do is instead of saying "sh -c 'exec java ...'" you could simply say "java ...". Essentially you're creating a shell and immediately running one command so might as well run that command directly. Sanjiva. On Sa

Re: [Carbon-dev] Why do we use exec in wso2server.sh?

2011-04-16 Thread Afkham Azeez
Please try this distribution out and let me know [1]... I have tested on Mac and Windows and works fine. If everything goes well, I will commit this change today. 1. https://docs.google.com/a/wso2.com/leaf?id=0B3W7aoJmJW4wYWRmZDY4NDktZWI3ZC00ZWFmLTk2ZTQtYzhiZGU1YTM5OTMz&hl=en On Sat, Apr 16, 201

Re: [Carbon-dev] Why do we use exec in wso2server.sh?

2011-04-16 Thread Afkham Azeez
This solution works well on Ubuntu 10.10 as well. On Sat, Apr 16, 2011 at 2:54 PM, Afkham Azeez wrote: > Please try this distribution out and let me know [1]... I have tested on > Mac and Windows and works fine. If everything goes well, I will commit this > change today. > > > 1. > https://docs

Re: [Carbon-dev] Why do we use exec in wso2server.sh?

2011-04-16 Thread Afkham Azeez
I have tested this on Mac OS x 10.6, Ubuntu 10.10 as well as Windows 7 Ultimate. The solution works perfectly on all of this platforms and hence I have committed the code. Now we can review and resolve all issues related to memory leaks on restart. Azeez On Sat, Apr 16, 2011 at 3:25 PM, Afkham Az

Re: [Carbon-dev] Why do we use exec in wso2server.sh?

2011-04-16 Thread Senaka Fernando
Great. I tried this on Ubuntu 10.04 a few minutes ago, and it works perfectly. Verified doing 'ps -ef', and performing multiple sequential restarts as well. Thanks, Senaka. On Sat, Apr 16, 2011 at 4:28 PM, Afkham Azeez wrote: > I have tested this on Mac OS x 10.6, Ubuntu 10.10 as well as Window