[
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)