DanielLeens commented on PR #12626: URL: https://github.com/apache/seatunnel/pull/12626#issuecomment-6594274416
Pushed 7f6f1f2c400db5e7805fcadfd1c4c6dc1d124b58 (previous head `cbd95115af8`) for the two blockers in [review 5721235744](https://github.com/apache/seatunnel/pull/12626#pullrequestreview-5721235744): - **Issue 1 (document the new operator switch and correct the scope claim).** - Docs: `CLASSLOADER_SERVICE_SKIP_RELEASED_REFERENCE_CLEANUP` is now documented in the "Class Loader Cache Mode" section (4.5) of `docs/en` and `docs/zh` `engines/zeta/hybrid-cluster-deployment.md` and `separated-cluster-deployment.md`. The note covers when the cleanup runs (non-cache mode, when a job loader is released), what it removes, that only entries owned by the released loader are touched, how to turn it off on the server process, and that turning it off brings back the Metaspace growth. - PR description: it now states that a new environment switch was added. It calls this a partial fix for #12456: it removes the `CodecPool`, `WritableComparator` and MongoDB pruner roots. It lists Hadoop `ReflectionUtils.CONSTRUCTOR_CACHE` as a per-job root that this PR does not handle, and says the reporter has not yet confirmed loader counts on a build with this change. #12456 should therefore stay open after this PR is merged. - **Issue 2 (comments on the remaining cleaner state).** Comments are added to: - the `releasedClassLoaderReferenceCleaner` member of `DefaultClassLoaderService`, including its null meaning; - the three library class-name constants and the three injected class-name fields of `ReleasedClassLoaderReferenceCleaner` (production vs fixture names, and why they are resolved only through the released loader); - `resolveFindLoadedClass`, covering the one-time WARN and the fallback trade-off; - the `isDefinedBy` ownership guard. One correction to earlier comments on #12456: commits `35b9d5e26d2` and `097101c21be` are **not** on `dev`; `git merge-base --is-ancestor` against current `dev` `3244c9504c7` returns false for both. They exist only on this PR branch. The cleanup takes effect only after this PR is merged. Only `./mvnw spotless:apply` was run locally on `seatunnel-engine-core`. Compilation and tests are verified by the fork Build for the new head. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
