Fix/cdc log processor handle#18
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
📝 WalkthroughWalkthroughThis PR introduces a complete JanusGraph CDC (Change Data Capture) extension module that captures vertex and edge changes from transaction logs, converts them to pluggable message formats, and routes events to configurable sinks. ChangesJanusGraph CDC Extension Implementation
Sequence DiagramsequenceDiagram
participant JanusGraph as JanusGraph<br/>Transaction Log
participant GraphLogProcessor
participant MessageConverter
participant EventSink
participant SinkImpl as LogFileEventSink/<br/>External Sink
JanusGraph->>GraphLogProcessor: processChanges(vertices, relations)
GraphLogProcessor->>GraphLogProcessor: classify CREATE/DELETE/UPDATE
GraphLogProcessor->>MessageConverter: convert(vertex, changeState, operation)
MessageConverter->>MessageConverter: extract properties & metadata
MessageConverter-->>GraphLogProcessor: event map
GraphLogProcessor->>EventSink: send(key, JSON payload)
EventSink->>SinkImpl: route event
SinkImpl-->>EventSink: acknowledged
Estimated code review effort🎯 4 (Complex) | ⏱️ ~45 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 3❌ Failed checks (2 warnings, 1 inconclusive)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Type of change
Please choose appropriate options.
How Has This Been Tested?
Please describe the tests that you ran to verify your changes in the below checkboxes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration
Test Configuration:
Checklist:
Summary by CodeRabbit
New Features
Documentation