Skip to content

doc(QTDI-2853): Document classloader and runtime JVM properties - #1293

Open
thboileau wants to merge 2 commits into
masterfrom
thboileau/QTDI-2853_document_classloader_jvm_properties
Open

thboileau wants to merge 2 commits into
masterfrom
thboileau/QTDI-2853_document_classloader_jvm_properties

Conversation

@thboileau

Copy link
Copy Markdown
Contributor

Requirements

  • Any code change adding any logic MUST be tested through a unit test executed with the default build — N/A, documentation only
  • Any API addition MUST be done with a documentation update if relevant — this PR is the documentation update

Why this PR is needed?

The classloader JVM properties (talend.component.manager.classloader.container.classesAndPackages and ...parentResources) and the other component-manager runtime properties were not documented. The checkpoint page also used the wrong property name. Jira: QTDI-2853.

What does this PR adds (design/code thoughts)?

Docs only (Antora, documentation module); property names, defaults and match semantics were checked against the code (ComponentManager, MavenRepositoryDefaultResolver, Mode, ConfigurableClassLoader, EnhancedObjectInputStream).

  • component-loading.adoc: new "Classloader JVM properties" section (prefix vs contains matching, comma-separated, additive to built-in defaults, -D example, isolation caution).
  • ref-jvm-properties.adoc (new): reference of the other runtime properties (purpose, default, type), linked from the reference nav.
  • nav.adoc: add the new page.
  • component-checkpoint.adoc: talend.checkpoint.enable → talend.checkpoint.enabled (matches ComponentManager/InputImpl).

Antora build was not run locally; CI docs build will confirm.

AI contribution metrics

  • Code Generation % (this PR): 100% (80/80 changed lines)
  • Code Generation % (ticket-wide cumulative): 100%
  • Technical Design % (ticket-wide cumulative): ~15% (estimated word-level diff, 1 revision)

AI generated code

https://internal.qlik.dev/general/ways-of-working/code-reviews/#guidelines-for-ai-generated-code

  • this PR has been written with the help of GitHub Copilot or another generative AI tool

Add the classloader container properties to the component loading page, a JVM properties reference page, and fix the checkpoint property name.

Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
@thboileau

Copy link
Copy Markdown
Contributor Author

Scope & Design Review — QTDI-2853 (round 1: APPROVED)

No Blocker or Major findings. 2 Minor (non-blocking):

# Severity File Description
1 MINOR ref-jvm-properties.adoc Antora build not run locally; the xref anchor #_classloader_jvm_properties relies on default Asciidoctor id generation. CI docs build will confirm.
2 MINOR component-loading.adoc classesAndPackages values are not trimmed in code (split on ","), so spaces after commas would break matching; the example has none. Optional follow-up note.

Signed: Claude Sonnet 5.5

@thboileau

Copy link
Copy Markdown
Contributor Author

Code Review / Compliance — QTDI-2853

Reviewed 4 files (docs only): nav.adoc, component-checkpoint.adoc, component-loading.adoc, ref-jvm-properties.adoc.

Checks: valid xrefs; property names, defaults and match semantics verified against ComponentManager, MavenRepositoryDefaultResolver, Mode, ConfigurableClassLoader, EnhancedObjectInputStream, TomcatSetup; consistent terminology; no Java/test changes; commit message follows doc(QTDI-2853): … with the AI co-author trailer.

Severity Count
Critical 0
Warning 0
Info 1

Info: Antora build not run locally; rely on CI.

Signed: Claude Sonnet 5.5

@sonar-rnd

sonar-rnd Bot commented Oct 16, 2026

Copy link
Copy Markdown

Comment thread documentation/src/main/antora/modules/ROOT/nav.adoc

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟡 Changes recommended

Two documentation inaccuracies or omissions remain in the JVM properties reference page.

1 open issue
What changed in this PR

This documentation-only pull request expands Antora documentation for Component Kit JVM properties, classloader configuration, runtime settings, and checkpoint activation.

Changes:

  • Documents classloader extension properties, matching semantics, defaults, and isolation considerations.
  • Adds and links a JVM properties reference page.
  • Corrects talend.checkpoint.enable to talend.checkpoint.enabled.
  • Adds the Vault readiness configuration to generated server documentation.
File Description Review comments
documentation/​src/​main/​antora/​modules/​ROOT/​pages/​ref-jvm-properties.adoc Adds the JVM properties reference tables. Nit (4 votes): Document that talend.component.manager.m2.settings requires talend.component.manager.user.m2.fallback to be enabled, including the related settings/environment discovery behavior. Nit (1 vote): Describe the true-value behavior for talend.checkpoint.enabled rather than attributing it specifically to Boolean.getBoolean.
documentation/​src/​main/​antora/​modules/​ROOT/​pages/​component-loading.adoc Documents classloader JVM properties, matching behavior, examples, and isolation considerations. No review comments.
documentation/​src/​main/​antora/​modules/​ROOT/​pages/​component-checkpoint.adoc Corrects the checkpoint property name and example. No review comments.
documentation/​src/​main/​antora/​modules/​ROOT/​pages/​_partials/​generated_server-configuration.adoc Documents the Vault readiness configuration property. No review comments.
documentation/​src/​main/​antora/​modules/​ROOT/​nav.adoc Adds the JVM properties page to the reference navigation. No review comments.

Review effort: Lite

Comment on lines +32 to +33
| `talend.component.manager.m2.settings` | path | _none_ | Maven `settings.xml` read to find the `localRepository` when `talend.component.manager.m2.repository` is not set.
| `talend.component.manager.user.m2.fallback` | boolean | `false` | When no repository was found by the other mechanisms, falls back to `${user.home}/.m2/repository`.

This branch has not been deployed

No deployments
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.

2 participants