[ 
https://issues.apache.org/jira/browse/TEZ-1194?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tsuyoshi OZAWA updated TEZ-1194:
--------------------------------

    Attachment: TEZ-1194.3-wip.patch

Attached WIP patch which changed the semantics of *ContextImpl. In this patch, 
I tried to change that they cannot accept TezUserPayload as null. However, I 
found that it's difficult to remove test failure of tez-tests, because we 
cannot catch outputs of causes of test failures at server-side(it means in 
MiniTezCluster). Maybe we should add the change to output the cause of failure 
in applications if possible on another JIRA. I appreciate if you have useful 
information to debug them.

{quote}
If the change can be large because of this, I'll do it on another JIRA. I'll 
report it when I attach the next patch.
{quote}

For the reason as described above, I'll plan not to change the semantics of 
*ContextImpl - they can accept nullable userPayload in the next patch.  Please 
wait a moment to update.

> Make TezUserPayload user facing for payload specification and change to 
> ByteBuffer
> ----------------------------------------------------------------------------------
>
>                 Key: TEZ-1194
>                 URL: https://issues.apache.org/jira/browse/TEZ-1194
>             Project: Apache Tez
>          Issue Type: Sub-task
>            Reporter: Bikas Saha
>            Assignee: Tsuyoshi OZAWA
>            Priority: Blocker
>         Attachments: TEZ-1194.1.patch, TEZ-1194.2.patch, TEZ-1194.3-wip.patch
>
>
> Now that we have TezUserPayload being used internally to represent user 
> payload it may be useful to make it user facing on the API for specifying 
> payloads. Advantages
> 1) Clear code for the user instead of having untyped byte[] everywhere
> 2) Lets us internally evolve the representation of user payload and make it 
> more efficient without having to break APIs. We can start with 
> TezUserPayload(byte[]) and then move on to TezUserPayload(ByteBuffer) and so 
> on while maintaining backwards compatibility without needing to add new 
> methods. Old code can be translated within TezUserPayload while user migrates 
> the code.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to