[ 
https://issues.apache.org/jira/browse/BEAM-5041?focusedWorklogId=130676&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-130676
 ]

ASF GitHub Bot logged work on BEAM-5041:
----------------------------------------

                Author: ASF GitHub Bot
            Created on: 02/Aug/18 23:52
            Start Date: 02/Aug/18 23:52
    Worklog Time Spent: 10m 
      Work Description: angoenka commented on a change in pull request #6093: 
[BEAM-5041] Java Fn SDK Harness use pTransform to track processed graph
URL: https://github.com/apache/beam/pull/6093#discussion_r207407997
 
 

 ##########
 File path: 
sdks/java/harness/src/main/java/org/apache/beam/fn/harness/control/ProcessBundleHandler.java
 ##########
 @@ -185,23 +184,26 @@ private void 
createRunnerAndConsumersForPTransformRecursively(
           String.format(
               "Cannot process composite transform: %s", 
TextFormat.printToString(pTransform)));
     }
-
-    urnToPTransformRunnerFactoryMap
-        .getOrDefault(pTransform.getSpec().getUrn(), 
defaultPTransformRunnerFactory)
-        .createRunnerForPTransform(
-            options,
-            beamFnDataClient,
-            beamFnStateClient,
-            pTransformId,
-            pTransform,
-            processBundleInstructionId,
-            processBundleDescriptor.getPcollectionsMap(),
-            processBundleDescriptor.getCodersMap(),
-            processBundleDescriptor.getWindowingStrategiesMap(),
-            pCollectionIdsToConsumers,
-            addStartFunction,
-            addFinishFunction,
-            splitListener);
+    // Skip reprocessing processed pTransforms.
+    if (!processedPTransformIds.contains(pTransformId)) {
+      urnToPTransformRunnerFactoryMap
+          .getOrDefault(pTransform.getSpec().getUrn(), 
defaultPTransformRunnerFactory)
+          .createRunnerForPTransform(
+              options,
+              beamFnDataClient,
+              beamFnStateClient,
+              pTransformId,
+              pTransform,
+              processBundleInstructionId,
+              processBundleDescriptor.getPcollectionsMap(),
+              processBundleDescriptor.getCodersMap(),
+              processBundleDescriptor.getWindowingStrategiesMap(),
+              pCollectionIdsToConsumers,
 
 Review comment:
   pCollectionIdsToConsumers is consumed at the time of bundle execution to 
lookup consumer for the pCollection.
   
https://github.com/apache/beam/blob/45ea59f3ec18989ec59901fd29a717b7de2d8ca4/sdks/java/harness/src/main/java/org/apache/beam/fn/harness/DoFnPTransformRunnerFactory.java#L282
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


Issue Time Tracking
-------------------

    Worklog Id:     (was: 130676)
    Time Spent: 1h  (was: 50m)

> Java Fn SDK Harness skips unprocessed pCollections
> --------------------------------------------------
>
>                 Key: BEAM-5041
>                 URL: https://issues.apache.org/jira/browse/BEAM-5041
>             Project: Beam
>          Issue Type: Bug
>          Components: sdk-java-harness
>            Reporter: Ankur Goenka
>            Assignee: Ankur Goenka
>            Priority: Major
>          Time Spent: 1h
>  Remaining Estimate: 0h
>
> Java Sdk Harness used pCollections to keep track of computed consumers 
> [here|https://github.com/apache/beam/blob/ff95a82e461bd8319d9733be60e75992ba90cd7c/sdks/java/harness/src/main/java/org/apache/beam/fn/harness/control/ProcessBundleHandler.java#L158].
>  This is incorrect as consumers are based on pTransforms so pTransforms 
> should be used to keep track of computed consumers.
> In case of Flatten, this creates an issue where pTransforms having same input 
> as that to flatten are not executed. This causes 
> [https://github.com/apache/beam/blob/ff95a82e461bd8319d9733be60e75992ba90cd7c/sdks/java/core/src/test/java/org/apache/beam/sdk/transforms/FlattenTest.java#L316]
>  to fail.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to