Repository navigation
feat(loader): migrate CDC to Flink 2.2 on Java 17 - #786
Merged
Merged
Conversation
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## master #786 +/- ##
============================================
+ Coverage 46.19% 46.61% +0.42%
- Complexity 4373 4441 +68
============================================
Files 602 602
Lines 29087 29229 +142
Branches 3381 3419 +38
============================================
+ Hits 13436 13625 +189
+ Misses 14388 14328 -60
- Partials 1263 1276 +13 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
MrJs133
previously approved these changes
Oct 5, 2026
19 of 72 tasks
imbajin
added a commit
to hugegraph/hugegraph-toolchain
that referenced
this pull request
Oct 7, 2026
Reject unsupported CSV and TEXT headers before Spark initialization. Cover driver preflight ordering and supported mappings in the existing suite. Document unique cluster mapping basenames and native localization errors. Record the merge dependency on the shared parser fixes in PR apache#786.
This was referenced Oct 7, 2026
zyxxoo
previously approved these changes
Oct 8, 2026
Pengzna
previously approved these changes
Oct 8, 2026
- adapt CDC loading to Sink V2 on Java 17 - preserve same-identity updates and reject identity changes - retain packaged recovery and class-loading validation - include Flink runtime packaging and license inventory
imbajin
force-pushed
the
java17-flink-final
branch
from
October 8, 2026 12:14
20f016d to
193843a
Compare
- recover stale event bases using the current PR merge - verify canonical branch, merge parents and source head - preserve native stack checks and final gate freshness - cover ordinary snapshots and rejected stale inputs
- select floating consumer coordinates from the SDK manifest - preserve source, hash and local-install checks for packaging - retain the fixed candidate version outside compatibility CI - verify Maven version selection and separate CLI operations
- check missing shared options through the Spark launcher - remove the replaced legacy CDC parser assertion - verify native Flink exit status propagation
zyxxoo
approved these changes
Oct 9, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The CDC Loader moves from the legacy Flink integration to Java 17 and Sink V2. Snapshot, same-identity updates and deletes retain ordered processing through Loader builders; identity-changing UPDATE events now fail before any mapping writes or deletes graph data.
Core versions: Java 17, Flink 2.2.1, and Flink CDC 3.6.
Before → after: validate every active mapping for an UPDATE before starting graph mutations, replacing the earlier delete-before-create behavior. A change to a vertex ID or an edge endpoint/sort key is rejected explicitly, preserving the old elements and incident edges. Safe identity migration is tracked in #793. Source DELETE and CREATE records remain independent operations, with no cross-event atomicity guarantee.
The migration packages the SDK-required Guava namespace alongside Flink, verifies class loading, preserves nullable-value handling and repeated-delivery behavior, and rejects unsupported parallelism before submission. Candidate SDK dependencies use a fixed ASF source baseline; Server 1.7 compatibility uses its official release with pinned checksums. Existing required/advisory separation and coverage policy remain intact.
Validation: packaged MySQL snapshot/restart/recovery, API integration and class-loading checks passed on the prior head. Updated identity-preservation tests use the existing test suites and CI; latest-head validation is pending. No local runtime tests were run. These checks do not establish HStore engine qualification or atomic identity migration.
The branch is rebased onto current ASF master as a single Flink CDC change. Already merged SDK/image prerequisites are excluded from the PR diff, and Spark implementation changes remain in #785. The current combined merge with #785 is conflict-free. Launcher checks and Checkstyle passed after history cleanup; updated-head CI is pending.
CI identity repair: ordinary PRs with an older event base now validate the current GitHub merge SHA, canonical target branch and both merge parents before preparing tests. Wrong heads, changed targets and stale checkouts remain rejected; native-stack verification remains intact. Local CI policy regressions and independent review passed. New-head CI is pending.
Upstream compatibility now follows the version of the verified same-source SDK for every Maven consumer build and test, including packaging provenance validation. This fixes the Server master version bump selecting a released SDK by mistake; fixed-baseline jobs retain their existing version. Local regressions, real Maven coordinate selection and workflow lint passed. Updated-head CI is pending.