Skip to content

Speed up jnlp launch by 58%#287

Merged
mgaffigan merged 3 commits into
OpenIntegrationEngine:mainfrom
mgaffigan:feat/avoid-ext-jnlp
Jun 24, 2026
Merged

Speed up jnlp launch by 58%#287
mgaffigan merged 3 commits into
OpenIntegrationEngine:mainfrom
mgaffigan:feat/avoid-ext-jnlp

Conversation

@mgaffigan

@mgaffigan mgaffigan commented Apr 5, 2026

Copy link
Copy Markdown
Contributor

Speeds launch time by not requiring multiple round-trips for each plugin. Classpath with ballista remained identical. No obvious benefit to the historical design - presumed to be some Java Security Manager pipe dream.

Scenario Before After % change
Cold cache, 100ms latency 8.9s 3.7s ↓58%
Warm cache, 100ms latency 5.8s 0.7s ↓87%

Mildly related: #197

@github-actions

github-actions Bot commented Apr 5, 2026

Copy link
Copy Markdown

Test Results

  111 files  ±0    214 suites  ±0   6m 59s ⏱️ + 1m 12s
  651 tests  - 3    651 ✅  - 3  0 💤 ±0  0 ❌ ±0 
1 302 runs   - 6  1 302 ✅  - 6  0 💤 ±0  0 ❌ ±0 

Results for commit f6e8def. ± Comparison against base commit 8c1111b.

This pull request removes 3 tests.
com.mirth.connect.server.servlets.WebStartServletTest ‑ testDoGetExtension
com.mirth.connect.server.servlets.WebStartServletTest ‑ testDoGetExtensionModifiedURL
com.mirth.connect.server.servlets.WebStartServletTest ‑ testDoGetExtensionQueryParams

♻️ This comment has been updated with latest results.

@mgaffigan mgaffigan marked this pull request as ready for review April 5, 2026 05:02
@mgaffigan mgaffigan changed the title Embed extension jnlps in main to avoid RTT Speed up client launch by 58% Apr 5, 2026
@mgaffigan mgaffigan changed the title Speed up client launch by 58% Speed up jnlp launch by 58% Apr 5, 2026
@jonbartels jonbartels added this to the Next Release milestone May 27, 2026
@kpalang kpalang requested review from a team, NicoPiel, gibson9583, jonbartels, kayyagari, pacmano1, ssrowe and tonygermano and removed request for a team June 17, 2026 06:55

@tonygermano tonygermano left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks fine at a glance. I think the only thing we're really losing is the title and vendor information for the individual extensions.

Does this still allow launching from MCAL?

@mgaffigan

Copy link
Copy Markdown
Contributor Author

Looks fine at a glance. I think the only thing we're really losing is the title and vendor information for the individual extensions.

The JNLP data is not shown anywhere that I can find in any of the launchers I've tested. The vendor information still shows normally in Extensions.

Does this still allow launching from MCAL?

It works fine, but MCAL is broken in main - I recommend we drop support entirely.

Signed-off-by: Mitch Gaffigan <mitch.gaffigan@comcast.net>
Signed-off-by: Mitch Gaffigan <mitch.gaffigan@comcast.net>
Signed-off-by: Mitch Gaffigan <mitch.gaffigan@comcast.net>
@mgaffigan mgaffigan force-pushed the feat/avoid-ext-jnlp branch from 77ad485 to f6e8def Compare June 24, 2026 14:18
@mgaffigan mgaffigan merged commit 88c8ee5 into OpenIntegrationEngine:main Jun 24, 2026
4 checks passed
@mgaffigan mgaffigan deleted the feat/avoid-ext-jnlp branch June 24, 2026 15:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants