Skip to content

Add dependency-closed OpenHouse Java runtime v2 - #653

Draft
cbb330 wants to merge 1 commit into
linkedin:mainfrom
cbb330:chbush/vendor-openhouse-runtime
Draft

Add dependency-closed OpenHouse Java runtime v2#653
cbb330 wants to merge 1 commit into
linkedin:mainfrom
cbb330:chbush/vendor-openhouse-runtime

Conversation

@cbb330

@cbb330 cbb330 commented Jul 23, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Add openhouse-java-runtime-v2, a fully relocated fat JAR intended for dependency-sensitive consumers such as Trino.
  • Preserve legacy Java and Spark runtime class inventories and mark legacy Java runtimes as deprecated for new consumers.
  • Isolate logging behind a private relocated SLF4J 2 stack with a custom System.Logger provider, compatibility bridges, and fail-closed shading checks.

Testing Done

  • Unit tests added/updated

  • Integration tests pass

  • Manual testing performed

  • ./gradlew :integrations:java:iceberg-1.5:openhouse-java-runtime-v2:test --tests com.linkedin.openhouse.logging.SystemLoggerServiceProviderTest -x CopyGitHooksTask

  • ./gradlew :integrations:java:iceberg-1.5:openhouse-java-runtime-v2:verifyShadingPolicy -x CopyGitHooksTask

  • Built downstream li-openhouse-java-runtime-v2 against this OSS artifact and passed its isolated-provider test.

  • Passed Trino's TestIcebergTrinoRestCatalogConnectorSmokeTest: 72 tests, 0 failures, 0 errors, 3 skipped.

Dependencies

  • Downstream draft PRs in li-openhouse and Trino will consume this artifact once published.

Made with Cursor

Publish a fully relocated Java runtime for consumers such as Trino while
preserving the legacy runtime artifacts unchanged. Isolate all logging behind a
private SLF4J 2 stack backed by System.Logger, enforce class/resource closure,
and test the completed fat JAR through an isolated classloader.

Co-authored-by: Cursor <cursoragent@cursor.com>
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.

1 participant