[ 
https://issues.apache.org/jira/browse/TEZ-2314?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14515837#comment-14515837
 ] 

Siddharth Seth commented on TEZ-2314:
-------------------------------------

The plugin where the stats are eventually used - the VMPlugin I believe. Looks 
like that path is handled via null checks while accumulating statistics.
One thing I did notice though, is that TaskAttempt.getStatistics is outside any 
lock - can be fixed here or a spearate jira since it's not related directly to 
the issue.

On the patch itself - volatile long instead of synchronizing the updates to the 
values can be problematic - since operations on longs are not atomic.
The approach of sending the data only after initialization is fine for now. 
We'll have to keep this in mind when adding user specified statistics, or stats 
which are not setup during initialization. Synchronization is a simpler 
approach though, and won't run into these potential pitfalls later.

> Tez task attempt failures due to bad event serialization
> --------------------------------------------------------
>
>                 Key: TEZ-2314
>                 URL: https://issues.apache.org/jira/browse/TEZ-2314
>             Project: Apache Tez
>          Issue Type: Bug
>    Affects Versions: 0.7.0
>            Reporter: Rohini Palaniswamy
>            Assignee: Bikas Saha
>            Priority: Blocker
>         Attachments: TEZ-2314.1.patch, TEZ-2314.log.patch
>
>
> {code}
> 2015-04-13 19:21:48,516 WARN [Socket Reader #3 for port 53530] ipc.Server: 
> Unable to read call parameters for client 10.216.13.112on connection protocol 
> org.apache.tez.common.TezTaskUmbilicalProtocol for rpcKind RPC_WRITABLE
> java.lang.ArrayIndexOutOfBoundsException: 1935896432
>         at 
> org.apache.tez.runtime.api.impl.EventMetaData.readFields(EventMetaData.java:120)
>         at 
> org.apache.tez.runtime.api.impl.TezEvent.readFields(TezEvent.java:271)
>         at 
> org.apache.tez.runtime.api.impl.TezHeartbeatRequest.readFields(TezHeartbeatRequest.java:110)
>         at 
> org.apache.hadoop.io.ObjectWritable.readObject(ObjectWritable.java:285)
>         at 
> org.apache.hadoop.ipc.WritableRpcEngine$Invocation.readFields(WritableRpcEngine.java:160)
>         at 
> org.apache.hadoop.ipc.Server$Connection.processRpcRequest(Server.java:1884)
>         at 
> org.apache.hadoop.ipc.Server$Connection.processOneRpc(Server.java:1816)
>         at 
> org.apache.hadoop.ipc.Server$Connection.readAndProcess(Server.java:1574)
>         at org.apache.hadoop.ipc.Server$Listener.doRead(Server.java:806)
>         at 
> org.apache.hadoop.ipc.Server$Listener$Reader.doRunLoop(Server.java:673)
>         at org.apache.hadoop.ipc.Server$Listener$Reader.run(Server.java:644)
> {code}
> cc/ [~hitesh] and [~bikassaha]



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to