Uploaded image for project: 'Apache Tez'
  1. Apache Tez
  2. TEZ-3942

RPC getTask writable optimization invalid in hadoop 2.8+

    Details

    • Type: Bug
    • Status: Patch Available
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: None
    • Labels:
      None

      Description

      TEZ-3140 added an optimization to improve performance of RPC writable. HADOOP-13426 added in hadoop 2.8 has invalidated the assumption of the added optimization by changing the underlying output buffer.

      "IPC Server handler 25 on 35274" #85 daemon prio=5 os_prio=0 tid=0x00000000022c0000 nid=0x1b40f runnable [0x00002ba1a6627000]
         java.lang.Thread.State: RUNNABLE
              at java.util.Arrays.copyOf(Arrays.java:3236)
              at java.io.ByteArrayOutputStream.grow(ByteArrayOutputStream.java:118)
              at java.io.ByteArrayOutputStream.ensureCapacity(ByteArrayOutputStream.java:93)
              at java.io.ByteArrayOutputStream.write(ByteArrayOutputStream.java:153)
              - locked <0x000000072fe9ac68> (a org.apache.hadoop.ipc.ResponseBuffer$FramedBuffer)
              at java.io.DataOutputStream.write(DataOutputStream.java:107)
              - locked <0x000000072fe9ac48> (a org.apache.hadoop.ipc.ResponseBuffer)
              at org.apache.tez.dag.api.EntityDescriptor.write(EntityDescriptor.java:121)
              at org.apache.tez.runtime.api.impl.InputSpec.write(InputSpec.java:66)
              at org.apache.tez.runtime.api.impl.TaskSpec.write(TaskSpec.java:174)
              at org.apache.tez.common.ContainerTask.write(ContainerTask.java:77)
              at org.apache.hadoop.io.ObjectWritable.writeObject(ObjectWritable.java:202)
              at org.apache.hadoop.io.ObjectWritable.writeObject(ObjectWritable.java:128)
              at org.apache.hadoop.io.ObjectWritable.write(ObjectWritable.java:82)
              at org.apache.hadoop.ipc.RpcWritable$WritableWrapper.writeTo(RpcWritable.java:75)
              at org.apache.hadoop.ipc.Server.setupResponseForWritable(Server.java:2807)
              at org.apache.hadoop.ipc.Server.setupResponse(Server.java:2792)
              at org.apache.hadoop.ipc.Server.setupResponse(Server.java:2766)
              at org.apache.hadoop.ipc.Server.access$100(Server.java:138)
              at org.apache.hadoop.ipc.Server$RpcCall.run(Server.java:905)
              at org.apache.hadoop.ipc.Server$RpcCall.run(Server.java:810)
              at java.security.AccessController.doPrivileged(Native Method)
              at javax.security.auth.Subject.doAs(Subject.java:422)
              at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1949)
              at org.apache.hadoop.ipc.Server$Handler.run(Server.java:2523)
      

        Attachments

        1. TEZ-3942.001.patch
          4 kB
          Jonathan Eagles
        2. TEZ-3942.002.patch
          12 kB
          Nishant Dash
        3. TEZ-3942.bench.patch
          2 kB
          Nishant Dash
        4. TEZ-3942.test.patch
          3 kB
          Jonathan Eagles

          Activity

            People

            • Assignee:
              nishantdash Nishant Dash
              Reporter:
              jeagles Jonathan Eagles
            • Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

              • Created:
                Updated: