-
Notifications
You must be signed in to change notification settings - Fork 590
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(sink): turn sink writer into higher level log sinker #12152
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
license-eye has totally checked 4066 files.
Valid | Invalid | Ignored | Fixed |
---|---|---|---|
1794 | 1 | 2271 | 0 |
Click to see the invalid file list
- src/connector/src/sink/blackhole.rs
Codecov Report
@@ Coverage Diff @@
## main #12152 +/- ##
==========================================
- Coverage 69.43% 69.41% -0.03%
==========================================
Files 1438 1440 +2
Lines 238698 238771 +73
==========================================
Hits 165740 165740
- Misses 72958 73031 +73
Flags with carried forward coverage won't be shown. Click here to find out more.
... and 3 files with indirect coverage changes 📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
…2123) feat(java-binding): generate jni method signature with macro (#12487) feat(streaming): recover `no_shuffle_backfill` (#12493) feat(test): support customized source logic in deterministic test (#12456) refactor(storage): reorg selector (#12392) feat(frontend): add rw_catalog.rw_hummock_sstables (#12532) chore: bump risingwave version in docker compose to 1.2.0 (#12530) Signed-off-by: Bugen Zhao <[email protected]> refactor(sink): decouple sink formatter and payload writer (#12515) chore(java-binding): refine stream chunk benchmark (#12504) feat(meta): add create_type to `Table` (#12529) refactor(sink): refine sink trait and macro (#12478) refactor(backup): refine error message (#12388) feat(sink): turn sink writer into higher level log sinker (#12152) fix(over window): don't expect stream keys in UpdateDelete and UpdateInsert the same (#12536) Signed-off-by: Richard Chien <[email protected]> refactor(expr): separate function implementations into a new crate (#12485) Signed-off-by: Runji Wang <[email protected]> fix(config): make metrics_level opt backward compatible (#12541) refactor(connector): replace sink writer rpc with jni (#12480) refactor(connector): remove `WriteGuard` and `fulfill_meta_column` from parser (#12542) Signed-off-by: Bugen Zhao <[email protected]> feat(sink): handle stream key sink pk mismatch (#12458) feat(optimizer): support apply hop window transpose rule (#12338)
I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.
What's changed and what's your intention?
Part of #12060.
In this PR, we change the associated type
Writer
ofSink
toLogSinker
that implements the traitLogSinker
. TheLogSinker
has a methodconsume_log_and_sink
, which accepts a log reader and return a future. When the future is driven, it will consume the log and sink data to the external sink. The currentSinkWriter
is kept, and can be ported to the newLogSinker
trait with an adapter namedLogSinkerOf
, whose implementation is the current logicexecute_consume_log
ofSinkExecutor
.Besides, the definition of log store related trait is moved from stream crate to connector crate so that in the log sinker trait can refer to the log reader. The implementation of log store trait is remained in the stream crate out of dependency reason.
Checklist
./risedev check
(or alias,./risedev c
)Documentation
Release note
If this PR includes changes that directly affect users or other significant modifications relevant to the community, kindly draft a release note to provide a concise summary of these changes. Please prioritize highlighting the impact these changes will have on users.