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

Zhiyuan Yang commented on TEZ-1190:
-----------------------------------

{quote}
How is the restriction of either all named or unnamed helpful?
{quote}
Strictly separating new use case from existings make it easier to keep backward 
compatibility at the first step. Hybrid case can be supported later if 
necessary.

{quote}
How about an implementation approach where all implicit behavior is removed in 
the core layer.
{quote}
Internally edges are all named at DAGAppMaster side, but not at client side. 
Default name could be assigned at client side. But since we already separate 
named case from unnamed case at client side, we can safely let AM assign 
default name for now. Assigning default name at client side can be done later 
when supporting hybrid case is necessary.

{quote}
I suggest changing the internal core layer to always use edge names and keep 
the compatibility handling to the API layers
{quote}
This is already specified in doc except in client side. If you look at 
prototype patch, I've added getIn/OutEdgeName method in various Context classes 
and all places using vertex name which should be edges name are already updated 
to use edge name. There are exceptions in VertexManagerPluginContext 
getInput/OutputVertexEdgeProperties and reconfigureVertex, but the implicit 
behaviors are in user code, means VertexManagerPlugins, and they need to be 
fixed anyway for multi-edge scenario.

{quote}
BTW, the doc implicitly assumes that the dummy vertex approach is being dropped 
in favor of the named edge approach?
{quote}
That's right. I just updated the doc to put that explicit.

> Allow multiple edges between two vertices
> -----------------------------------------
>
>                 Key: TEZ-1190
>                 URL: https://issues.apache.org/jira/browse/TEZ-1190
>             Project: Apache Tez
>          Issue Type: Bug
>            Reporter: Daniel Dai
>            Assignee: Zhiyuan Yang
>         Attachments: NamedEdgeDesign.pdf, TEZ-1190.prototype.patch
>
>
> This will be helpful in some scenario. In particular example, we can merge 
> two small pipelines together in one pair of vertex. Note it is possible the 
> edge type between the two vertexes are different.



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

Reply via email to