-
Notifications
You must be signed in to change notification settings - Fork 11
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
Rust compaction #1360
Rust compaction #1360
Conversation
It takes 20 minutes to to build this PR (compared to around 4 without the Rust build) and it takes 20 minutes every time. Is there any way to avoid recompiling the Rust code if nothing has changed? We will need both unit tests in the Rust code, and the Java unit tests to test both the Java and Rust implementations. The actual compaction code doesn't seem to be sending many logs to CloudWatch - it's harder to see that the job is processing than it is with the Java implementation - there are no logs of read 1000000 records, read 2000000 records, ...:
More comments to come. |
RustBridge.FFICompactionResult compactionData = nativeLib.allocate_result(); | ||
|
||
try { | ||
// Perform compaction |
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.
Add log line here to say about to run compaction using Rust.
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.
Done
recordsProcessed = compactNoSplitting(); | ||
// If using non-default method, try that and fallback to default if it fails, | ||
// otherwise, just use default | ||
if (method != CompactionMethod.DEFAULT) { |
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.
Add log lines to indicate which methods are being used 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.
Done
...xecution/src/test/java/sleeper/compaction/job/execution/CompactSortedFilesEmptyOutputIT.java
Outdated
Show resolved
Hide resolved
…chq/sleeper into 1359-accelerated-compaction-support
I've split out a separate issue to improve test coverage for these changes, so that we can hopefully get this PR merged close to as it is now: |
...mpaction-job-execution/src/main/java/sleeper/compaction/job/execution/StandardCompactor.java
Outdated
Show resolved
Hide resolved
…ompaction-support
THIS IS AN EXPERIMENTAL PR. NOT READY FOR MERGE.
Issue
Tests
Rust compaction units tests not present yet.