HBase
  1. HBase
  2. HBASE-1196

OOME in HRS IPC server causes infinite client stall

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Critical Critical
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 0.19.1, 0.20.0
    • Component/s: None
    • Labels:
      None

      Description

      OOME in IPC server handler causes the IPC handler to abort, but the client never learns about this, so it waits and waits and waits... I have seen Heritrix writer threads that have been waiting for 7+ hours. And, the OOME does not take down the HRS, so it stays up in some degraded state. E.g.:

      java.lang.OutOfMemoryError: Java heap space
      Dumping heap to java_pid13008.hprof
      Exception in thread "IPC Server handler 5 on 60020" java.lang.OutOfMemoryError: Java heap space
      at java.util.Arrays.copyOf(Arrays.java:2786)
      at java.io.ByteArrayOutputStream.write(ByteArrayOutputStream.java:94)
      at java.io.DataOutputStream.write(DataOutputStream.java:90)
      at org.apache.hadoop.hbase.util.Bytes.writeByteArray(Bytes.java:82)
      at org.apache.hadoop.hbase.io.Cell.write(Cell.java:162)
      at org.apache.hadoop.hbase.io.HbaseMapWritable.write(HbaseMapWritable.java:200)
      at org.apache.hadoop.hbase.io.RowResult.write(RowResult.java:249)
      at org.apache.hadoop.hbase.io.HbaseObjectWritable.writeObject(HbaseObjectWritable.java:300)
      at org.apache.hadoop.hbase.io.HbaseObjectWritable.write(HbaseObjectWritable.java:262)
      at org.apache.hadoop.hbase.ipc.HBaseServer$Handler.run(HBaseServer.java:917)
      Exception in thread "IPC Server handler 7 on 60020" java.lang.OutOfMemoryError: Java heap space
      Exception in thread "IPC Server handler 4 on 60020" java.lang.OutOfMemoryError: Java heap space
      Exception in thread "IPC Server handler 2 on 60020" java.lang.OutOfMemoryError: Java heap space
      Exception in thread "IPC Server handler 3 on 60020" java.lang.OutOfMemoryError: Java heap space
      Exception in thread "IPC Server handler 0 on 60020" java.lang.OutOfMemoryError: Java heap space
      Exception in thread "IPC Server handler 6 on 60020" java.lang.OutOfMemoryError: Java heap space
      Exception in thread "IPC Server handler 9 on 60020" java.lang.OutOfMemoryError: Java heap space
      Exception in thread "IPC Server handler 1 on 60020" java.lang.OutOfMemoryError: Java heap space
      Exception in thread "IPC Server handler 8 on 60020" java.lang.OutOfMemoryError: Java heap space

        Activity

        Hide
        Andrew Purtell added a comment -

        Specifically in the case of my usage pattern, an OOME cascade like the above will damage IPC during a scan, and subsequent writes from the client are what stall forever.

        Show
        Andrew Purtell added a comment - Specifically in the case of my usage pattern, an OOME cascade like the above will damage IPC during a scan, and subsequent writes from the client are what stall forever.
        Hide
        Andrew Purtell added a comment -

        Resolved by subtask.

        Show
        Andrew Purtell added a comment - Resolved by subtask.

          People

          • Assignee:
            Andrew Purtell
            Reporter:
            Andrew Purtell
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development