-
Notifications
You must be signed in to change notification settings - Fork 3.4k
HBASE-22582 The Compaction writer may access the lastCell whose memor… #341
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
Conversation
|
Will try to add few UT to address this bug. |
|
🎊 +1 overall
This message was automatically generated. |
|
@openinx , I see some syntax/style fixes along with the "beforeShipped()" fix. I can confirm that there are other places as well in these 3 files were such changes could be welcomed. Do you think that we should include those as well here? |
|
@jatsakthi Yeah, I think we can fix the checksytle in this issue. |
| "Interrupted while control throughput of compacting " + compactionName); | ||
| } finally { | ||
| throughputController.finish(compactionName); | ||
| ((ShipperListener) writer).beforeShipped(); |
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.
Below in Compactor, call beforeShipped() before finishing the throughputController. Its ok for any order. Still we can maintain one order.
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.
Yeah, I will provide a UT to address this bug but am working on other things now... will update this patch later.
| + String.format(", rate=%.2f kB/sec", (bytesWrittenProgressForLog / 1024.0) | ||
| / ((now - lastMillis) / 1000.0)) + ", throughputController is " | ||
| + throughputController); | ||
| double rate = (bytesWrittenProgressForLog / 1024.0) / ((now - lastMillis) / 1000.0); |
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 abt the String formatting on the Double value which we were doing. Missing that in log now. Below one more place too.
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.
Emm... maybe I need to format the rate first before put it as a arg in LOG.debug, thanks .
anoopsjohn
left a comment
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.
|
💔 -1 overall
This message was automatically generated. |
| + String.format(", rate=%.2f kB/sec", (bytesWrittenProgressForLog / 1024.0) | ||
| / ((now - lastMillis) / 1000.0)) + ", throughputController is " | ||
| + throughputController); | ||
| String rate = String.format("%.2f", |
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.
if (LOG.isDebugEnabled())? Then can skip to generate "rate" String in production environment.
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.
Have an existed isDebugEnabled before in line#312 :-)
| + String.format(", rate=%.2f kB/sec", (bytesWrittenProgressForLog / 1024.0) | ||
| / ((now - lastMillis) / 1000.0)) + ", throughputController is " | ||
| + throughputController); | ||
| String rate = String.format("%.2f", |
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.
Ditto. if (LOG.isDebugEnabled())?
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.
Please see line#449.
| throw new InterruptedIOException( | ||
| "Interrupted while control throughput of compacting " + compactionName); | ||
| } finally { | ||
| ((ShipperListener) writer).beforeShipped(); |
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 comment here, too?
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.
OK
…y has been released when appending fileInfo in the final
…y has been released when appending fileInfo in the final (#341)
…y has been released when appending fileInfo in the final (#341)
…y has been released when appending fileInfo in the final (#341)
…y has been released when appending fileInfo in the final (#341)
|
💔 -1 overall
This message was automatically generated. |
…y has been released when appending fileInfo in the final (apache#341)
…y has been released when appending fileInfo in the final (apache#341) (cherry picked from commit 77e5e5c) Change-Id: Id64bb99efa1b9916189e7179fd316be932ece093
…y has been released when appending fileInfo in the final