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

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

                Author: ASF GitHub Bot
            Created on: 04/May/18 18:14
            Start Date: 04/May/18 18:14
    Worklog Time Spent: 10m 
      Work Description: kennknowles commented on a change in pull request 
#5224: [BEAM-4044] [SQL] Add tables via TableStore in Schema, execute DDL in 
Calcite model
URL: https://github.com/apache/beam/pull/5224#discussion_r186170860
 
 

 ##########
 File path: 
sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/QueryTransform.java
 ##########
 @@ -78,25 +76,18 @@
     }
   }
 
-  private PCollectionTuple toPCollectionTuple(PInput inputs) {
-    return (inputs instanceof PCollection)
-        ? PCollectionTuple.of(new TupleTag<>(PCOLLECTION_NAME), toRows(inputs))
-        : tupleOfAllInputs(inputs.getPipeline(), inputs.expand());
-  }
-
-  private PCollectionTuple tupleOfAllInputs(
-      Pipeline pipeline,
-      Map<TupleTag<?>, PValue> taggedInputs) {
-
-    PCollectionTuple tuple = PCollectionTuple.empty(pipeline);
-
-    for (Map.Entry<TupleTag<?>, PValue> input : taggedInputs.entrySet()) {
-      tuple = tuple.and(
-          new TupleTag<>(input.getKey().getId()),
-          toRows(input.getValue()));
+  private BeamSqlTableProvider toTableProvider(PInput inputs) {
+    ImmutableMap.Builder<String, BeamSqlTable> tables = ImmutableMap.builder();
+    if (inputs instanceof PCollection) {
+      tables.put(PCOLLECTION_NAME,
+          new BeamPCollectionTable(toRows(inputs)));
+    } else {
+      for (Map.Entry<TupleTag<?>, PValue> input : inputs.expand().entrySet()) {
+        tables.put(input.getKey().getId(),
+            new BeamPCollectionTable(toRows(input.getValue())));
+      }
 
 Review comment:
   Incidentally, here (or maybe it is nearby beneath a fold) seems like a good 
place to (possibly redundantly) explain that a PCollection makes a single magic 
table while any other kind of input uses `expand()` to make many tables using 
the tags as names.

----------------------------------------------------------------
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: 98535)
    Time Spent: 12.5h  (was: 12h 20m)

> Take advantage of Calcite DDL
> -----------------------------
>
>                 Key: BEAM-4044
>                 URL: https://issues.apache.org/jira/browse/BEAM-4044
>             Project: Beam
>          Issue Type: New Feature
>          Components: dsl-sql
>            Reporter: Andrew Pilloud
>            Assignee: Andrew Pilloud
>            Priority: Major
>          Time Spent: 12.5h
>  Remaining Estimate: 0h
>
> In Calcite 1.15 support for abstract DDL moved into calcite core. We should 
> take advantage of that.



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

Reply via email to