Ability to self restart karaf [WAS] Infamous permgen leak

classic Classic list List threaded Threaded
12 messages Options
Reply | Threaded
Open this post in threaded view
|

Ability to self restart karaf [WAS] Infamous permgen leak

dantran
Looks like the permgen issue is here for a long time.  How about
adding ability for karaf to restart itself ( Hudson, and eclipse can
do this i think ). May be via webconsole, or JMX

Eager to hear how we could implement such feature for karaf.

-D

---------- Forwarded message ----------
From: Dan Tran <[hidden email]>
Date: Thu, Dec 15, 2011 at 12:23 AM
Subject: Re: Infamous permgen leak
To: [hidden email]


It is about feature to be loaded in and out of karaf dynamically.  So
I guess is a known issue to 'java', karaf is not an exception :(

Wonder if ACE can solve this issue


-D

On Thu, Dec 15, 2011 at 12:15 AM, Jean-Baptiste Onofré <[hidden email]> wrote:

> Hi Dan,
>
> just to understand your issues:
> - if you talk about the feature service itself, I'm agree that it shouldn't
> consume perm
> - but the loaded classes (loaded by the feature service) consumes perm, and
> it's a normal behavior (it's exactly the same with on Tomcat with
> hot-deployment for instance)
>
>
> Regards
> JB
>
> On 12/15/2011 08:36 AM, Dan Tran wrote:
>>
>> Hello Karaf Team
>>
>> Each time I reinstall/update a feature at runtime, my karaf loses some
>> permgen. Amount depending on number to classes I have.  Is there any
>> one able to address this issue?
>>
>> Setting JVM to  -XX:+CMSPermGenSweepingEnabled
>> -XX:+CMSClassUnloadingEnabled  doesnot help.
>>
>> -Dan
>
>
> --
> Jean-Baptiste Onofré
> [hidden email]
> http://blog.nanthrax.net
> Talend - http://www.talend.com
Reply | Threaded
Open this post in threaded view
|

Re: Ability to self restart karaf [WAS] Infamous permgen leak

jbonofre
It's already possible:

- in the console: dev:restart for 2.2.x version, system:restart for
trunk (3.0)
- for the MBean, it's in org.apache.karaf:type=dev in Karaf 2.2.x
(restart() operation), or org.apache.karaf:type=system in Karaf 3.0.0
(trunk, restart() operation)

Regards
JB

On 12/15/2011 05:39 PM, Dan Tran wrote:

> Looks like the permgen issue is here for a long time.  How about
> adding ability for karaf to restart itself ( Hudson, and eclipse can
> do this i think ). May be via webconsole, or JMX
>
> Eager to hear how we could implement such feature for karaf.
>
> -D
>
> ---------- Forwarded message ----------
> From: Dan Tran<[hidden email]>
> Date: Thu, Dec 15, 2011 at 12:23 AM
> Subject: Re: Infamous permgen leak
> To: [hidden email]
>
>
> It is about feature to be loaded in and out of karaf dynamically.  So
> I guess is a known issue to 'java', karaf is not an exception :(
>
> Wonder if ACE can solve this issue
>
>
> -D
>
> On Thu, Dec 15, 2011 at 12:15 AM, Jean-Baptiste Onofré<[hidden email]>  wrote:
>> Hi Dan,
>>
>> just to understand your issues:
>> - if you talk about the feature service itself, I'm agree that it shouldn't
>> consume perm
>> - but the loaded classes (loaded by the feature service) consumes perm, and
>> it's a normal behavior (it's exactly the same with on Tomcat with
>> hot-deployment for instance)
>>
>>
>> Regards
>> JB
>>
>> On 12/15/2011 08:36 AM, Dan Tran wrote:
>>>
>>> Hello Karaf Team
>>>
>>> Each time I reinstall/update a feature at runtime, my karaf loses some
>>> permgen. Amount depending on number to classes I have.  Is there any
>>> one able to address this issue?
>>>
>>> Setting JVM to  -XX:+CMSPermGenSweepingEnabled
>>> -XX:+CMSClassUnloadingEnabled  doesnot help.
>>>
>>> -Dan
>>
>>
>> --
>> Jean-Baptiste Onofré
>> [hidden email]
>> http://blog.nanthrax.net
>> Talend - http://www.talend.com

--
Jean-Baptiste Onofré
[hidden email]
http://blog.nanthrax.net
Talend - http://www.talend.com
Reply | Threaded
Open this post in threaded view
|

Re: Ability to self restart karaf [WAS] Infamous permgen leak

Achim Nierbeck
In reply to this post by dantran
Hi Dan, 

well you have a shell command for restart its dev:restart. 
But I think you can also do a restart with the webconsole. 
everything else might be to just create a bundle that monitors the memory and 
does the same as the dev:restart if that is what you need :)

regards, Achim 

2011/12/15 Dan Tran <[hidden email]>
Looks like the permgen issue is here for a long time.  How about
adding ability for karaf to restart itself ( Hudson, and eclipse can
do this i think ). May be via webconsole, or JMX

Eager to hear how we could implement such feature for karaf.

-D

---------- Forwarded message ----------
From: Dan Tran <[hidden email]>
Date: Thu, Dec 15, 2011 at 12:23 AM
Subject: Re: Infamous permgen leak
To: [hidden email]


It is about feature to be loaded in and out of karaf dynamically.  So
I guess is a known issue to 'java', karaf is not an exception :(

Wonder if ACE can solve this issue


-D

On Thu, Dec 15, 2011 at 12:15 AM, Jean-Baptiste Onofré <[hidden email]> wrote:
> Hi Dan,
>
> just to understand your issues:
> - if you talk about the feature service itself, I'm agree that it shouldn't
> consume perm
> - but the loaded classes (loaded by the feature service) consumes perm, and
> it's a normal behavior (it's exactly the same with on Tomcat with
> hot-deployment for instance)
>
>
> Regards
> JB
>
> On 12/15/2011 08:36 AM, Dan Tran wrote:
>>
>> Hello Karaf Team
>>
>> Each time I reinstall/update a feature at runtime, my karaf loses some
>> permgen. Amount depending on number to classes I have.  Is there any
>> one able to address this issue?
>>
>> Setting JVM to  -XX:+CMSPermGenSweepingEnabled
>> -XX:+CMSClassUnloadingEnabled  doesnot help.
>>
>> -Dan
>
>
> --
> Jean-Baptiste Onofré
> [hidden email]
> http://blog.nanthrax.net
> Talend - http://www.talend.com



--

Apache Karaf <http://karaf.apache.org/> Committer & PMC
OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/> Committer & Project Lead
blog <http://notizblog.nierbeck.de/>
Reply | Threaded
Open this post in threaded view
|

Re: Ability to self restart karaf [WAS] Infamous permgen leak

dantran
In reply to this post by jbonofre
I am using 2.2.x, can I invoke dev:restart in my own bundle? any side
affect on this since my bundle also get restart.

Thanks

-D

On Thu, Dec 15, 2011 at 8:48 AM, Jean-Baptiste Onofré <[hidden email]> wrote:

> It's already possible:
>
> - in the console: dev:restart for 2.2.x version, system:restart for trunk
> (3.0)
> - for the MBean, it's in org.apache.karaf:type=dev in Karaf 2.2.x (restart()
> operation), or org.apache.karaf:type=system in Karaf 3.0.0 (trunk, restart()
> operation)
>
> Regards
> JB
>
>
> On 12/15/2011 05:39 PM, Dan Tran wrote:
>>
>> Looks like the permgen issue is here for a long time.  How about
>> adding ability for karaf to restart itself ( Hudson, and eclipse can
>> do this i think ). May be via webconsole, or JMX
>>
>> Eager to hear how we could implement such feature for karaf.
>>
>> -D
>>
>> ---------- Forwarded message ----------
>> From: Dan Tran<[hidden email]>
>> Date: Thu, Dec 15, 2011 at 12:23 AM
>> Subject: Re: Infamous permgen leak
>> To: [hidden email]
>>
>>
>> It is about feature to be loaded in and out of karaf dynamically.  So
>> I guess is a known issue to 'java', karaf is not an exception :(
>>
>> Wonder if ACE can solve this issue
>>
>>
>> -D
>>
>> On Thu, Dec 15, 2011 at 12:15 AM, Jean-Baptiste Onofré<[hidden email]>
>>  wrote:
>>>
>>> Hi Dan,
>>>
>>> just to understand your issues:
>>> - if you talk about the feature service itself, I'm agree that it
>>> shouldn't
>>> consume perm
>>> - but the loaded classes (loaded by the feature service) consumes perm,
>>> and
>>> it's a normal behavior (it's exactly the same with on Tomcat with
>>> hot-deployment for instance)
>>>
>>>
>>> Regards
>>> JB
>>>
>>> On 12/15/2011 08:36 AM, Dan Tran wrote:
>>>>
>>>>
>>>> Hello Karaf Team
>>>>
>>>> Each time I reinstall/update a feature at runtime, my karaf loses some
>>>> permgen. Amount depending on number to classes I have.  Is there any
>>>> one able to address this issue?
>>>>
>>>> Setting JVM to  -XX:+CMSPermGenSweepingEnabled
>>>> -XX:+CMSClassUnloadingEnabled  doesnot help.
>>>>
>>>> -Dan
>>>
>>>
>>>
>>> --
>>> Jean-Baptiste Onofré
>>> [hidden email]
>>> http://blog.nanthrax.net
>>> Talend - http://www.talend.com
>
>
> --
> Jean-Baptiste Onofré
> [hidden email]
> http://blog.nanthrax.net
> Talend - http://www.talend.com
Reply | Threaded
Open this post in threaded view
|

Re: Ability to self restart karaf [WAS] Infamous permgen leak

dantran
Here are notes after playing with dev:restart:

  1. Permgen still leaks

  2. Works only in main karaf shell ( ie invoke bin/karaf ).  When I
ran it as a service via wrapper and use bin/client to assess karaf
shell, dev:restart kill my karaf.

So it seems we need a cold restart.

-D

On Thu, Dec 15, 2011 at 9:02 AM, Dan Tran <[hidden email]> wrote:

> I am using 2.2.x, can I invoke dev:restart in my own bundle? any side
> affect on this since my bundle also get restart.
>
> Thanks
>
> -D
>
> On Thu, Dec 15, 2011 at 8:48 AM, Jean-Baptiste Onofré <[hidden email]> wrote:
>> It's already possible:
>>
>> - in the console: dev:restart for 2.2.x version, system:restart for trunk
>> (3.0)
>> - for the MBean, it's in org.apache.karaf:type=dev in Karaf 2.2.x (restart()
>> operation), or org.apache.karaf:type=system in Karaf 3.0.0 (trunk, restart()
>> operation)
>>
>> Regards
>> JB
>>
>>
>> On 12/15/2011 05:39 PM, Dan Tran wrote:
>>>
>>> Looks like the permgen issue is here for a long time.  How about
>>> adding ability for karaf to restart itself ( Hudson, and eclipse can
>>> do this i think ). May be via webconsole, or JMX
>>>
>>> Eager to hear how we could implement such feature for karaf.
>>>
>>> -D
>>>
>>> ---------- Forwarded message ----------
>>> From: Dan Tran<[hidden email]>
>>> Date: Thu, Dec 15, 2011 at 12:23 AM
>>> Subject: Re: Infamous permgen leak
>>> To: [hidden email]
>>>
>>>
>>> It is about feature to be loaded in and out of karaf dynamically.  So
>>> I guess is a known issue to 'java', karaf is not an exception :(
>>>
>>> Wonder if ACE can solve this issue
>>>
>>>
>>> -D
>>>
>>> On Thu, Dec 15, 2011 at 12:15 AM, Jean-Baptiste Onofré<[hidden email]>
>>>  wrote:
>>>>
>>>> Hi Dan,
>>>>
>>>> just to understand your issues:
>>>> - if you talk about the feature service itself, I'm agree that it
>>>> shouldn't
>>>> consume perm
>>>> - but the loaded classes (loaded by the feature service) consumes perm,
>>>> and
>>>> it's a normal behavior (it's exactly the same with on Tomcat with
>>>> hot-deployment for instance)
>>>>
>>>>
>>>> Regards
>>>> JB
>>>>
>>>> On 12/15/2011 08:36 AM, Dan Tran wrote:
>>>>>
>>>>>
>>>>> Hello Karaf Team
>>>>>
>>>>> Each time I reinstall/update a feature at runtime, my karaf loses some
>>>>> permgen. Amount depending on number to classes I have.  Is there any
>>>>> one able to address this issue?
>>>>>
>>>>> Setting JVM to  -XX:+CMSPermGenSweepingEnabled
>>>>> -XX:+CMSClassUnloadingEnabled  doesnot help.
>>>>>
>>>>> -Dan
>>>>
>>>>
>>>>
>>>> --
>>>> Jean-Baptiste Onofré
>>>> [hidden email]
>>>> http://blog.nanthrax.net
>>>> Talend - http://www.talend.com
>>
>>
>> --
>> Jean-Baptiste Onofré
>> [hidden email]
>> http://blog.nanthrax.net
>> Talend - http://www.talend.com
Reply | Threaded
Open this post in threaded view
|

Re: Ability to self restart karaf [WAS] Infamous permgen leak

jbonofre
In reply to this post by dantran
dev:restart restart the OSGi framework (bundle 0).

On trunk, you will have an OSGi service to manipulate it.

In your code, you can do:

bundleContext.getBundle(0).stop();

it will restart Karaf.

Regards
JB

On 12/15/2011 06:02 PM, Dan Tran wrote:

> I am using 2.2.x, can I invoke dev:restart in my own bundle? any side
> affect on this since my bundle also get restart.
>
> Thanks
>
> -D
>
> On Thu, Dec 15, 2011 at 8:48 AM, Jean-Baptiste Onofré<[hidden email]>  wrote:
>> It's already possible:
>>
>> - in the console: dev:restart for 2.2.x version, system:restart for trunk
>> (3.0)
>> - for the MBean, it's in org.apache.karaf:type=dev in Karaf 2.2.x (restart()
>> operation), or org.apache.karaf:type=system in Karaf 3.0.0 (trunk, restart()
>> operation)
>>
>> Regards
>> JB
>>
>>
>> On 12/15/2011 05:39 PM, Dan Tran wrote:
>>>
>>> Looks like the permgen issue is here for a long time.  How about
>>> adding ability for karaf to restart itself ( Hudson, and eclipse can
>>> do this i think ). May be via webconsole, or JMX
>>>
>>> Eager to hear how we could implement such feature for karaf.
>>>
>>> -D
>>>
>>> ---------- Forwarded message ----------
>>> From: Dan Tran<[hidden email]>
>>> Date: Thu, Dec 15, 2011 at 12:23 AM
>>> Subject: Re: Infamous permgen leak
>>> To: [hidden email]
>>>
>>>
>>> It is about feature to be loaded in and out of karaf dynamically.  So
>>> I guess is a known issue to 'java', karaf is not an exception :(
>>>
>>> Wonder if ACE can solve this issue
>>>
>>>
>>> -D
>>>
>>> On Thu, Dec 15, 2011 at 12:15 AM, Jean-Baptiste Onofré<[hidden email]>
>>>   wrote:
>>>>
>>>> Hi Dan,
>>>>
>>>> just to understand your issues:
>>>> - if you talk about the feature service itself, I'm agree that it
>>>> shouldn't
>>>> consume perm
>>>> - but the loaded classes (loaded by the feature service) consumes perm,
>>>> and
>>>> it's a normal behavior (it's exactly the same with on Tomcat with
>>>> hot-deployment for instance)
>>>>
>>>>
>>>> Regards
>>>> JB
>>>>
>>>> On 12/15/2011 08:36 AM, Dan Tran wrote:
>>>>>
>>>>>
>>>>> Hello Karaf Team
>>>>>
>>>>> Each time I reinstall/update a feature at runtime, my karaf loses some
>>>>> permgen. Amount depending on number to classes I have.  Is there any
>>>>> one able to address this issue?
>>>>>
>>>>> Setting JVM to  -XX:+CMSPermGenSweepingEnabled
>>>>> -XX:+CMSClassUnloadingEnabled  doesnot help.
>>>>>
>>>>> -Dan
>>>>
>>>>
>>>>
>>>> --
>>>> Jean-Baptiste Onofré
>>>> [hidden email]
>>>> http://blog.nanthrax.net
>>>> Talend - http://www.talend.com
>>
>>
>> --
>> Jean-Baptiste Onofré
>> [hidden email]
>> http://blog.nanthrax.net
>> Talend - http://www.talend.com

--
Jean-Baptiste Onofré
[hidden email]
http://blog.nanthrax.net
Talend - http://www.talend.com
Reply | Threaded
Open this post in threaded view
|

Re: Ability to self restart karaf [WAS] Infamous permgen leak

jbonofre
In reply to this post by dantran
Thanks for the update Karaf.

For the wrapper, you can use respawn (on Unix).
For the perm, it looks like a framework "issue" (we have to dig around).

Regards
JB

On 12/15/2011 06:18 PM, Dan Tran wrote:

> Here are notes after playing with dev:restart:
>
>    1. Permgen still leaks
>
>    2. Works only in main karaf shell ( ie invoke bin/karaf ).  When I
> ran it as a service via wrapper and use bin/client to assess karaf
> shell, dev:restart kill my karaf.
>
> So it seems we need a cold restart.
>
> -D
>
> On Thu, Dec 15, 2011 at 9:02 AM, Dan Tran<[hidden email]>  wrote:
>> I am using 2.2.x, can I invoke dev:restart in my own bundle? any side
>> affect on this since my bundle also get restart.
>>
>> Thanks
>>
>> -D
>>
>> On Thu, Dec 15, 2011 at 8:48 AM, Jean-Baptiste Onofré<[hidden email]>  wrote:
>>> It's already possible:
>>>
>>> - in the console: dev:restart for 2.2.x version, system:restart for trunk
>>> (3.0)
>>> - for the MBean, it's in org.apache.karaf:type=dev in Karaf 2.2.x (restart()
>>> operation), or org.apache.karaf:type=system in Karaf 3.0.0 (trunk, restart()
>>> operation)
>>>
>>> Regards
>>> JB
>>>
>>>
>>> On 12/15/2011 05:39 PM, Dan Tran wrote:
>>>>
>>>> Looks like the permgen issue is here for a long time.  How about
>>>> adding ability for karaf to restart itself ( Hudson, and eclipse can
>>>> do this i think ). May be via webconsole, or JMX
>>>>
>>>> Eager to hear how we could implement such feature for karaf.
>>>>
>>>> -D
>>>>
>>>> ---------- Forwarded message ----------
>>>> From: Dan Tran<[hidden email]>
>>>> Date: Thu, Dec 15, 2011 at 12:23 AM
>>>> Subject: Re: Infamous permgen leak
>>>> To: [hidden email]
>>>>
>>>>
>>>> It is about feature to be loaded in and out of karaf dynamically.  So
>>>> I guess is a known issue to 'java', karaf is not an exception :(
>>>>
>>>> Wonder if ACE can solve this issue
>>>>
>>>>
>>>> -D
>>>>
>>>> On Thu, Dec 15, 2011 at 12:15 AM, Jean-Baptiste Onofré<[hidden email]>
>>>>   wrote:
>>>>>
>>>>> Hi Dan,
>>>>>
>>>>> just to understand your issues:
>>>>> - if you talk about the feature service itself, I'm agree that it
>>>>> shouldn't
>>>>> consume perm
>>>>> - but the loaded classes (loaded by the feature service) consumes perm,
>>>>> and
>>>>> it's a normal behavior (it's exactly the same with on Tomcat with
>>>>> hot-deployment for instance)
>>>>>
>>>>>
>>>>> Regards
>>>>> JB
>>>>>
>>>>> On 12/15/2011 08:36 AM, Dan Tran wrote:
>>>>>>
>>>>>>
>>>>>> Hello Karaf Team
>>>>>>
>>>>>> Each time I reinstall/update a feature at runtime, my karaf loses some
>>>>>> permgen. Amount depending on number to classes I have.  Is there any
>>>>>> one able to address this issue?
>>>>>>
>>>>>> Setting JVM to  -XX:+CMSPermGenSweepingEnabled
>>>>>> -XX:+CMSClassUnloadingEnabled  doesnot help.
>>>>>>
>>>>>> -Dan
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Jean-Baptiste Onofré
>>>>> [hidden email]
>>>>> http://blog.nanthrax.net
>>>>> Talend - http://www.talend.com
>>>
>>>
>>> --
>>> Jean-Baptiste Onofré
>>> [hidden email]
>>> http://blog.nanthrax.net
>>> Talend - http://www.talend.com

--
Jean-Baptiste Onofré
[hidden email]
http://blog.nanthrax.net
Talend - http://www.talend.com
Reply | Threaded
Open this post in threaded view
|

Re: Ability to self restart karaf [WAS] Infamous permgen leak

dantran
We should be able to configure wrapper to restart karaf if karaf exits
with an expected code.  see
http://wrapper.tanukisoftware.com/doc/english/prop-on-exit-n.html

The question here is how can we do that a karaf's bundle? Can we call
shutdown with an exit code?

Thanks

-Dan


On Thu, Dec 15, 2011 at 9:21 AM, Jean-Baptiste Onofré <[hidden email]> wrote:

> Thanks for the update Karaf.
>
> For the wrapper, you can use respawn (on Unix).
> For the perm, it looks like a framework "issue" (we have to dig around).
>
> Regards
> JB
>
>
> On 12/15/2011 06:18 PM, Dan Tran wrote:
>>
>> Here are notes after playing with dev:restart:
>>
>>   1. Permgen still leaks
>>
>>   2. Works only in main karaf shell ( ie invoke bin/karaf ).  When I
>> ran it as a service via wrapper and use bin/client to assess karaf
>> shell, dev:restart kill my karaf.
>>
>> So it seems we need a cold restart.
>>
>> -D
>>
>> On Thu, Dec 15, 2011 at 9:02 AM, Dan Tran<[hidden email]>  wrote:
>>>
>>> I am using 2.2.x, can I invoke dev:restart in my own bundle? any side
>>> affect on this since my bundle also get restart.
>>>
>>> Thanks
>>>
>>> -D
>>>
>>> On Thu, Dec 15, 2011 at 8:48 AM, Jean-Baptiste Onofré<[hidden email]>
>>>  wrote:
>>>>
>>>> It's already possible:
>>>>
>>>> - in the console: dev:restart for 2.2.x version, system:restart for
>>>> trunk
>>>> (3.0)
>>>> - for the MBean, it's in org.apache.karaf:type=dev in Karaf 2.2.x
>>>> (restart()
>>>> operation), or org.apache.karaf:type=system in Karaf 3.0.0 (trunk,
>>>> restart()
>>>> operation)
>>>>
>>>> Regards
>>>> JB
>>>>
>>>>
>>>> On 12/15/2011 05:39 PM, Dan Tran wrote:
>>>>>
>>>>>
>>>>> Looks like the permgen issue is here for a long time.  How about
>>>>> adding ability for karaf to restart itself ( Hudson, and eclipse can
>>>>> do this i think ). May be via webconsole, or JMX
>>>>>
>>>>> Eager to hear how we could implement such feature for karaf.
>>>>>
>>>>> -D
>>>>>
>>>>> ---------- Forwarded message ----------
>>>>> From: Dan Tran<[hidden email]>
>>>>> Date: Thu, Dec 15, 2011 at 12:23 AM
>>>>> Subject: Re: Infamous permgen leak
>>>>> To: [hidden email]
>>>>>
>>>>>
>>>>> It is about feature to be loaded in and out of karaf dynamically.  So
>>>>> I guess is a known issue to 'java', karaf is not an exception :(
>>>>>
>>>>> Wonder if ACE can solve this issue
>>>>>
>>>>>
>>>>> -D
>>>>>
>>>>> On Thu, Dec 15, 2011 at 12:15 AM, Jean-Baptiste Onofré<[hidden email]>
>>>>>  wrote:
>>>>>>
>>>>>>
>>>>>> Hi Dan,
>>>>>>
>>>>>> just to understand your issues:
>>>>>> - if you talk about the feature service itself, I'm agree that it
>>>>>> shouldn't
>>>>>> consume perm
>>>>>> - but the loaded classes (loaded by the feature service) consumes
>>>>>> perm,
>>>>>> and
>>>>>> it's a normal behavior (it's exactly the same with on Tomcat with
>>>>>> hot-deployment for instance)
>>>>>>
>>>>>>
>>>>>> Regards
>>>>>> JB
>>>>>>
>>>>>> On 12/15/2011 08:36 AM, Dan Tran wrote:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Hello Karaf Team
>>>>>>>
>>>>>>> Each time I reinstall/update a feature at runtime, my karaf loses
>>>>>>> some
>>>>>>> permgen. Amount depending on number to classes I have.  Is there any
>>>>>>> one able to address this issue?
>>>>>>>
>>>>>>> Setting JVM to  -XX:+CMSPermGenSweepingEnabled
>>>>>>> -XX:+CMSClassUnloadingEnabled  doesnot help.
>>>>>>>
>>>>>>> -Dan
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Jean-Baptiste Onofré
>>>>>> [hidden email]
>>>>>> http://blog.nanthrax.net
>>>>>> Talend - http://www.talend.com
>>>>
>>>>
>>>>
>>>> --
>>>> Jean-Baptiste Onofré
>>>> [hidden email]
>>>> http://blog.nanthrax.net
>>>> Talend - http://www.talend.com
>
>
> --
> Jean-Baptiste Onofré
> [hidden email]
> http://blog.nanthrax.net
> Talend - http://www.talend.com
Reply | Threaded
Open this post in threaded view
|

Re: Ability to self restart karaf [WAS] Infamous permgen leak

Achim Nierbeck
Hi Dan,

well the first entry on your link allready does what you need :)
Instead of

wrapper.on_exit.default=SHUTDOWN


do a

wrapper.on_exit.default=RESTART


this way your karaf will always restart through the servicewrapper.

No back to your PermGen leak issue.
Could you give me a hint of what you actually are doing.
If I did understand correctly you use the features service to deploy a
bunch of bundles.
Now how often do you actually re-deploy this feature set?
How many classes are contained in your bundles?

regards, Achim



Am 15.12.2011 21:23, schrieb Dan Tran:

> We should be able to configure wrapper to restart karaf if karaf exits
> with an expected code.  see
> http://wrapper.tanukisoftware.com/doc/english/prop-on-exit-n.html
>
> The question here is how can we do that a karaf's bundle? Can we call
> shutdown with an exit code?
>
> Thanks
>
> -Dan
>
>
> On Thu, Dec 15, 2011 at 9:21 AM, Jean-Baptiste Onofré<[hidden email]>  wrote:
>> Thanks for the update Karaf.
>>
>> For the wrapper, you can use respawn (on Unix).
>> For the perm, it looks like a framework "issue" (we have to dig around).
>>
>> Regards
>> JB
>>
>>
>> On 12/15/2011 06:18 PM, Dan Tran wrote:
>>> Here are notes after playing with dev:restart:
>>>
>>>    1. Permgen still leaks
>>>
>>>    2. Works only in main karaf shell ( ie invoke bin/karaf ).  When I
>>> ran it as a service via wrapper and use bin/client to assess karaf
>>> shell, dev:restart kill my karaf.
>>>
>>> So it seems we need a cold restart.
>>>
>>> -D
>>>
>>> On Thu, Dec 15, 2011 at 9:02 AM, Dan Tran<[hidden email]>    wrote:
>>>> I am using 2.2.x, can I invoke dev:restart in my own bundle? any side
>>>> affect on this since my bundle also get restart.
>>>>
>>>> Thanks
>>>>
>>>> -D
>>>>
>>>> On Thu, Dec 15, 2011 at 8:48 AM, Jean-Baptiste Onofré<[hidden email]>
>>>>   wrote:
>>>>> It's already possible:
>>>>>
>>>>> - in the console: dev:restart for 2.2.x version, system:restart for
>>>>> trunk
>>>>> (3.0)
>>>>> - for the MBean, it's in org.apache.karaf:type=dev in Karaf 2.2.x
>>>>> (restart()
>>>>> operation), or org.apache.karaf:type=system in Karaf 3.0.0 (trunk,
>>>>> restart()
>>>>> operation)
>>>>>
>>>>> Regards
>>>>> JB
>>>>>
>>>>>
>>>>> On 12/15/2011 05:39 PM, Dan Tran wrote:
>>>>>>
>>>>>> Looks like the permgen issue is here for a long time.  How about
>>>>>> adding ability for karaf to restart itself ( Hudson, and eclipse can
>>>>>> do this i think ). May be via webconsole, or JMX
>>>>>>
>>>>>> Eager to hear how we could implement such feature for karaf.
>>>>>>
>>>>>> -D
>>>>>>
>>>>>> ---------- Forwarded message ----------
>>>>>> From: Dan Tran<[hidden email]>
>>>>>> Date: Thu, Dec 15, 2011 at 12:23 AM
>>>>>> Subject: Re: Infamous permgen leak
>>>>>> To: [hidden email]
>>>>>>
>>>>>>
>>>>>> It is about feature to be loaded in and out of karaf dynamically.  So
>>>>>> I guess is a known issue to 'java', karaf is not an exception :(
>>>>>>
>>>>>> Wonder if ACE can solve this issue
>>>>>>
>>>>>>
>>>>>> -D
>>>>>>
>>>>>> On Thu, Dec 15, 2011 at 12:15 AM, Jean-Baptiste Onofré<[hidden email]>
>>>>>>   wrote:
>>>>>>>
>>>>>>> Hi Dan,
>>>>>>>
>>>>>>> just to understand your issues:
>>>>>>> - if you talk about the feature service itself, I'm agree that it
>>>>>>> shouldn't
>>>>>>> consume perm
>>>>>>> - but the loaded classes (loaded by the feature service) consumes
>>>>>>> perm,
>>>>>>> and
>>>>>>> it's a normal behavior (it's exactly the same with on Tomcat with
>>>>>>> hot-deployment for instance)
>>>>>>>
>>>>>>>
>>>>>>> Regards
>>>>>>> JB
>>>>>>>
>>>>>>> On 12/15/2011 08:36 AM, Dan Tran wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>> Hello Karaf Team
>>>>>>>>
>>>>>>>> Each time I reinstall/update a feature at runtime, my karaf loses
>>>>>>>> some
>>>>>>>> permgen. Amount depending on number to classes I have.  Is there any
>>>>>>>> one able to address this issue?
>>>>>>>>
>>>>>>>> Setting JVM to  -XX:+CMSPermGenSweepingEnabled
>>>>>>>> -XX:+CMSClassUnloadingEnabled  doesnot help.
>>>>>>>>
>>>>>>>> -Dan
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Jean-Baptiste Onofré
>>>>>>> [hidden email]
>>>>>>> http://blog.nanthrax.net
>>>>>>> Talend - http://www.talend.com
>>>>>
>>>>>
>>>>> --
>>>>> Jean-Baptiste Onofré
>>>>> [hidden email]
>>>>> http://blog.nanthrax.net
>>>>> Talend - http://www.talend.com
>>
>> --
>> Jean-Baptiste Onofré
>> [hidden email]
>> http://blog.nanthrax.net
>> Talend - http://www.talend.com


--
--
*Achim Nierbeck*


Apache Karaf<http://karaf.apache.org/>  Committer&  PMC
OPS4J Pax Web<http://wiki.ops4j.org/display/paxweb/Pax+Web/>    Committer&  Project Lead
blog<http://notizblog.nierbeck.de/>

Reply | Threaded
Open this post in threaded view
|

Re: Ability to self restart karaf [WAS] Infamous permgen leak

dantran
Hi Achim

1. I am not really understand what wrapper.on_exit.default=RESTART
does, but with wrapper.on_exit.99=RESTART, and If can get my bundle to
shutdown karaf with exit code 99. That would be test.

2. Our usage of karaf is having a feature ( with  a bunch of bundles
it has many classes 200+ and growing ).  We remotely access karaf via
JMX to update our feature feature by having karaf to contact maven
repo to pickup the update.
    How often do we do the update? quite often during development.
But not expect a lots once it get to customer size. This is how we
deliver bug fix and added feature.

Thanks

-Dan



On Thu, Dec 15, 2011 at 2:37 PM, Achim Nierbeck <[hidden email]> wrote:

> Hi Dan,
>
> well the first entry on your link allready does what you need :)
> Instead of
>
> wrapper.on_exit.default=SHUTDOWN
>
>
> do a
>
> wrapper.on_exit.default=RESTART
>
>
> this way your karaf will always restart through the servicewrapper.
>
> No back to your PermGen leak issue.
> Could you give me a hint of what you actually are doing.
> If I did understand correctly you use the features service to deploy a bunch
> of bundles.
> Now how often do you actually re-deploy this feature set?
> How many classes are contained in your bundles?
>
> regards, Achim
>
>
>
> Am 15.12.2011 21:23, schrieb Dan Tran:
>
>> We should be able to configure wrapper to restart karaf if karaf exits
>> with an expected code.  see
>> http://wrapper.tanukisoftware.com/doc/english/prop-on-exit-n.html
>>
>> The question here is how can we do that a karaf's bundle? Can we call
>> shutdown with an exit code?
>>
>> Thanks
>>
>> -Dan
>>
>>
>> On Thu, Dec 15, 2011 at 9:21 AM, Jean-Baptiste Onofré<[hidden email]>
>>  wrote:
>>>
>>> Thanks for the update Karaf.
>>>
>>> For the wrapper, you can use respawn (on Unix).
>>> For the perm, it looks like a framework "issue" (we have to dig around).
>>>
>>> Regards
>>> JB
>>>
>>>
>>> On 12/15/2011 06:18 PM, Dan Tran wrote:
>>>>
>>>> Here are notes after playing with dev:restart:
>>>>
>>>>   1. Permgen still leaks
>>>>
>>>>   2. Works only in main karaf shell ( ie invoke bin/karaf ).  When I
>>>> ran it as a service via wrapper and use bin/client to assess karaf
>>>> shell, dev:restart kill my karaf.
>>>>
>>>> So it seems we need a cold restart.
>>>>
>>>> -D
>>>>
>>>> On Thu, Dec 15, 2011 at 9:02 AM, Dan Tran<[hidden email]>    wrote:
>>>>>
>>>>> I am using 2.2.x, can I invoke dev:restart in my own bundle? any side
>>>>> affect on this since my bundle also get restart.
>>>>>
>>>>> Thanks
>>>>>
>>>>> -D
>>>>>
>>>>> On Thu, Dec 15, 2011 at 8:48 AM, Jean-Baptiste Onofré<[hidden email]>
>>>>>  wrote:
>>>>>>
>>>>>> It's already possible:
>>>>>>
>>>>>> - in the console: dev:restart for 2.2.x version, system:restart for
>>>>>> trunk
>>>>>> (3.0)
>>>>>> - for the MBean, it's in org.apache.karaf:type=dev in Karaf 2.2.x
>>>>>> (restart()
>>>>>> operation), or org.apache.karaf:type=system in Karaf 3.0.0 (trunk,
>>>>>> restart()
>>>>>> operation)
>>>>>>
>>>>>> Regards
>>>>>> JB
>>>>>>
>>>>>>
>>>>>> On 12/15/2011 05:39 PM, Dan Tran wrote:
>>>>>>>
>>>>>>>
>>>>>>> Looks like the permgen issue is here for a long time.  How about
>>>>>>> adding ability for karaf to restart itself ( Hudson, and eclipse can
>>>>>>> do this i think ). May be via webconsole, or JMX
>>>>>>>
>>>>>>> Eager to hear how we could implement such feature for karaf.
>>>>>>>
>>>>>>> -D
>>>>>>>
>>>>>>> ---------- Forwarded message ----------
>>>>>>> From: Dan Tran<[hidden email]>
>>>>>>> Date: Thu, Dec 15, 2011 at 12:23 AM
>>>>>>> Subject: Re: Infamous permgen leak
>>>>>>> To: [hidden email]
>>>>>>>
>>>>>>>
>>>>>>> It is about feature to be loaded in and out of karaf dynamically.  So
>>>>>>> I guess is a known issue to 'java', karaf is not an exception :(
>>>>>>>
>>>>>>> Wonder if ACE can solve this issue
>>>>>>>
>>>>>>>
>>>>>>> -D
>>>>>>>
>>>>>>> On Thu, Dec 15, 2011 at 12:15 AM, Jean-Baptiste
>>>>>>> Onofré<[hidden email]>
>>>>>>>  wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>> Hi Dan,
>>>>>>>>
>>>>>>>> just to understand your issues:
>>>>>>>> - if you talk about the feature service itself, I'm agree that it
>>>>>>>> shouldn't
>>>>>>>> consume perm
>>>>>>>> - but the loaded classes (loaded by the feature service) consumes
>>>>>>>> perm,
>>>>>>>> and
>>>>>>>> it's a normal behavior (it's exactly the same with on Tomcat with
>>>>>>>> hot-deployment for instance)
>>>>>>>>
>>>>>>>>
>>>>>>>> Regards
>>>>>>>> JB
>>>>>>>>
>>>>>>>> On 12/15/2011 08:36 AM, Dan Tran wrote:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Hello Karaf Team
>>>>>>>>>
>>>>>>>>> Each time I reinstall/update a feature at runtime, my karaf loses
>>>>>>>>> some
>>>>>>>>> permgen. Amount depending on number to classes I have.  Is there
>>>>>>>>> any
>>>>>>>>> one able to address this issue?
>>>>>>>>>
>>>>>>>>> Setting JVM to  -XX:+CMSPermGenSweepingEnabled
>>>>>>>>> -XX:+CMSClassUnloadingEnabled  doesnot help.
>>>>>>>>>
>>>>>>>>> -Dan
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Jean-Baptiste Onofré
>>>>>>>> [hidden email]
>>>>>>>> http://blog.nanthrax.net
>>>>>>>> Talend - http://www.talend.com
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Jean-Baptiste Onofré
>>>>>> [hidden email]
>>>>>> http://blog.nanthrax.net
>>>>>> Talend - http://www.talend.com
>>>
>>>
>>> --
>>> Jean-Baptiste Onofré
>>> [hidden email]
>>> http://blog.nanthrax.net
>>> Talend - http://www.talend.com
>
>
>
> --
> --
> *Achim Nierbeck*
>
>
> Apache Karaf<http://karaf.apache.org/>  Committer&  PMC
> OPS4J Pax Web<http://wiki.ops4j.org/display/paxweb/Pax+Web/>    Committer&
>  Project Lead
> blog<http://notizblog.nierbeck.de/>
>
Reply | Threaded
Open this post in threaded view
|

Re: Ability to self restart karaf [WAS] Infamous permgen leak

Achim Nierbeck
Hi Dan, 

1) well the default one is for std. Shutdown, this way you tell the service wrapper that if the system is going down for a shutdown no matter what the 
exit code says it does a reboot. 

2) regarding your re-deployment. Consider this, every time a bundle is updated all previous Class definitions
are ignored but since all Class definitions and Static members are stored in the PermGen space this memory
is increased everytime you do a redeploy. This is allright if you just update a bundle or two but if you update 
lot's of bundles with lot's of class-definitions you run out of Memory here. 
There is one JVM that doesn't have a permGen space it's the JRockit, though I don't know if it is still available
for free as it used to be :)
One other side note, you might consider updating only the bundle in question instead of updating the complete set
of bundles in a feature when going productive :)

Regards, Achim  

2011/12/16 Dan Tran <[hidden email]>
Hi Achim

1. I am not really understand what wrapper.on_exit.default=RESTART
does, but with wrapper.on_exit.99=RESTART, and If can get my bundle to
shutdown karaf with exit code 99. That would be test.

2. Our usage of karaf is having a feature ( with  a bunch of bundles
it has many classes 200+ and growing ).  We remotely access karaf via
JMX to update our feature feature by having karaf to contact maven
repo to pickup the update.
   How often do we do the update? quite often during development.
But not expect a lots once it get to customer size. This is how we
deliver bug fix and added feature.

Thanks

-Dan



On Thu, Dec 15, 2011 at 2:37 PM, Achim Nierbeck <[hidden email]> wrote:
> Hi Dan,
>
> well the first entry on your link allready does what you need :)
> Instead of
>
> wrapper.on_exit.default=SHUTDOWN
>
>
> do a
>
> wrapper.on_exit.default=RESTART
>
>
> this way your karaf will always restart through the servicewrapper.
>
> No back to your PermGen leak issue.
> Could you give me a hint of what you actually are doing.
> If I did understand correctly you use the features service to deploy a bunch
> of bundles.
> Now how often do you actually re-deploy this feature set?
> How many classes are contained in your bundles?
>
> regards, Achim
>
>
>
> Am 15.12.2011 21:23, schrieb Dan Tran:
>
>> We should be able to configure wrapper to restart karaf if karaf exits
>> with an expected code.  see
>> http://wrapper.tanukisoftware.com/doc/english/prop-on-exit-n.html
>>
>> The question here is how can we do that a karaf's bundle? Can we call
>> shutdown with an exit code?
>>
>> Thanks
>>
>> -Dan
>>
>>
>> On Thu, Dec 15, 2011 at 9:21 AM, Jean-Baptiste Onofré<[hidden email]>
>>  wrote:
>>>
>>> Thanks for the update Karaf.
>>>
>>> For the wrapper, you can use respawn (on Unix).
>>> For the perm, it looks like a framework "issue" (we have to dig around).
>>>
>>> Regards
>>> JB
>>>
>>>
>>> On 12/15/2011 06:18 PM, Dan Tran wrote:
>>>>
>>>> Here are notes after playing with dev:restart:
>>>>
>>>>   1. Permgen still leaks
>>>>
>>>>   2. Works only in main karaf shell ( ie invoke bin/karaf ).  When I
>>>> ran it as a service via wrapper and use bin/client to assess karaf
>>>> shell, dev:restart kill my karaf.
>>>>
>>>> So it seems we need a cold restart.
>>>>
>>>> -D
>>>>
>>>> On Thu, Dec 15, 2011 at 9:02 AM, Dan Tran<[hidden email]>    wrote:
>>>>>
>>>>> I am using 2.2.x, can I invoke dev:restart in my own bundle? any side
>>>>> affect on this since my bundle also get restart.
>>>>>
>>>>> Thanks
>>>>>
>>>>> -D
>>>>>
>>>>> On Thu, Dec 15, 2011 at 8:48 AM, Jean-Baptiste Onofré<[hidden email]>
>>>>>  wrote:
>>>>>>
>>>>>> It's already possible:
>>>>>>
>>>>>> - in the console: dev:restart for 2.2.x version, system:restart for
>>>>>> trunk
>>>>>> (3.0)
>>>>>> - for the MBean, it's in org.apache.karaf:type=dev in Karaf 2.2.x
>>>>>> (restart()
>>>>>> operation), or org.apache.karaf:type=system in Karaf 3.0.0 (trunk,
>>>>>> restart()
>>>>>> operation)
>>>>>>
>>>>>> Regards
>>>>>> JB
>>>>>>
>>>>>>
>>>>>> On 12/15/2011 05:39 PM, Dan Tran wrote:
>>>>>>>
>>>>>>>
>>>>>>> Looks like the permgen issue is here for a long time.  How about
>>>>>>> adding ability for karaf to restart itself ( Hudson, and eclipse can
>>>>>>> do this i think ). May be via webconsole, or JMX
>>>>>>>
>>>>>>> Eager to hear how we could implement such feature for karaf.
>>>>>>>
>>>>>>> -D
>>>>>>>
>>>>>>> ---------- Forwarded message ----------
>>>>>>> From: Dan Tran<[hidden email]>
>>>>>>> Date: Thu, Dec 15, 2011 at 12:23 AM
>>>>>>> Subject: Re: Infamous permgen leak
>>>>>>> To: [hidden email]
>>>>>>>
>>>>>>>
>>>>>>> It is about feature to be loaded in and out of karaf dynamically.  So
>>>>>>> I guess is a known issue to 'java', karaf is not an exception :(
>>>>>>>
>>>>>>> Wonder if ACE can solve this issue
>>>>>>>
>>>>>>>
>>>>>>> -D
>>>>>>>
>>>>>>> On Thu, Dec 15, 2011 at 12:15 AM, Jean-Baptiste
>>>>>>> Onofré<[hidden email]>
>>>>>>>  wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>> Hi Dan,
>>>>>>>>
>>>>>>>> just to understand your issues:
>>>>>>>> - if you talk about the feature service itself, I'm agree that it
>>>>>>>> shouldn't
>>>>>>>> consume perm
>>>>>>>> - but the loaded classes (loaded by the feature service) consumes
>>>>>>>> perm,
>>>>>>>> and
>>>>>>>> it's a normal behavior (it's exactly the same with on Tomcat with
>>>>>>>> hot-deployment for instance)
>>>>>>>>
>>>>>>>>
>>>>>>>> Regards
>>>>>>>> JB
>>>>>>>>
>>>>>>>> On 12/15/2011 08:36 AM, Dan Tran wrote:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Hello Karaf Team
>>>>>>>>>
>>>>>>>>> Each time I reinstall/update a feature at runtime, my karaf loses
>>>>>>>>> some
>>>>>>>>> permgen. Amount depending on number to classes I have.  Is there
>>>>>>>>> any
>>>>>>>>> one able to address this issue?
>>>>>>>>>
>>>>>>>>> Setting JVM to  -XX:+CMSPermGenSweepingEnabled
>>>>>>>>> -XX:+CMSClassUnloadingEnabled  doesnot help.
>>>>>>>>>
>>>>>>>>> -Dan
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Jean-Baptiste Onofré
>>>>>>>> [hidden email]
>>>>>>>> http://blog.nanthrax.net
>>>>>>>> Talend - http://www.talend.com
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Jean-Baptiste Onofré
>>>>>> [hidden email]
>>>>>> http://blog.nanthrax.net
>>>>>> Talend - http://www.talend.com
>>>
>>>
>>> --
>>> Jean-Baptiste Onofré
>>> [hidden email]
>>> http://blog.nanthrax.net
>>> Talend - http://www.talend.com
>
>
>
> --
> --
> *Achim Nierbeck*
>
>
> Apache Karaf<http://karaf.apache.org/>  Committer&  PMC
> OPS4J Pax Web<http://wiki.ops4j.org/display/paxweb/Pax+Web/>    Committer&
>  Project Lead
> blog<http://notizblog.nierbeck.de/>
>



--

Apache Karaf <http://karaf.apache.org/> Committer & PMC
OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/> Committer & Project Lead
blog <http://notizblog.nierbeck.de/>
Reply | Threaded
Open this post in threaded view
|

Re: Ability to self restart karaf [WAS] Infamous permgen leak

dantran
Hi Achim

1. wrapper.on_exit.default=RESTART is a good start.  However, it is
better if we can control when exactly we want karaf to restart by
providing configure exit code? ( ie <karaf> shutdown 999 )
    Otherwise, we may run into infinite restart

2. Due to deployment logistic and complexity, we have decided to use
single kar deployment.

Thanks

-D


On Fri, Dec 16, 2011 at 12:37 AM, Achim Nierbeck
<[hidden email]> wrote:

> Hi Dan,
>
> 1) well the default one is for std. Shutdown, this way you tell the service
> wrapper that if the system is going down for a shutdown no matter what the
> exit code says it does a reboot.
>
> 2) regarding your re-deployment. Consider this, every time a bundle is
> updated all previous Class definitions
> are ignored but since all Class definitions and Static members are stored in
> the PermGen space this memory
> is increased everytime you do a redeploy. This is allright if you just
> update a bundle or two but if you update
> lot's of bundles with lot's of class-definitions you run out of Memory
> here.
> There is one JVM that doesn't have a permGen space it's the JRockit, though
> I don't know if it is still available
> for free as it used to be :)
> One other side note, you might consider updating only the bundle in question
> instead of updating the complete set
> of bundles in a feature when going productive :)
>
> Regards, Achim
>
>
> 2011/12/16 Dan Tran <[hidden email]>
>>
>> Hi Achim
>>
>> 1. I am not really understand what wrapper.on_exit.default=RESTART
>> does, but with wrapper.on_exit.99=RESTART, and If can get my bundle to
>> shutdown karaf with exit code 99. That would be test.
>>
>> 2. Our usage of karaf is having a feature ( with  a bunch of bundles
>> it has many classes 200+ and growing ).  We remotely access karaf via
>> JMX to update our feature feature by having karaf to contact maven
>> repo to pickup the update.
>>    How often do we do the update? quite often during development.
>> But not expect a lots once it get to customer size. This is how we
>> deliver bug fix and added feature.
>>
>> Thanks
>>
>> -Dan
>>
>>
>>
>> On Thu, Dec 15, 2011 at 2:37 PM, Achim Nierbeck <[hidden email]>
>> wrote:
>> > Hi Dan,
>> >
>> > well the first entry on your link allready does what you need :)
>> > Instead of
>> >
>> > wrapper.on_exit.default=SHUTDOWN
>> >
>> >
>> > do a
>> >
>> > wrapper.on_exit.default=RESTART
>> >
>> >
>> > this way your karaf will always restart through the servicewrapper.
>> >
>> > No back to your PermGen leak issue.
>> > Could you give me a hint of what you actually are doing.
>> > If I did understand correctly you use the features service to deploy a
>> > bunch
>> > of bundles.
>> > Now how often do you actually re-deploy this feature set?
>> > How many classes are contained in your bundles?
>> >
>> > regards, Achim
>> >
>> >
>> >
>> > Am 15.12.2011 21:23, schrieb Dan Tran:
>> >
>> >> We should be able to configure wrapper to restart karaf if karaf exits
>> >> with an expected code.  see
>> >> http://wrapper.tanukisoftware.com/doc/english/prop-on-exit-n.html
>> >>
>> >> The question here is how can we do that a karaf's bundle? Can we call
>> >> shutdown with an exit code?
>> >>
>> >> Thanks
>> >>
>> >> -Dan
>> >>
>> >>
>> >> On Thu, Dec 15, 2011 at 9:21 AM, Jean-Baptiste Onofré<[hidden email]>
>> >>  wrote:
>> >>>
>> >>> Thanks for the update Karaf.
>> >>>
>> >>> For the wrapper, you can use respawn (on Unix).
>> >>> For the perm, it looks like a framework "issue" (we have to dig
>> >>> around).
>> >>>
>> >>> Regards
>> >>> JB
>> >>>
>> >>>
>> >>> On 12/15/2011 06:18 PM, Dan Tran wrote:
>> >>>>
>> >>>> Here are notes after playing with dev:restart:
>> >>>>
>> >>>>   1. Permgen still leaks
>> >>>>
>> >>>>   2. Works only in main karaf shell ( ie invoke bin/karaf ).  When I
>> >>>> ran it as a service via wrapper and use bin/client to assess karaf
>> >>>> shell, dev:restart kill my karaf.
>> >>>>
>> >>>> So it seems we need a cold restart.
>> >>>>
>> >>>> -D
>> >>>>
>> >>>> On Thu, Dec 15, 2011 at 9:02 AM, Dan Tran<[hidden email]>
>> >>>>  wrote:
>> >>>>>
>> >>>>> I am using 2.2.x, can I invoke dev:restart in my own bundle? any
>> >>>>> side
>> >>>>> affect on this since my bundle also get restart.
>> >>>>>
>> >>>>> Thanks
>> >>>>>
>> >>>>> -D
>> >>>>>
>> >>>>> On Thu, Dec 15, 2011 at 8:48 AM, Jean-Baptiste
>> >>>>> Onofré<[hidden email]>
>> >>>>>  wrote:
>> >>>>>>
>> >>>>>> It's already possible:
>> >>>>>>
>> >>>>>> - in the console: dev:restart for 2.2.x version, system:restart for
>> >>>>>> trunk
>> >>>>>> (3.0)
>> >>>>>> - for the MBean, it's in org.apache.karaf:type=dev in Karaf 2.2.x
>> >>>>>> (restart()
>> >>>>>> operation), or org.apache.karaf:type=system in Karaf 3.0.0 (trunk,
>> >>>>>> restart()
>> >>>>>> operation)
>> >>>>>>
>> >>>>>> Regards
>> >>>>>> JB
>> >>>>>>
>> >>>>>>
>> >>>>>> On 12/15/2011 05:39 PM, Dan Tran wrote:
>> >>>>>>>
>> >>>>>>>
>> >>>>>>> Looks like the permgen issue is here for a long time.  How about
>> >>>>>>> adding ability for karaf to restart itself ( Hudson, and eclipse
>> >>>>>>> can
>> >>>>>>> do this i think ). May be via webconsole, or JMX
>> >>>>>>>
>> >>>>>>> Eager to hear how we could implement such feature for karaf.
>> >>>>>>>
>> >>>>>>> -D
>> >>>>>>>
>> >>>>>>> ---------- Forwarded message ----------
>> >>>>>>> From: Dan Tran<[hidden email]>
>> >>>>>>> Date: Thu, Dec 15, 2011 at 12:23 AM
>> >>>>>>> Subject: Re: Infamous permgen leak
>> >>>>>>> To: [hidden email]
>> >>>>>>>
>> >>>>>>>
>> >>>>>>> It is about feature to be loaded in and out of karaf dynamically.
>> >>>>>>>  So
>> >>>>>>> I guess is a known issue to 'java', karaf is not an exception :(
>> >>>>>>>
>> >>>>>>> Wonder if ACE can solve this issue
>> >>>>>>>
>> >>>>>>>
>> >>>>>>> -D
>> >>>>>>>
>> >>>>>>> On Thu, Dec 15, 2011 at 12:15 AM, Jean-Baptiste
>> >>>>>>> Onofré<[hidden email]>
>> >>>>>>>  wrote:
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>> Hi Dan,
>> >>>>>>>>
>> >>>>>>>> just to understand your issues:
>> >>>>>>>> - if you talk about the feature service itself, I'm agree that it
>> >>>>>>>> shouldn't
>> >>>>>>>> consume perm
>> >>>>>>>> - but the loaded classes (loaded by the feature service) consumes
>> >>>>>>>> perm,
>> >>>>>>>> and
>> >>>>>>>> it's a normal behavior (it's exactly the same with on Tomcat with
>> >>>>>>>> hot-deployment for instance)
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>> Regards
>> >>>>>>>> JB
>> >>>>>>>>
>> >>>>>>>> On 12/15/2011 08:36 AM, Dan Tran wrote:
>> >>>>>>>>>
>> >>>>>>>>>
>> >>>>>>>>>
>> >>>>>>>>> Hello Karaf Team
>> >>>>>>>>>
>> >>>>>>>>> Each time I reinstall/update a feature at runtime, my karaf
>> >>>>>>>>> loses
>> >>>>>>>>> some
>> >>>>>>>>> permgen. Amount depending on number to classes I have.  Is there
>> >>>>>>>>> any
>> >>>>>>>>> one able to address this issue?
>> >>>>>>>>>
>> >>>>>>>>> Setting JVM to  -XX:+CMSPermGenSweepingEnabled
>> >>>>>>>>> -XX:+CMSClassUnloadingEnabled  doesnot help.
>> >>>>>>>>>
>> >>>>>>>>> -Dan
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>> --
>> >>>>>>>> Jean-Baptiste Onofré
>> >>>>>>>> [hidden email]
>> >>>>>>>> http://blog.nanthrax.net
>> >>>>>>>> Talend - http://www.talend.com
>> >>>>>>
>> >>>>>>
>> >>>>>>
>> >>>>>> --
>> >>>>>> Jean-Baptiste Onofré
>> >>>>>> [hidden email]
>> >>>>>> http://blog.nanthrax.net
>> >>>>>> Talend - http://www.talend.com
>> >>>
>> >>>
>> >>> --
>> >>> Jean-Baptiste Onofré
>> >>> [hidden email]
>> >>> http://blog.nanthrax.net
>> >>> Talend - http://www.talend.com
>> >
>> >
>> >
>> > --
>> > --
>> > *Achim Nierbeck*
>> >
>> >
>> > Apache Karaf<http://karaf.apache.org/>  Committer&  PMC
>> > OPS4J Pax Web<http://wiki.ops4j.org/display/paxweb/Pax+Web/>
>> >  Committer&
>> >  Project Lead
>> > blog<http://notizblog.nierbeck.de/>
>> >
>
>
>
>
> --
>
> Apache Karaf <http://karaf.apache.org/> Committer & PMC
> OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/> Committer &
> Project Lead
> blog <http://notizblog.nierbeck.de/>