Uploaded image for project: 'Felix'
  1. Felix
  2. FELIX-819

unable to rename / delete bundle cache location on update or uninstall

VotersWatch issueWatchersLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • framework-1.4.1
    • framework-1.4.1
    • Framework
    • None
    • Windows (XP Pro)

    Description

      Hello all,

      It looks like the revision.location is missing from the bundle cache after the shutdown purge. Steps:

      • install bundle
      • update bundle
      • shutdown

      The next start shows a:
      ERROR: org.apache.felix.framework.cache.BundleCache: Error creating archive. (java.io.FileNotFoundException: .\felixcache\bundle24\version2.0\revision.location (The system cannot find the file specified))

      Looking in the directory, the file is not there.

      Stepping through the code shows that the BundleArchive.purge() attempts to rename the last bundle revision to a fresh one... except that the File.rename is not platform independent (it fails on windows quite often).
      When BundleCache.getSecureAction().renameFile(revisionDir, currentDir) returns false (rename failed), createRevisionFromLocation follows and does not include a new revision.location file.

      Maybe a call to setRevisionLocation() is to be made after createRevisionFromLocation (BundleArchive:866)? I'll try that out...

      Attachments

        1. test-bundles.zip
          9 kB
          Walid Joseph Gedeon

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            rickhall Richard S. Hall
            wgedeon Walid Joseph Gedeon
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment