Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-5535

Make the functions in task monitor synchronized

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 0.92.2, 0.94.0
    • None
    • None
    • Reviewed

    Description

      There are some potential race condition in the task monitor. So update the functions in task monitor to be synchronized.

      The example of the problem caused by the race condition:
      ERROR org.apache.hadoop.hbase.regionserver.MemStoreFlusher: Cache flush failed for region
      java.lang.IndexOutOfBoundsException: Index: 1745, Size: 1744
      at java.util.ArrayList.add(ArrayList.java:367)
      at java.util.SubList.add(AbstractList.java:633)
      at java.util.SubList.add(AbstractList.java:633)
      at java.util.SubList.add(AbstractList.java:633)
      at java.util.SubList.add(AbstractList.java:633)
      at java.util.SubList.add(AbstractList.java:633)
      at java.util.AbstractList.add(AbstractList.java:91)
      at org.apache.hadoop.hbase.monitoring.TaskMonitor.createStatus(TaskMonitor.java:74)
      at org.apache.hadoop.hbase.regionserver.HRegion.flushcache(HRegion.java:1139)
      at org.apache.hadoop.hbase.regionserver.MemStoreFlusher.flushRegion(MemStoreFlusher.java:260)
      at org.apache.hadoop.hbase.regionserver.MemStoreFlusher.flushRegion(MemStoreFlusher.java:234)
      at org.apache.hadoop.hbase.regionserver.MemStoreFlusher.run(MemStoreFlusher.java:146)

      Attachments

        Activity

          People

            liyin Liyin Tang
            liyin Liyin Tang
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: