-
Notifications
You must be signed in to change notification settings - Fork 471
#9275 refactor to batch compare and append for one shard in persist sink #32509
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
base: main
Are you sure you want to change the base?
#9275 refactor to batch compare and append for one shard in persist sink #32509
Conversation
eb09eed
to
8b969a6
Compare
src/persist-client/src/write.rs
Outdated
@@ -484,6 +503,18 @@ where | |||
|
|||
let lower = expected_upper.clone(); | |||
let upper = new_upper; | |||
|
|||
if let (Some(max_upper), Some(min_lower)) = (max_upper, min_lower) { | |||
if max_upper.lt(&upper) || min_lower.gt(&lower) { |
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.
unclear that the min_lower check is valid but it does replicate the behaviour tested for here.
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.
removed the min_lower check as the kafka-rtr tests and others started failing. I am concerned that we are not really gathering the set of batches as a batch that would have been previously written.
EDIT: concern is that we are dropping batches that would have been written. I will add a counter or warn log for this issue to aid profiling.
9aac9cd
to
dcf5ad9
Compare
dcf5ad9
to
3b5d25c
Compare
3b5d25c
to
b18c329
Compare
5a7f5ff
to
219dd42
Compare
219dd42
to
a44810f
Compare
@@ -1360,6 +1358,8 @@ where | |||
); | |||
anyhow::bail!("collection concurrently modified. Ingestion dataflow will be restarted"); | |||
} | |||
|
|||
break; |
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.
I am concerned that none of the above behaviour (everything in the Err(mismatch)
arm) is ever actuated by a test.
Motivation
https://github.com/MaterializeInc/database-issues/issues/9275
Checklist
$T ⇔ Proto$T
mapping (possibly in a backwards-incompatible way), then it is tagged with aT-proto
label.