Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion misc/cargo-vet/audits.toml
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ version = "1.2.6"
[[audits.differential-dataflow]]
who = "Moritz Hoffmann <mh@materialize.com>"
criteria = "safe-to-deploy"
version = "0.12.0@git:c5b9baca0283f4d96f7e6f914de8578fb5c521de"
version = "0.12.0@git:9da4dd365cc2cb0bcd317198731c3c7d42f3f657"

[[audits.dynfmt]]
who = "Sean Loiselle <sean@materialize.io>"
Expand Down
8 changes: 6 additions & 2 deletions src/compute/src/render/join/delta_join.rs
Original file line number Diff line number Diff line change
Expand Up @@ -461,7 +461,9 @@ where
let (oks, errs2) = dogsdogsdogs::operators::half_join::half_join_internal_unsafe(
&updates,
trace,
|time| time.step_back(),
|time, antichain| {
antichain.insert(time.step_back());

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This doesn't yet give us "precise" compaction as described by the description of this PR yet, right? Do we plan to do this in MZ?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It does, it turns out. MZ's use is limited to Product<u64, PointStamp<u64>>, or whatever, and that happens to be a distributive lattice for which compaction by the meet of the frontier equals compaction by the frontier.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We could update the logic to push in each coordinate stepped back independently, for idiomatic reasons, but math says that we don't need to do this.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very interesting, thanks for the explanation!

},
comparison,
// TODO(mcsherry): investigate/establish trade-offs here; time based had problems,
// in that we seem to yield too much and do too little work when we do.
Expand Down Expand Up @@ -508,7 +510,9 @@ where
let oks = dogsdogsdogs::operators::half_join::half_join_internal_unsafe(
&updates,
trace,
|time| time.step_back(),
|time, antichain| {
antichain.insert(time.step_back());
},
comparison,
// TODO(mcsherry): investigate/establish trade-offs here; time based had problems,
// in that we seem to yield too much and do too little work when we do.
Expand Down