-
Notifications
You must be signed in to change notification settings - Fork 448
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
Add compaction IT that verifies queues are cleared when tablets no longer need to compact #4466
Add compaction IT that verifies queues are cleared when tablets no longer need to compact #4466
Conversation
…nger need to compact
This test is failing at the moment but I wanted to put up what I have so far because, to me, it seems like it should be testing things correctly. The issue is probably with my assumptions in setting the test but may be correctly pointing to a bug. The test essentially sets things up so that there are compactions queued (with no compactors running that would carry out the compactions) and then the compaction settings are changed so that compactions no longer need to happen. It is expected that the queue would be emptied but I do not see that happening. Here is a portion of the logs while the test is waiting for the queue to be emptied:
These are the last logs before the test times out. Note the queue sizes and the Jobs rejected. |
test/src/main/java/org/apache/accumulo/test/compaction/CompactionPriorityQueueMetricsIT.java
Outdated
Show resolved
Hide resolved
test/src/main/java/org/apache/accumulo/test/compaction/CompactionPriorityQueueMetricsIT.java
Outdated
Show resolved
Hide resolved
test/src/main/java/org/apache/accumulo/test/compaction/CompactionPriorityQueueMetricsIT.java
Outdated
Show resolved
Hide resolved
test/src/main/java/org/apache/accumulo/test/compaction/CompactionPriorityQueueMetricsIT.java
Outdated
Show resolved
Hide resolved
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.
Overall, looks good and verified test passes
test/src/main/java/org/apache/accumulo/test/compaction/CompactionPriorityQueueMetricsIT.java
Outdated
Show resolved
Hide resolved
test/src/main/java/org/apache/accumulo/test/compaction/CompactionPriorityQueueMetricsIT.java
Outdated
Show resolved
Hide resolved
test/src/main/java/org/apache/accumulo/test/compaction/CompactionPriorityQueueMetricsIT.java
Outdated
Show resolved
Hide resolved
test/src/main/java/org/apache/accumulo/test/compaction/CompactionPriorityQueueMetricsIT.java
Outdated
Show resolved
Hide resolved
return false; | ||
}, 60_000, sleepMillis, "did not see Q1 metrics"); | ||
|
||
Wait.waitFor(() -> { |
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.
What is the purpose of this wait loop?
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 realized I pulled in a lot of unneeded stuff from the other test case while developing the changes for this PR. In 9a63f3e I removed a lot so that its easier to track whats going on and only kept whats necessary to test what we are trying to test here.
Addresses #4399