You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@karaf.apache.org by Dan Tran <da...@gmail.com> on 2011/12/15 17:39:00 UTC

Ability to self restart karaf [WAS] Infamous permgen leak

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 <da...@gmail.com>
Date: Thu, Dec 15, 2011 at 12:23 AM
Subject: Re: Infamous permgen leak
To: user@karaf.apache.org


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é <jb...@nanthrax.net> 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é
> jbonofre@apache.org
> http://blog.nanthrax.net
> Talend - http://www.talend.com

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

Posted by Achim Nierbeck <bc...@googlemail.com>.
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 <da...@gmail.com>

> 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 <da...@gmail.com>
> Date: Thu, Dec 15, 2011 at 12:23 AM
> Subject: Re: Infamous permgen leak
> To: user@karaf.apache.org
>
>
> 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é <jb...@nanthrax.net>
> 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é
> > jbonofre@apache.org
> > 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/>

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

Posted by Dan Tran <da...@gmail.com>.
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
<bc...@googlemail.com> 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 <da...@gmail.com>
>>
>> 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 <bc...@googlemail.com>
>> 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é<jb...@nanthrax.net>
>> >>  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<da...@gmail.com>
>> >>>>  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é<jb...@nanthrax.net>
>> >>>>>  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<da...@gmail.com>
>> >>>>>>> Date: Thu, Dec 15, 2011 at 12:23 AM
>> >>>>>>> Subject: Re: Infamous permgen leak
>> >>>>>>> To: user@karaf.apache.org
>> >>>>>>>
>> >>>>>>>
>> >>>>>>> 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é<jb...@nanthrax.net>
>> >>>>>>>  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é
>> >>>>>>>> jbonofre@apache.org
>> >>>>>>>> http://blog.nanthrax.net
>> >>>>>>>> Talend - http://www.talend.com
>> >>>>>>
>> >>>>>>
>> >>>>>>
>> >>>>>> --
>> >>>>>> Jean-Baptiste Onofré
>> >>>>>> jbonofre@apache.org
>> >>>>>> http://blog.nanthrax.net
>> >>>>>> Talend - http://www.talend.com
>> >>>
>> >>>
>> >>> --
>> >>> Jean-Baptiste Onofré
>> >>> jbonofre@apache.org
>> >>> 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/>

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

Posted by Achim Nierbeck <bc...@googlemail.com>.
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 <da...@gmail.com>

> 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 <bc...@googlemail.com>
> 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é<jb...@nanthrax.net>
> >>  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<da...@gmail.com>
>  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é<
> jb@nanthrax.net>
> >>>>>  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<da...@gmail.com>
> >>>>>>> Date: Thu, Dec 15, 2011 at 12:23 AM
> >>>>>>> Subject: Re: Infamous permgen leak
> >>>>>>> To: user@karaf.apache.org
> >>>>>>>
> >>>>>>>
> >>>>>>> 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é<jb...@nanthrax.net>
> >>>>>>>  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é
> >>>>>>>> jbonofre@apache.org
> >>>>>>>> http://blog.nanthrax.net
> >>>>>>>> Talend - http://www.talend.com
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>> --
> >>>>>> Jean-Baptiste Onofré
> >>>>>> jbonofre@apache.org
> >>>>>> http://blog.nanthrax.net
> >>>>>> Talend - http://www.talend.com
> >>>
> >>>
> >>> --
> >>> Jean-Baptiste Onofré
> >>> jbonofre@apache.org
> >>> 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/>

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

Posted by Dan Tran <da...@gmail.com>.
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 <bc...@googlemail.com> 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é<jb...@nanthrax.net>
>>  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<da...@gmail.com>    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é<jb...@nanthrax.net>
>>>>>  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<da...@gmail.com>
>>>>>>> Date: Thu, Dec 15, 2011 at 12:23 AM
>>>>>>> Subject: Re: Infamous permgen leak
>>>>>>> To: user@karaf.apache.org
>>>>>>>
>>>>>>>
>>>>>>> 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é<jb...@nanthrax.net>
>>>>>>>  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é
>>>>>>>> jbonofre@apache.org
>>>>>>>> http://blog.nanthrax.net
>>>>>>>> Talend - http://www.talend.com
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Jean-Baptiste Onofré
>>>>>> jbonofre@apache.org
>>>>>> http://blog.nanthrax.net
>>>>>> Talend - http://www.talend.com
>>>
>>>
>>> --
>>> Jean-Baptiste Onofré
>>> jbonofre@apache.org
>>> 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/>
>

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

Posted by Achim Nierbeck <bc...@googlemail.com>.
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é<jb...@nanthrax.net>  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<da...@gmail.com>    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é<jb...@nanthrax.net>
>>>>   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<da...@gmail.com>
>>>>>> Date: Thu, Dec 15, 2011 at 12:23 AM
>>>>>> Subject: Re: Infamous permgen leak
>>>>>> To: user@karaf.apache.org
>>>>>>
>>>>>>
>>>>>> 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é<jb...@nanthrax.net>
>>>>>>   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é
>>>>>>> jbonofre@apache.org
>>>>>>> http://blog.nanthrax.net
>>>>>>> Talend - http://www.talend.com
>>>>>
>>>>>
>>>>> --
>>>>> Jean-Baptiste Onofré
>>>>> jbonofre@apache.org
>>>>> http://blog.nanthrax.net
>>>>> Talend - http://www.talend.com
>>
>> --
>> Jean-Baptiste Onofré
>> jbonofre@apache.org
>> 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/>


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

Posted by Dan Tran <da...@gmail.com>.
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é <jb...@nanthrax.net> 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<da...@gmail.com>  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é<jb...@nanthrax.net>
>>>  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<da...@gmail.com>
>>>>> Date: Thu, Dec 15, 2011 at 12:23 AM
>>>>> Subject: Re: Infamous permgen leak
>>>>> To: user@karaf.apache.org
>>>>>
>>>>>
>>>>> 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é<jb...@nanthrax.net>
>>>>>  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é
>>>>>> jbonofre@apache.org
>>>>>> http://blog.nanthrax.net
>>>>>> Talend - http://www.talend.com
>>>>
>>>>
>>>>
>>>> --
>>>> Jean-Baptiste Onofré
>>>> jbonofre@apache.org
>>>> http://blog.nanthrax.net
>>>> Talend - http://www.talend.com
>
>
> --
> Jean-Baptiste Onofré
> jbonofre@apache.org
> http://blog.nanthrax.net
> Talend - http://www.talend.com

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

Posted by Jean-Baptiste Onofré <jb...@nanthrax.net>.
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<da...@gmail.com>  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é<jb...@nanthrax.net>  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<da...@gmail.com>
>>>> Date: Thu, Dec 15, 2011 at 12:23 AM
>>>> Subject: Re: Infamous permgen leak
>>>> To: user@karaf.apache.org
>>>>
>>>>
>>>> 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é<jb...@nanthrax.net>
>>>>   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é
>>>>> jbonofre@apache.org
>>>>> http://blog.nanthrax.net
>>>>> Talend - http://www.talend.com
>>>
>>>
>>> --
>>> Jean-Baptiste Onofré
>>> jbonofre@apache.org
>>> http://blog.nanthrax.net
>>> Talend - http://www.talend.com

-- 
Jean-Baptiste Onofré
jbonofre@apache.org
http://blog.nanthrax.net
Talend - http://www.talend.com

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

Posted by Dan Tran <da...@gmail.com>.
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 <da...@gmail.com> 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é <jb...@nanthrax.net> 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<da...@gmail.com>
>>> Date: Thu, Dec 15, 2011 at 12:23 AM
>>> Subject: Re: Infamous permgen leak
>>> To: user@karaf.apache.org
>>>
>>>
>>> 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é<jb...@nanthrax.net>
>>>  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é
>>>> jbonofre@apache.org
>>>> http://blog.nanthrax.net
>>>> Talend - http://www.talend.com
>>
>>
>> --
>> Jean-Baptiste Onofré
>> jbonofre@apache.org
>> http://blog.nanthrax.net
>> Talend - http://www.talend.com

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

Posted by Jean-Baptiste Onofré <jb...@nanthrax.net>.
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é<jb...@nanthrax.net>  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<da...@gmail.com>
>>> Date: Thu, Dec 15, 2011 at 12:23 AM
>>> Subject: Re: Infamous permgen leak
>>> To: user@karaf.apache.org
>>>
>>>
>>> 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é<jb...@nanthrax.net>
>>>   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é
>>>> jbonofre@apache.org
>>>> http://blog.nanthrax.net
>>>> Talend - http://www.talend.com
>>
>>
>> --
>> Jean-Baptiste Onofré
>> jbonofre@apache.org
>> http://blog.nanthrax.net
>> Talend - http://www.talend.com

-- 
Jean-Baptiste Onofré
jbonofre@apache.org
http://blog.nanthrax.net
Talend - http://www.talend.com

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

Posted by Dan Tran <da...@gmail.com>.
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é <jb...@nanthrax.net> 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<da...@gmail.com>
>> Date: Thu, Dec 15, 2011 at 12:23 AM
>> Subject: Re: Infamous permgen leak
>> To: user@karaf.apache.org
>>
>>
>> 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é<jb...@nanthrax.net>
>>  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é
>>> jbonofre@apache.org
>>> http://blog.nanthrax.net
>>> Talend - http://www.talend.com
>
>
> --
> Jean-Baptiste Onofré
> jbonofre@apache.org
> http://blog.nanthrax.net
> Talend - http://www.talend.com

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

Posted by Jean-Baptiste Onofré <jb...@nanthrax.net>.
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<da...@gmail.com>
> Date: Thu, Dec 15, 2011 at 12:23 AM
> Subject: Re: Infamous permgen leak
> To: user@karaf.apache.org
>
>
> 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é<jb...@nanthrax.net>  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é
>> jbonofre@apache.org
>> http://blog.nanthrax.net
>> Talend - http://www.talend.com

-- 
Jean-Baptiste Onofré
jbonofre@apache.org
http://blog.nanthrax.net
Talend - http://www.talend.com