Could you please raise a JIRA issue at
https://issues.apache.org/jira/browse/KARAF ?

On Thu, Jul 8, 2010 at 00:18, Chris Blunck <[email protected]> wrote:
> It would also be beneficial to know if it's possible to avoid caching
> feature files.
>
> It's quite common for someone to change the configuration section of a
> feature file in the deploy directory and restart only to have their changes
> ignored because the feature file has been cached.  Having a startup flag
> that says "don't cache features" that the bundle deployer would honor would
> be most helpful.
>
>
> -c
>
> On Wed, Jul 7, 2010 at 6:12 PM, Matt Tennant <[email protected]> wrote:
>
>> I was wrong about what org.osgi.framework.storage.clean=onFirstInit was
>> doing.  It turns out that it is deleting the entire bundle cache directory
>> and starting from scratch.  I thought it was simply removing unused files
>> and directories, which is less useful to me.  I guess I was doing some
>> wishful thinking.
>>
>> So I guess I should ask a new question.  Is there support for what I
>> thought that option was doing?  Basically, I want the caches for bundles
>> that are still in use to survive, but anything else, especially caches for
>> uninstalled bundles, to get removed.
>>
>> Some background: I cannot just nuke the bundle cache directory because
>> some bundles have been previously installed from remote URLs, and I cannot
>> repeat that operation every time the framework starts up.  Bundles
>> previously installed this way must be preserved.  Also, a few times we
>> have seen bundle cache directories get extremely bloated with caches for
>> bundles that are no longer installed.  On an embedded device this is
>> catastrophic.  Perhaps PackageAdmin.refreshPackages will solve this
>> problem, but it's hard to test for sure because the problem has not been
>> easily repeated.  I have a workaround the looks for these directories
>> manually, but the workaround is very Felix-specific and I try to avoid
>> that sort of thing.
>>
>> Thanks for any help,
>> Matt
>>
>> -----Original Message-----
>> From: Matt Tennant [mailto:[email protected]]
>> Sent: Wednesday, July 07, 2010 2:02 PM
>> To: [email protected]
>> Subject: RE: bundle cache version directories
>>
>> Hi all,
>>
>> I have a follow up question from this thread I started some time ago.
>> Since then, I have been trying out the following property and value:
>> org.osgi.framework.storage.clean=onFirstInit
>>
>> Which appears to work well, and removes extraneous directories and files
>> from my bundle cache directory shortly after startup.  Note that it
>> doesn't matter whether these directories and files were originally created
>> by Felix.  If they are in the bundle cache directory, they are removed.
>>
>> I also tried calling refreshPackages(null) on the PackageAdmin service
>> object at runtime.  When I do this, the message "FrameworkEvent PACKAGES
>> REFRESHED" is logged.  It may be doing something, but the behavior is not
>> the same as with the org.osgi.framework.storage.clean property.
>> Extraneous directories and files are not removed.
>>
>> I was expecting the behavior to be the same between the two approaches.
>> Can somebody please explain the distinction?  Is there runtime access to
>> the behavior that org.osgi.framework.storage.clean exhibits?
>>
>> In case there is some confusion, I am not worrying about precisely the
>> same problem as in the original thread, but instead solving a problem
>> where occasionally old bundle caches are present for bundles that are no
>> longer in use.
>>
>> Thank you,
>> Matt
>>
>> -----Original Message-----
>> From: Richard S. Hall [mailto:[email protected]]
>> Sent: Thursday, June 03, 2010 12:00 PM
>> To: [email protected]
>> Subject: Re: bundle cache version directories
>>
>> On 6/3/10 14:01, Matt Tennant wrote:
>> > That was a useful read, thank you.  It leaves me with just one question:
>> > what triggers a framework refresh?  (other than a startup/shutdown)
>> >
>>
>> Explicitly calling PackageAdmin.refreshPackages(), which is done by
>> getting the PackageAdmin service or the Felix shell provides a "refresh"
>> command.
>>
>> -> richard
>>
>> >  From this point onward I will make a note of whether I ever see
>> multiple
>> > version directories at a point in time when I should not.
>> >
>> > Thanks!
>> > Matt
>> >
>> > -----Original Message-----
>> > From: Richard S. Hall [mailto:[email protected]]
>> > Sent: Thursday, June 03, 2010 5:50 AM
>> > To: [email protected]
>> > Subject: Re: bundle cache version directories
>> >
>> > On 6/2/10 19:20, Matt Tennant wrote:
>> >
>> >> Hi all,
>> >>
>> >>
>> >>
>> >> I have a question about the "versionX.X" directories inside the Felix
>> >> bundle cache.  I am using Felix 2.0.0, and I often see something like
>> >>
>> > the
>> >
>> >> following in my bundle cache directory:
>> >>
>> >>
>> >>
>> >>
>> >>
>> >>> ls -l
>> >>>
>> >>>
>> >> bundle0
>> >>
>> >> bundle1
>> >>
>> >> ...
>> >>
>> >>
>> >>
>> >>
>> >>
>> >>> cd bundle0
>> >>>
>> >>>
>> >>
>> >>
>> >>> ls -l
>> >>>
>> >>>
>> >> version0.1
>> >>
>> >> version0.0
>> >>
>> >> bundle.location
>> >>
>> >> bundle.startlevel
>> >>
>> >> bundle.lastmodified
>> >>
>> >> bundle.id
>> >>
>> >> bundle.state
>> >>
>> >>
>> >>
>> >>
>> >>
>> >>> ls -l version0.0
>> >>>
>> >>>
>> >> bundle.jar
>> >>
>> >>
>> >>
>> >>> ls -l version0.1
>> >>>
>> >>>
>> >> bundle.jar
>> >>
>> >>
>> >>
>> >> What I mean to be pointing out here are the two "bundle.jar" files in
>> >>
>> > two
>> >
>> >> different "versionX.X" directories in the cache area for one bundle.
>> >>
>> > What
>> >
>> >> is the reason that I might get more than one of these?  How can I avoid
>> >> that?  I have limited space on the device our product runs on, and even
>> >> the size of these jar files can make a difference.
>> >>
>> >>
>> >>
>> >> Note that I am using the autodeploy feature with actions
>> >> "install,start,update".  Sometimes the original bundle jars in the
>> >> autodeploy directory change from one run to the next.
>> >>
>> >>
>> > You might want to read:
>> >
>> >
>> http://felix.apache.org/site/apache-felix-framework-bundle-cache.html
>> >
>> > Typically, what you are seeing is the result of doing updates. However,
>> > typically the extra JAR files should be deleted after a refresh.
>> >
>> > Starting with "install,start,update" causes the update, but generally
>> > i'd assume you'd autorefresh during startup so you wouldn't see
>> > additional JAR files. Perhaps you could verify that refreshing is
>> > deleting the JAR files. If so, you could verify that they are
>> > automatically getting deleted on startup.
>> >
>> > By and large, after your framework starts I'd expect there to be no
>> > additional JAR files and after it stops I'd expect there to be no
>> > additional JAR files too. At run time, it just depends on whether you've
>> > updated and not refreshed yet.
>> >
>> > ->  richard
>> >
>> >
>> >>
>> >> Thanks,
>> >>
>> >> Matt
>> >>
>> >>
>> >>
>> >>
>> >>
>> >>
>> > ---------------------------------------------------------------------
>> > To unsubscribe, e-mail: [email protected]
>> > For additional commands, e-mail: [email protected]
>> >
>> >
>> > ---------------------------------------------------------------------
>> > To unsubscribe, e-mail: [email protected]
>> > For additional commands, e-mail: [email protected]
>> >
>> >
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [email protected]
>> For additional commands, e-mail: [email protected]
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [email protected]
>> For additional commands, e-mail: [email protected]
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [email protected]
>> For additional commands, e-mail: [email protected]
>>
>>
>



-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/
------------------------
Open Source SOA
http://fusesource.com

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to