saintstack commented on a change in pull request #956: HBASE-23601:
OutputSink.WriterThread exception gets stuck and repeated indefinietly
URL: https://github.com/apache/hbase/pull/956#discussion_r362901505
##########
File path:
hbase-server/src/main/java/org/apache/hadoop/hbase/wal/OutputSink.java
##########
@@ -91,6 +93,25 @@ public synchronized void startWriterThreads() {
}
}
+ public synchronized void restartWriterThreadsIfNeeded() {
+ Iterator<WriterThread> writerIterator = writerThreads.iterator();
+ //remove dead threads
+ List<String> names = new ArrayList();
+ while(writerIterator.hasNext()){
+ WriterThread t = writerIterator.next();
+ if (!t.isAlive()){
+ names.add(t.getName());
Review comment:
Would it be easier to move through the writerThread array using an index
replacing dead threads with new live ones as you go? Should log when you
replace a thread I'd say at DEBUG level?
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services