Uploaded image for project: 'ACE'
  1. ACE
  2. ACE-482

Uploading an invalid bundle to ACE OBR, makes it unresponsive

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • 2.0.1
    • 2.1.0
    • OBR
    • None

    Description

      Using BndTools and the ACE Repo plugin, I uploaded the bundle com.vaadin.shared.deps:1.0.3. This bundle is malformed, as its manifest contains the version string 15.0.rebased, which is not a valid OSGi version.

      This results in the ACE server throwing and exception (see below) and not accepting any new uploads.

      The OBR should probably cleanly reject invalid bundles.

      Error in /home/virtual/ACE/apache-ace-2.0.1-bin/server-allinone/store : invalid version "15.0.rebased": non-numeric "rebased"
      java.lang.IllegalArgumentException: invalid version "15.0.rebased": non-numeric "rebased"
      at org.osgi.framework.Version.parseInt(Version.java:170)
      at org.osgi.framework.Version.<init>(Version.java:134)
      at org.osgi.impl.bundle.obr.resource.VersionRange.<init>(VersionRange.java:52)
      at org.osgi.impl.bundle.obr.resource.ManifestEntry.addParameter(ManifestEntry.java:97)
      at org.osgi.impl.bundle.obr.resource.Manifest.getEntries(Manifest.java:215)
      at org.osgi.impl.bundle.obr.resource.Manifest.entry(Manifest.java:130)
      at org.osgi.impl.bundle.obr.resource.Manifest.parse(Manifest.java:78)
      at org.osgi.impl.bundle.obr.resource.Manifest.<init>(Manifest.java:46)
      at org.osgi.impl.bundle.obr.resource.BundleInfo.<init>(BundleInfo.java:63)
      at org.osgi.impl.bundle.bindex.Index.recurse(Index.java:200)
      at org.osgi.impl.bundle.bindex.Index.recurse(Index.java:191)
      at org.osgi.impl.bundle.bindex.Index.recurse(Index.java:191)
      at org.osgi.impl.bundle.bindex.Index.recurse(Index.java:191)
      at org.osgi.impl.bundle.bindex.Index.recurse(Index.java:191)
      at org.osgi.impl.bundle.bindex.Index.main(Index.java:114)
      at org.apache.ace.obr.metadata.bindex.BIndexMetadataGenerator.generateMetadata(BIndexMetadataGenerator.java:45)
      at org.apache.ace.obr.storage.file.BundleFileStore.synchronizeMetadata(BundleFileStore.java:73)
      at org.apache.ace.obr.storage.file.BundleFileStore.get(BundleFileStore.java:81)
      at org.apache.ace.obr.servlet.BundleServlet.doGet(BundleServlet.java:202)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
      at org.apache.ace.obr.servlet.BundleServlet.service(BundleServlet.java:289)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
      at org.apache.felix.http.base.internal.handler.ServletHandler.doHandle(ServletHandler.java:96)
      at org.apache.felix.http.base.internal.handler.ServletHandler.handle(ServletHandler.java:79)
      at org.apache.felix.http.base.internal.dispatch.ServletPipeline.handle(ServletPipeline.java:42)
      at org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:49)
      at org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:33)
      at org.apache.felix.http.base.internal.dispatch.FilterPipeline.dispatch(FilterPipeline.java:48)
      at org.apache.felix.http.base.internal.dispatch.Dispatcher.dispatch(Dispatcher.java:39)
      at org.apache.felix.http.base.internal.DispatcherServlet.service(DispatcherServlet.java:67)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
      at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:654)
      at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:445)
      at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:225)
      at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1044)
      at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:372)
      at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:189)
      at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:978)
      at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
      at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:255)
      at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
      at org.eclipse.jetty.server.Server.handle(Server.java:369)
      at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:486)
      at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:933)
      at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:995)
      at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:644)
      at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)
      at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
      at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:668)
      at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
      at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
      at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
      at java.lang.Thread.run(Thread.java:745)
      Caused by: java.lang.NumberFormatException: For input string: "rebased"
      at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
      at java.lang.Integer.parseInt(Integer.java:492)
      at java.lang.Integer.parseInt(Integer.java:527)
      at org.osgi.framework.Version.parseInt(Version.java:168)
      ... 52 more

      Attachments

        Activity

          People

            marrs Marcel Offermans
            bulu Philipp Buluschek
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: