You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@asterixdb.apache.org by mh...@apache.org on 2019/04/09 19:35:39 UTC
[asterixdb] 05/05: Merge commit '153b2ce970' from
'stabilization-f69489'
This is an automated email from the ASF dual-hosted git repository.
mhubail pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/asterixdb.git
commit 48a72752708891ff6a2bbea0cbe76bebb3788bab
Merge: 0728004 153b2ce
Author: Michael Blow <mb...@apache.org>
AuthorDate: Mon Apr 8 11:53:20 2019 -0400
Merge commit '153b2ce970' from 'stabilization-f69489'
Change-Id: I5b0d2756d839b0bc2e7c59723306921e698a7630
.../asterix/app/bootstrap/TestNodeController.java | 2 +-
.../PersistentLocalResourceRepositoryTest.java | 30 +++++++------
.../group-by/sugar-09/sugar-09.1.ddl.sqlpp | 50 ++++++++++++++++++++++
.../group-by/sugar-09/sugar-09.2.update.sqlpp | 26 +++++++++++
.../group-by/sugar-09/sugar-09.3.query.sqlpp | 27 ++++++++++++
.../results/group-by/sugar-09/sugar-09.3.adm | 1 +
.../test/resources/runtimets/testsuite_sqlpp.xml | 5 +++
.../ExternalIndexBulkLoadOperatorDescriptor.java | 8 +++-
.../ExternalIndexBulkLoadOperatorNodePushable.java | 7 +--
.../ExternalIndexBulkModifyOperatorDescriptor.java | 10 +++--
...xternalIndexBulkModifyOperatorNodePushable.java | 6 ++-
.../asterix/lang/sqlpp/util/SqlppVariableUtil.java | 11 +++++
.../lang/sqlpp/visitor/FreeVariableVisitor.java | 8 +++-
.../metadata/declared/MetadataProvider.java | 10 ++---
.../utils/SecondaryIndexOperationsHelper.java | 8 ++--
.../LSMIndexBulkLoadOperatorDescriptor.java | 10 ++++-
.../LSMIndexBulkLoadOperatorNodePushable.java | 8 ++--
.../LSMSecondaryUpsertOperatorNodePushable.java | 16 ++++---
.../src/main/opt/local/bin/start-sample-cluster.sh | 2 +-
.../PersistentLocalResourceRepository.java | 8 ++--
.../IndexBulkLoadOperatorNodePushable.java | 22 ++++++++--
.../TreeIndexBulkLoadOperatorDescriptor.java | 13 +++++-
22 files changed, 232 insertions(+), 56 deletions(-)
diff --cc asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
index 567b739,4fcf9f8..07da3f9
--- a/asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
@@@ -4820,12 -3170,11 +4820,17 @@@
</compilation-unit>
</test-case>
<test-case FilePath="group-by">
+ <compilation-unit name="sugar-08-negative">
+ <output-dir compare="Text">core-01</output-dir>
+ <expected-error>ASX1103: Illegal use of identifier: x</expected-error>
+ </compilation-unit>
+ </test-case>
+ <test-case FilePath="group-by">
+ <compilation-unit name="sugar-09">
+ <output-dir compare="Text">sugar-09</output-dir>
+ </compilation-unit>
+ </test-case>
+ <test-case FilePath="group-by">
<compilation-unit name="null">
<output-dir compare="Text">null</output-dir>
</compilation-unit>
diff --cc asterixdb/asterix-lang-sqlpp/src/main/java/org/apache/asterix/lang/sqlpp/util/SqlppVariableUtil.java
index a186cba,28c9b73..3fc5683
--- a/asterixdb/asterix-lang-sqlpp/src/main/java/org/apache/asterix/lang/sqlpp/util/SqlppVariableUtil.java
+++ b/asterixdb/asterix-lang-sqlpp/src/main/java/org/apache/asterix/lang/sqlpp/util/SqlppVariableUtil.java
@@@ -34,8 -29,9 +34,10 @@@ import org.apache.asterix.lang.common.b
import org.apache.asterix.lang.common.clause.GroupbyClause;
import org.apache.asterix.lang.common.clause.LetClause;
import org.apache.asterix.lang.common.expression.GbyVariableExpressionPair;
+ import org.apache.asterix.lang.common.expression.QuantifiedExpression;
import org.apache.asterix.lang.common.expression.VariableExpr;
+import org.apache.asterix.lang.common.struct.Identifier;
+ import org.apache.asterix.lang.common.struct.QuantifiedPair;
import org.apache.asterix.lang.common.struct.VarIdentifier;
import org.apache.asterix.lang.sqlpp.clause.AbstractBinaryCorrelateClause;
import org.apache.asterix.lang.sqlpp.clause.FromClause;
@@@ -192,18 -169,12 +194,27 @@@ public class SqlppVariableUtil
return bindingVars;
}
+ public static List<VariableExpr> getBindingVariables(QuantifiedExpression qe) {
+ List<QuantifiedPair> quantifiedList = qe.getQuantifiedList();
+ List<VariableExpr> bindingVars = new ArrayList<>(quantifiedList.size());
+ for (QuantifiedPair qp : quantifiedList) {
+ bindingVars.add(qp.getVarExpr());
+ }
+ return bindingVars;
+ }
++
+ public static Map<Expression, Identifier> createFieldVariableMap(List<Pair<Expression, Identifier>> fieldList) {
+ Map<Expression, Identifier> fieldVars = new HashMap<>();
+ for (Pair<Expression, Identifier> p : fieldList) {
+ fieldVars.put(p.first, p.second);
+ }
+ return fieldVars;
+ }
+
+ public static void addToFieldVariableList(VariableExpr varExpr, List<Pair<Expression, Identifier>> outFieldList) {
+ VarIdentifier var = varExpr.getVar();
+ VariableExpr newVarExpr = new VariableExpr(var);
+ newVarExpr.setSourceLocation(varExpr.getSourceLocation());
+ outFieldList.add(new Pair<>(newVarExpr, toUserDefinedVariableName(var)));
+ }
}
diff --cc asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/utils/SecondaryIndexOperationsHelper.java
index aaea111,efee1db..318814c
--- a/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/utils/SecondaryIndexOperationsHelper.java
+++ b/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/utils/SecondaryIndexOperationsHelper.java
@@@ -356,13 -357,14 +356,13 @@@ public abstract class SecondaryIndexOpe
}
protected LSMIndexBulkLoadOperatorDescriptor createTreeIndexBulkLoadOp(JobSpecification spec,
- int[] fieldPermutation, IIndexDataflowHelperFactory dataflowHelperFactory, float fillFactor)
- throws AlgebricksException {
+ int[] fieldPermutation, IIndexDataflowHelperFactory dataflowHelperFactory, float fillFactor) {
IndexDataflowHelperFactory primaryIndexDataflowHelperFactory = new IndexDataflowHelperFactory(
metadataProvider.getStorageComponentProvider().getStorageManager(), primaryFileSplitProvider);
-
+ // when an index is being created (not loaded) the filtration is introduced in the pipeline -> no tuple filter
LSMIndexBulkLoadOperatorDescriptor treeIndexBulkLoadOp = new LSMIndexBulkLoadOperatorDescriptor(spec,
secondaryRecDesc, fieldPermutation, fillFactor, false, numElementsHint, false, dataflowHelperFactory,
- primaryIndexDataflowHelperFactory, BulkLoadUsage.CREATE_INDEX, dataset.getDatasetId());
+ primaryIndexDataflowHelperFactory, BulkLoadUsage.CREATE_INDEX, dataset.getDatasetId(), null);
treeIndexBulkLoadOp.setSourceLocation(sourceLoc);
AlgebricksPartitionConstraintHelper.setPartitionConstraintInJobSpec(spec, treeIndexBulkLoadOp,
secondaryPartitionConstraint);
@@@ -370,10 -372,11 +370,10 @@@
}
protected TreeIndexBulkLoadOperatorDescriptor createExternalIndexBulkLoadOp(JobSpecification spec,
- int[] fieldPermutation, IIndexDataflowHelperFactory dataflowHelperFactory, float fillFactor)
- throws AlgebricksException {
+ int[] fieldPermutation, IIndexDataflowHelperFactory dataflowHelperFactory, float fillFactor) {
ExternalIndexBulkLoadOperatorDescriptor treeIndexBulkLoadOp = new ExternalIndexBulkLoadOperatorDescriptor(spec,
secondaryRecDesc, fieldPermutation, fillFactor, false, numElementsHint, false, dataflowHelperFactory,
- ExternalDatasetsRegistry.INSTANCE.getAndLockDatasetVersion(dataset, metadataProvider));
+ ExternalDatasetsRegistry.INSTANCE.getAndLockDatasetVersion(dataset, metadataProvider), null);
treeIndexBulkLoadOp.setSourceLocation(sourceLoc);
AlgebricksPartitionConstraintHelper.setPartitionConstraintInJobSpec(spec, treeIndexBulkLoadOp,
secondaryPartitionConstraint);