Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
util-1.1.1
-
None
Description
We have performances issues on application startup. It takes a while to install all the bundles of a subsystem. After a quick look with JProfiler, we saw that the SpecialZipInputStream.read() was invoked 44 millions times during startup.
We're using the Felix framework and the BundleCache.copyStreamToFile calls the method read(byte[] b) from the InputStream. Unfortunately, the method read(byte[] b) and read(byte[] b, int off, int len) are not overriden by the SpecialZipInputStream (thus we don't buffer the read).
Completing the decoration in the SpecialZipInputStream solved this problem and divided the startup time by two.
I've made the pull request with the requested change https://github.com/apache/aries/pull/55
Attachments
Issue Links
- is related to
-
ARIES-1565 Performance Improvement: unpack subsystem artifacts to tmp folder to avoid directly reading from zip archive
- Resolved
- links to