quarkus icon indicating copy to clipboard operation
quarkus copied to clipboard

Reuse single resource jars array in the same dirs sub-dirs

Open franz1981 opened this issue 1 year ago • 7 comments

Most of the times jar resources subdirs can share a single value array of resources, saving reallocating it each time.

This could be pushed even further; that's why is still in draft

franz1981 avatar Aug 26 '24 18:08 franz1981

Thanks for your pull request!

Your pull request does not follow our editorial rules. Could you have a look?

  • description should not be empty, describe your intent or provide links to the issues this PR is fixing (using Fixes #NNNNN) or changelogs

This message is automatically generated by a bot.

quarkus-bot[bot] avatar Aug 26 '24 18:08 quarkus-bot[bot]

@gsmet @Sanne this can be pushed further by:

  • avoiding a linked hash set (which is backed by an hashmap :"() in favour of a growable array of the right size
  • using something different from strings as keys

franz1981 avatar Aug 27 '24 08:08 franz1981


:waning_crescent_moon: This workflow status is outdated as a new workflow run has been triggered.


Status for workflow Quarkus CI

This is the status report for running Quarkus CI on commit 44f67b51f67daa0d767ddbd420455b6ead6e0414.

Failing Jobs

Status Name Step Failures Logs Raw logs Build scan
Initial JDK 17 Build Build Failures Logs Raw logs :mag:

You can consult the Develocity build scans.

Failures

:gear: Initial JDK 17 Build #

- Failing: independent-projects/bootstrap/runner 
! Skipped: core/deployment core/runtime devtools/bom-descriptor-json and 873 more

:package: independent-projects/bootstrap/runner

Failed to execute goal net.revelc.code.formatter:formatter-maven-plugin:2.24.1:validate (default) on project quarkus-bootstrap-runner: File '/home/runner/work/quarkus/quarkus/independent-projects/bootstrap/runner/src/main/java/io/quarkus/bootstrap/runner/SerializedApplication.java' has not been previously formatted. Please format file (for example by invoking `mvn -f independent-projects/bootstrap/runner net.revelc.code.formatter:formatter-maven-plugin:2.24.1:format`) and commit before running validation!

quarkus-bot[bot] avatar Aug 27 '24 08:08 quarkus-bot[bot]

This will need a lot of scrutiny and let's not backport it :).

gsmet avatar Aug 27 '24 08:08 gsmet

Still the most expensive number of allocations here are the substrings - which should be just views of the original string, tbh.

franz1981 avatar Aug 27 '24 10:08 franz1981

Most of this processing for the "SerializedApplication" could be moved to build-time. Want to try that?

Sanne avatar Aug 27 '24 20:08 Sanne

Let's sync today for this @Sanne - which, regardless, still contains some logic error which break something

franz1981 avatar Aug 28 '24 05:08 franz1981

I'm closing this since this is going soonish to change :pray:

franz1981 avatar Apr 10 '25 09:04 franz1981

Ok for closing, but I still hope that any follow up could move a good chunk of all the initialization work of those data structures to build time.

Sanne avatar Apr 10 '25 14:04 Sanne