dev@glassfish.java.net

Re: start-domain fails to finish for 600 seconds

From: Tom Mueller <tom.mueller_at_oracle.com>
Date: Fri, 18 Feb 2011 10:29:44 -0600

We have the following issue filed for making start-domain smarter about
how long to wait:
http://java.net/jira/browse/GLASSFISH-10076

Currently, the command is hard-coded to wait 10 minutes for the DAS to
either finish starting (by creating the "pid" file) or exit. In this
case, the DAS is doing neither - it just starts and sits there without
actually making progress towards creating the pid file. See the file
StartServerHelper.java for details.

Tom

On 2/18/2011 10:01 AM, vince kraemer wrote:
> Hi Tom, Richard and all,
>
> Thanks for the additional info.
>
> While I was googling about this yesterday, I noticed that Arun had a
> TOTD posting for this, that explained the 'solution'...
> http://blogs.sun.com/arungupta/entry/totd_140_moving_glassfish_installation
>
> That was excellent.
>
> Snjezana wrote to me yesterday and pointed out that this is a filed
> issue... http://java.net/jira/browse/GLASSFISH-9988.
>
> Does anybody know why it takes start-domain 600 seconds to detect that
> the server did not start when the exceptions are triggered in less
> than one second?
>
> Could we put a better message into the log file or in the start-domain
> command's response for this?
>
> Or, just fail faster, so the user can start to take action sooner,
> rather than later...
>
> vbk
>
> ps... I kept the strace on this message to help users find the info
> that will help them...
>
>
> Richard S. Hall wrote:
>> On 2/18/11 9:52, Tom Mueller wrote:
>>> Vince,
>>> I appears that the Felix is not properly detecting that the
>>> directory moved.
>>>
>>> It looks like it is seeing the "new" modules at the new directory
>>> name, but every new module looks like a duplicate of the old module
>>> at the old directory name. Felix is not realizing that the old
>>> modules are now gone.
>>
>> Felix is not involved in such issues, it is the framework launcher
>> that tries to re-deploy bundles, so it would be the one that would
>> need to detect it.
>>
>> -> richard
>>
>>>
>>> If the domain's osgi_cache directory is removed after changing the
>>> name of the directory, then the domain will startup just fine.
>>>
>>> Tom
>>>
>>>
>>> On 2/17/2011 5:39 PM, Vince Kraemer wrote:
>>>>
>>>> WARNING: Failed to install
>>>> file:/export/home/vkraemer/GlassFish_Server5/glassfish/modules/gms-bootstrap.jar
>>>>
>>>> org.osgi.framework.BundleException: Bundle symbolic name and
>>>> version are not unique: org.glassfish.cluster.gms-bootstrap:3.1.0
>>>> at
>>>> org.apache.felix.framework.BundleImpl.createModule(BundleImpl.java:1180)
>>>>
>>>> at org.apache.felix.framework.BundleImpl.<init>(BundleImpl.java:79)
>>>> at org.apache.felix.framework.Felix.installBundle(Felix.java:2528)
>>>> at org.apache.felix.framework.Felix.installBundle(Felix.java:2436)
>>>> at
>>>> org.apache.felix.framework.BundleContextImpl.installBundle(BundleContextImpl.java:129)
>>>>
>>>> at org.jvnet.hk2.osgimain.Main.install(Main.java:363)
>>>> at org.jvnet.hk2.osgimain.Main.traverse(Main.java:293)
>>>> at org.jvnet.hk2.osgimain.Main.start(Main.java:144)
>>>> at
>>>> org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:629)
>>>>
>>>> at org.apache.felix.framework.Felix.activateBundle(Felix.java:1835)
>>>> at org.apache.felix.framework.Felix.startBundle(Felix.java:1752)
>>>> at
>>>> org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1156)
>>>> at
>>>> org.apache.felix.framework.StartLevelImpl.run(StartLevelImpl.java:264)
>>>> at java.lang.Thread.run(Thread.java:662)
>>>>
>>>> the last strace I see (if I start-domain --verbose) is this one
>>>>
>>>> java.lang.NullPointerException
>>>> at org.jvnet.hk2.osgimain.Main.start(Main.java:147)
>>>> at
>>>> org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:629)
>>>>
>>>> at org.apache.felix.framework.Felix.activateBundle(Felix.java:1835)
>>>> at org.apache.felix.framework.Felix.startBundle(Felix.java:1752)
>>>> at
>>>> org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1156)
>>>> at
>>>> org.apache.felix.framework.StartLevelImpl.run(StartLevelImpl.java:264)
>>>> at java.lang.Thread.run(Thread.java:662)
>>>>
>>>> vbk
>>>>
>