Change in asterixdb[master]: [ASTERIXDB-1911][HYR,RT,CLUS] Fixes and Improvements for Pre...

2017-11-07 Thread Steven Jacobs (Code Review)
Steven Jacobs has posted comments on this change.

Change subject: [ASTERIXDB-1911][HYR,RT,CLUS] Fixes and Improvements for 
PreDistributed Jobs
..


Patch Set 14:

(1 comment)

https://asterix-gerrit.ics.uci.edu/#/c/2045/14/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/job/PreDistributedId.java
File 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/job/PreDistributedId.java:

PS14, Line 30: PreDistributedId
> In IHyracksClientConnection we already have deployBinary and undeployBinary
Okay, I'm doing the refactoring and will push a new patchset


-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2045
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I8f493c1fa977d07dfe8a875f9ebe9515d01d1473
Gerrit-PatchSet: 14
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Ildar Absalyamov 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Xikui Wang 
Gerrit-Reviewer: abdullah alamoudi 
Gerrit-HasComments: Yes


Change in asterixdb[master]: [ASTERIXDB-1911][HYR,RT,CLUS] Fixes and Improvements for Pre...

2017-11-07 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2045

to look at the new patch set (#21).

Change subject: [ASTERIXDB-1911][HYR,RT,CLUS] Fixes and Improvements for 
PreDistributed Jobs
..

[ASTERIXDB-1911][HYR,RT,CLUS] Fixes and Improvements for PreDistributed Jobs

Enable job executions to have a map of job parameters
Add an Asterix function to retrieve these parameters
which are can be assigned when the job is run, e.g. for PreDistributed jobs
Allow PreDistributed jobs to have new Asterix/Hyracks jobIds for each execution
Allow simultaneous execution of one PreDistributed Job

Change-Id: I8f493c1fa977d07dfe8a875f9ebe9515d01d1473
---
M asterixdb/asterix-active/pom.xml
A 
asterixdb/asterix-active/src/main/java/org/apache/asterix/active/DeployedJobService.java
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
M 
asterixdb/asterix-app/src/test/java/org/apache/asterix/app/bootstrap/TestNodeController.java
A 
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/IJobEventListenerFactory.java
M 
asterixdb/asterix-lang-common/src/main/java/org/apache/asterix/lang/common/statement/CreateFunctionStatement.java
M 
asterixdb/asterix-lang-common/src/main/java/org/apache/asterix/lang/common/visitor/FormatPrintVisitor.java
M 
asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/utils/DatasetUtil.java
M 
asterixdb/asterix-om/src/main/java/org/apache/asterix/om/functions/BuiltinFunctions.java
M 
asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/AbstractUnaryStringStringEval.java
A 
asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/GetJobParameterByNameDescriptor.java
M 
asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/functions/FunctionCollection.java
M 
asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/job/listener/JobEventListenerFactory.java
M 
asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/job/listener/MultiTransactionJobletEventListenerFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/LockThenSearchOperationCallbackFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/PrimaryIndexInstantSearchOperationCallbackFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/PrimaryIndexModificationOperationCallbackFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/PrimaryIndexSearchOperationCallbackFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/SecondaryIndexModificationOperationCallbackFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/TempDatasetPrimaryIndexModificationOperationCallbackFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/TempDatasetSecondaryIndexModificationOperationCallbackFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/UpsertOperationCallbackFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/runtime/CommitRuntimeFactory.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceFunctions.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceRemoteProxy.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksConnection.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientConnection.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientInterface.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/impl/ActivityClusterGraphBuilder.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/impl/JobSpecificationActivityClusterGraphGeneratorFactory.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/context/IHyracksJobletContext.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/context/IHyracksTaskContext.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/exceptions/ErrorCode.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/job/ActivityClusterId.java
A 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/job/DeployedJobSpecId.java
A 

Change in asterixdb-bad[master]: Added parameterized procedures

2017-11-07 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2046

to look at the new patch set (#9).

Change subject: Added parameterized procedures
..

Added parameterized procedures

Add tests, including concurrent/parameterized execution
delete and query procedures can both use parameters
these will use Asterix job parameters to assign at runtime
Add timeStamp index to channel results
Cleanup result code for query procedures
Prevent repetitive jobs from executing
multiple iterations concurrently

Change-Id: I999879b1cae0de179a1d3c232fa940228979f4fe
---
M asterix-bad/pom.xml
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
M asterix-bad/src/main/java/org/apache/asterix/bad/ChannelJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ChannelDropStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ProcedureDropStatement.java
R 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
R asterix-bad/src/main/resources/asterix-build-configuration.xml
M asterix-bad/src/main/resources/lang-extension/lang.txt
A 
asterix-bad/src/test/java/org/apache/asterix/bad/test/BADAsterixHyracksIntegrationUtil.java
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADExecutionTest.java
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADOptimizerTest.java
A 
asterix-bad/src/test/resources/optimizerts/queries/channel/channel-advanced.sqlpp
A 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-advanced.plan
M asterix-bad/src/test/resources/optimizerts/results/channel/channel-create.plan
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-subscribe.plan
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-unsubscribe.plan
A 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.2.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.3.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.4.sleep.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.5.query.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/ten_minute_channel/ten_minute_channel.1.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/ten_minute_channel/ten_minute_channel.4.sleep.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/ten_minute_channel/ten_minute_channel.5.query.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/concurrent_procedure/concurrent_procedure.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/concurrent_procedure/concurrent_procedure.2.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/concurrent_procedure/concurrent_procedure.3.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/concurrent_procedure/concurrent_procedure.4.query.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/delete_procedure_with_parameters/delete_procedure_with_parameters.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/delete_procedure_with_parameters/delete_procedure_with_parameters.2.query.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/delete_procedure_with_parameters/delete_procedure_with_parameters.3.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/delete_procedure_with_parameters/delete_procedure_with_parameters.4.query.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.2.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.3.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/results/channel/disasters_with_friends/disasters_with_friends.1.adm
A 
asterix-bad/src/test/resources/runtimets/results/procedure/concurrent_procedure/concurrent_procedure.4.adm
A 
asterix-bad/src/test/resources/runtimets/results/procedure/delete_procedure_with_parameters/delete_procedure_with_parameters.1.adm
A 

Change in asterixdb-bad[master]: Added parameterized procedures

2017-11-07 Thread Steven Jacobs (Code Review)
Steven Jacobs has posted comments on this change.

Change subject: Added parameterized procedures
..


Patch Set 9:

(2 comments)

https://asterix-gerrit.ics.uci.edu/#/c/2046/9/asterix-bad/src/test/java/org/apache/asterix/bad/test/BADAsterixHyracksIntegrationUtil.java
File 
asterix-bad/src/test/java/org/apache/asterix/bad/test/BADAsterixHyracksIntegrationUtil.java:

Line 52: 
"/Users/stevenjacobs/asterix/asertixdb/asterixdb/asterix-opt/asterix-bad/src/main/resources/asterix-build-configuration.xml");
> Change this.
Done


https://asterix-gerrit.ics.uci.edu/#/c/2046/9/asterix-bad/src/test/resources/runtimets/queries/channel/ten_minute_channel/ten_minute_channel.4.sleep.sqlpp
File 
asterix-bad/src/test/resources/runtimets/queries/channel/ten_minute_channel/ten_minute_channel.4.sleep.sqlpp:

Line 25: 63
> Is this because the query is evaluated at the end of the time interval?
Yes, the idea is basically "After X seconds, the channel should have executed Y 
times, producing Y results"


-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2046
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I999879b1cae0de179a1d3c232fa940228979f4fe
Gerrit-PatchSet: 9
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Ildar Absalyamov 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 
Gerrit-Reviewer: abdullah alamoudi 
Gerrit-HasComments: Yes


Change in asterixdb-bad[master]: Added parameterized procedures

2017-11-07 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2046

to look at the new patch set (#10).

Change subject: Added parameterized procedures
..

Added parameterized procedures

Add tests, including concurrent/parameterized execution
delete and query procedures can both use parameters
these will use Asterix job parameters to assign at runtime
Add timeStamp index to channel results
Cleanup result code for query procedures
Prevent repetitive jobs from executing
multiple iterations concurrently

Change-Id: I999879b1cae0de179a1d3c232fa940228979f4fe
---
M asterix-bad/pom.xml
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
M asterix-bad/src/main/java/org/apache/asterix/bad/ChannelJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ChannelDropStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ProcedureDropStatement.java
R 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
R asterix-bad/src/main/resources/asterix-build-configuration.xml
M asterix-bad/src/main/resources/lang-extension/lang.txt
A 
asterix-bad/src/test/java/org/apache/asterix/bad/test/BADAsterixHyracksIntegrationUtil.java
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADExecutionTest.java
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADOptimizerTest.java
A 
asterix-bad/src/test/resources/optimizerts/queries/channel/channel-advanced.sqlpp
A 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-advanced.plan
M asterix-bad/src/test/resources/optimizerts/results/channel/channel-create.plan
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-subscribe.plan
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-unsubscribe.plan
A 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.2.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.3.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.4.sleep.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.5.query.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/ten_minute_channel/ten_minute_channel.1.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/ten_minute_channel/ten_minute_channel.4.sleep.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/ten_minute_channel/ten_minute_channel.5.query.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/concurrent_procedure/concurrent_procedure.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/concurrent_procedure/concurrent_procedure.2.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/concurrent_procedure/concurrent_procedure.3.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/concurrent_procedure/concurrent_procedure.4.query.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/delete_procedure_with_parameters/delete_procedure_with_parameters.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/delete_procedure_with_parameters/delete_procedure_with_parameters.2.query.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/delete_procedure_with_parameters/delete_procedure_with_parameters.3.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/delete_procedure_with_parameters/delete_procedure_with_parameters.4.query.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.2.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.3.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/results/channel/disasters_with_friends/disasters_with_friends.1.adm
A 
asterix-bad/src/test/resources/runtimets/results/procedure/concurrent_procedure/concurrent_procedure.4.adm
A 
asterix-bad/src/test/resources/runtimets/results/procedure/delete_procedure_with_parameters/delete_procedure_with_parameters.1.adm
A 

Change in asterixdb[master]: [ASTERIXDB-2181][FUN] Check whether a function is usable at ...

2017-12-08 Thread Steven Jacobs (Code Review)
Steven Jacobs has abandoned this change.

Change subject: [ASTERIXDB-2181][FUN] Check whether a function is usable at 
creation
..


Abandoned

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2197
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: abandon
Gerrit-Change-Id: Ia83f9386e63072ed74ab85094e0bcc016cb1faec
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [ASTERIXDB-2181][FUN] Check whether a function is usable at ...

2017-12-08 Thread Steven Jacobs (Code Review)
Steven Jacobs has uploaded a new change for review.

  https://asterix-gerrit.ics.uci.edu/2210

Change subject: [ASTERIXDB-2181][FUN] Check whether a function is usable at 
creation
..

[ASTERIXDB-2181][FUN] Check whether a function is usable at creation

Try rewriting a function before creating it

Change-Id: I07fa527b43149b661503978d32c183296857974c
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/base/RuleCollections.java
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/ByNameToByIndexFieldAccessRule.java
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/PushAggregateIntoNestedSubplanRule.java
D 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/ResolveVariableRule.java
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/LangExpressionToPlanTranslator.java
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/SqlppExpressionToPlanTranslator.java
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
M 
asterixdb/asterix-app/src/test/java/org/apache/asterix/test/sqlpp/ParserTestExecutor.java
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/count-tweets.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/denorm-cust-order.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/orderby-desc-using-gby.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/orders-aggreg.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/q01_pricing_summary_report_nt.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/query-issue562.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/split-materialization-above-join.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/aggregate/constant-gby-agg.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/gby_partitioning_property_01.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/hints/broadcast_hint_1.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/hints/broadcast_hint_2.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/hints/broadcast_hint_3.plan
M asterixdb/asterix-app/src/test/resources/optimizerts/results/loj-core.plan
M asterixdb/asterix-app/src/test/resources/optimizerts/results/loj-sugar.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-equi-join-non-enforced/btree-equi-join-non-enforced-05.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-equi-join-non-enforced/btree-equi-join-non-enforced-06.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-equi-join-non-enforced/btree-equi-join-non-enforced-07.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-equi-join-non-enforced/btree-equi-join-non-enforced-08.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-equi-join-non-enforced/btree-equi-join-non-enforced-09.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-04.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-05.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-06.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-07.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-08.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-09.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-10.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-105.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-11.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/query-ASTERIXDB-159-3.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/query-ASTERIXDB-1671.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/query-ASTERIXDB-1806.plan
M 

Change in asterixdb-bad[master]: Prevent case where drop channel hangs indefinitely

2017-12-11 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2203

to look at the new patch set (#3).

Change subject: Prevent case where drop channel hangs indefinitely
..

Prevent case where drop channel hangs indefinitely

Change-Id: I7ed8efea454c19b2d0b86f01b196bb361d35450f
---
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ChannelDropStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ProcedureDropStatement.java
3 files changed, 43 insertions(+), 33 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/03/2203/3
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2203
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I7ed8efea454c19b2d0b86f01b196bb361d35450f
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb-bad[master]: Coordinated Change for ASTERIXDB-2170

2017-12-11 Thread Steven Jacobs (Code Review)
Steven Jacobs has uploaded a new change for review.

  https://asterix-gerrit.ics.uci.edu/2217

Change subject: Coordinated Change for ASTERIXDB-2170
..

Coordinated Change for ASTERIXDB-2170

Change-Id: I96d46b159f1705c644d595f77e5a7c9c9e925375
---
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-advanced.plan
M asterix-bad/src/test/resources/optimizerts/results/channel/channel-create.plan
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-subscribe.plan
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-unsubscribe.plan
4 files changed, 44 insertions(+), 44 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/17/2217/1

diff --git 
a/asterix-bad/src/test/resources/optimizerts/results/channel/channel-advanced.plan
 
b/asterix-bad/src/test/resources/optimizerts/results/channel/channel-advanced.plan
index 907044b..d9e613d 100644
--- 
a/asterix-bad/src/test/resources/optimizerts/results/channel/channel-advanced.plan
+++ 
b/asterix-bad/src/test/resources/optimizerts/results/channel/channel-advanced.plan
@@ -1,17 +1,17 @@
 -- NOTIFY_BROKERS  |PARTITIONED|
   -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
--- PRE_CLUSTERED_GROUP_BY[$$76, $$channelExecutionTime]  |PARTITIONED|
+-- PRE_CLUSTERED_GROUP_BY[$$133, $$channelExecutionTime]  |PARTITIONED|
 {
   -- AGGREGATE  |LOCAL|
 -- NESTED_TUPLE_SOURCE  |LOCAL|
 }
   -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
--- STABLE_SORT [$$76(ASC), $$channelExecutionTime(ASC)]  |PARTITIONED|
-  -- HASH_PARTITION_EXCHANGE [$$76, $$channelExecutionTime]  
|PARTITIONED|
+-- STABLE_SORT [$$133(ASC), $$channelExecutionTime(ASC)]  |PARTITIONED|
+  -- HASH_PARTITION_EXCHANGE [$$133, $$channelExecutionTime]  
|PARTITIONED|
 -- PRE_SORTED_DISTINCT_BY  |PARTITIONED|
   -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
--- STABLE_SORT [$$51(ASC)]  |PARTITIONED|
-  -- HASH_PARTITION_EXCHANGE [$$51]  |PARTITIONED|
+-- STABLE_SORT [$$108(ASC)]  |PARTITIONED|
+  -- HASH_PARTITION_EXCHANGE [$$108]  |PARTITIONED|
 -- STREAM_PROJECT  |PARTITIONED|
   -- COMMIT  |PARTITIONED|
 -- STREAM_PROJECT  |PARTITIONED|
@@ -21,7 +21,7 @@
 -- STREAM_PROJECT  |PARTITIONED|
   -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
 -- INSERT_DELETE  |PARTITIONED|
-  -- HASH_PARTITION_EXCHANGE [$$47]  
|PARTITIONED|
+  -- HASH_PARTITION_EXCHANGE [$$104]  
|PARTITIONED|
 -- ASSIGN  |PARTITIONED|
   -- STREAM_PROJECT  |PARTITIONED|
 -- ASSIGN  |PARTITIONED|
@@ -33,12 +33,12 @@
 -- STREAM_SELECT  
|PARTITIONED|
   -- STREAM_PROJECT  
|PARTITIONED|
 -- 
ONE_TO_ONE_EXCHANGE  |PARTITIONED|
-  -- 
HYBRID_HASH_JOIN [$$61][$$60]  |PARTITIONED|
--- 
HASH_PARTITION_EXCHANGE [$$61]  |PARTITIONED|
+  -- 
HYBRID_HASH_JOIN [$$118][$$117]  |PARTITIONED|
+-- 
HASH_PARTITION_EXCHANGE [$$118]  |PARTITIONED|
   -- 
STREAM_PROJECT  |PARTITIONED|
 -- 
ONE_TO_ONE_EXCHANGE  |PARTITIONED|
-  -- 
HYBRID_HASH_JOIN [$$59, $$57][$$52, $$53]  |PARTITIONED|
--- 
HASH_PARTITION_EXCHANGE [$$59, $$57]  |PARTITIONED|
+  -- 
HYBRID_HASH_JOIN [$$116, $$114][$$109, $$110]  |PARTITIONED|
+-- 
HASH_PARTITION_EXCHANGE [$$116, $$114]  |PARTITIONED|
   -- 
STREAM_PROJECT  |PARTITIONED|
 -- 
ASSIGN  |PARTITIONED|
   
-- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
@@ -46,24 +46,24 @@

   -- 

Change in asterixdb[master]: [ASTERIXDB-2181][FUN] Check whether a function is usable at ...

2017-12-11 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2210

to look at the new patch set (#2).

Change subject: [ASTERIXDB-2181][FUN] Check whether a function is usable at 
creation
..

[ASTERIXDB-2181][FUN] Check whether a function is usable at creation

Try rewriting a function before creating it

Change-Id: I07fa527b43149b661503978d32c183296857974c
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/base/RuleCollections.java
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/ByNameToByIndexFieldAccessRule.java
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/PushAggregateIntoNestedSubplanRule.java
D 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/ResolveVariableRule.java
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/LangExpressionToPlanTranslator.java
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/SqlppExpressionToPlanTranslator.java
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
M 
asterixdb/asterix-app/src/test/java/org/apache/asterix/test/sqlpp/ParserTestExecutor.java
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/count-tweets.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/denorm-cust-order.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/orderby-desc-using-gby.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/orders-aggreg.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/q01_pricing_summary_report_nt.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/query-issue562.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/split-materialization-above-join.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/aggregate/constant-gby-agg.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/gby_partitioning_property_01.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/hints/broadcast_hint_1.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/hints/broadcast_hint_2.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/hints/broadcast_hint_3.plan
M asterixdb/asterix-app/src/test/resources/optimizerts/results/loj-core.plan
M asterixdb/asterix-app/src/test/resources/optimizerts/results/loj-sugar.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-equi-join-non-enforced/btree-equi-join-non-enforced-05.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-equi-join-non-enforced/btree-equi-join-non-enforced-06.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-equi-join-non-enforced/btree-equi-join-non-enforced-07.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-equi-join-non-enforced/btree-equi-join-non-enforced-08.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-equi-join-non-enforced/btree-equi-join-non-enforced-09.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-04.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-05.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-06.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-07.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-08.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-09.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-10.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-105.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-11.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/query-ASTERIXDB-159-3.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/query-ASTERIXDB-1671.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/query-ASTERIXDB-1806.plan
M 

Change in asterixdb-bad[master]: Prevent case where drop channel hangs indefinitely

2017-12-11 Thread Steven Jacobs (Code Review)
Steven Jacobs has submitted this change and it was merged.

Change subject: Prevent case where drop channel hangs indefinitely
..


Prevent case where drop channel hangs indefinitely

Change-Id: I7ed8efea454c19b2d0b86f01b196bb361d35450f
---
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ChannelDropStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ProcedureDropStatement.java
3 files changed, 43 insertions(+), 33 deletions(-)

Approvals:
  Jenkins: Verified
  Xikui Wang: Looks good to me, approved



diff --git a/asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java 
b/asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
index 548f1ba..3aca099 100644
--- a/asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
+++ b/asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
@@ -19,38 +19,39 @@
 package org.apache.asterix.bad;
 
 public interface BADConstants {
-public static final String SubscriptionId = "subscriptionId";
-public static final String BrokerName = "BrokerName";
-public static final String ChannelName = "ChannelName";
-public static final String ProcedureName = "ProcedureName";
-public static final String DataverseName = "DataverseName";
-public static final String BrokerEndPoint = "BrokerEndPoint";
-public static final String DeliveryTime = "deliveryTime";
-public static final String ResultId = "resultId";
-public static final String ChannelExecutionTime = "channelExecutionTime";
-public static final String ChannelSubscriptionsType = 
"ChannelSubscriptionsType";
-public static final String ChannelResultsType = "ChannelResultsType";
-public static final String ResultsDatasetName = "ResultsDatasetName";
-public static final String SubscriptionsDatasetName = 
"SubscriptionsDatasetName";
-public static final String CHANNEL_EXTENSION_NAME = "Channel";
-public static final String PROCEDURE_KEYWORD = "Procedure";
-public static final String BROKER_KEYWORD = "Broker";
-public static final String RECORD_TYPENAME_BROKER = "BrokerRecordType";
-public static final String RECORD_TYPENAME_CHANNEL = "ChannelRecordType";
-public static final String RECORD_TYPENAME_PROCEDURE = 
"ProcedureRecordType";
-public static final String subscriptionEnding = "Subscriptions";
-public static final String resultsEnding = "Results";
-public static final String BAD_METADATA_EXTENSION_NAME = 
"BADMetadataExtension";
-public static final String BAD_DATAVERSE_NAME = "Metadata";
-public static final String Duration = "Duration";
-public static final String Function = "Function";
-public static final String FIELD_NAME_ARITY = "Arity";
-public static final String FIELD_NAME_PARAMS = "Params";
-public static final String FIELD_NAME_RETURN_TYPE = "ReturnType";
-public static final String FIELD_NAME_DEFINITION = "Definition";
-public static final String FIELD_NAME_LANGUAGE = "Language";
+String SubscriptionId = "subscriptionId";
+String BrokerName = "BrokerName";
+String ChannelName = "ChannelName";
+String ProcedureName = "ProcedureName";
+String DataverseName = "DataverseName";
+String BrokerEndPoint = "BrokerEndPoint";
+String DeliveryTime = "deliveryTime";
+String ResultId = "resultId";
+String ChannelExecutionTime = "channelExecutionTime";
+String ChannelSubscriptionsType = "ChannelSubscriptionsType";
+String ChannelResultsType = "ChannelResultsType";
+String ResultsDatasetName = "ResultsDatasetName";
+String SubscriptionsDatasetName = "SubscriptionsDatasetName";
+String CHANNEL_EXTENSION_NAME = "Channel";
+String PROCEDURE_KEYWORD = "Procedure";
+String BROKER_KEYWORD = "Broker";
+String RECORD_TYPENAME_BROKER = "BrokerRecordType";
+String RECORD_TYPENAME_CHANNEL = "ChannelRecordType";
+String RECORD_TYPENAME_PROCEDURE = "ProcedureRecordType";
+String subscriptionEnding = "Subscriptions";
+String resultsEnding = "Results";
+String BAD_METADATA_EXTENSION_NAME = "BADMetadataExtension";
+String BAD_DATAVERSE_NAME = "Metadata";
+String Duration = "Duration";
+String Function = "Function";
+String FIELD_NAME_ARITY = "Arity";
+String FIELD_NAME_PARAMS = "Params";
+String FIELD_NAME_RETURN_TYPE = "ReturnType";
+String FIELD_NAME_DEFINITION = "Definition";
+String FIELD_NAME_LANGUAGE = "Language";
 //To enable new Asterix TxnId for separate deployed job spec invocations
-public static final byte[] TRANSACTION_ID_PARAMETER_NAME = 
"TxnIdParameter".getBytes();
+byte[] TRANSACTION_ID_PARAMETER_NAME = "TxnIdParameter".getBytes();
+int EXECUTOR_TIMEOUT = 20;
 
 public enum ChannelJobType {
 REPETITIVE
diff --git 

Change in asterixdb-bad[master]: [NO ISSUE] Eliminate BAD dependency on managix

2017-12-06 Thread Steven Jacobs (Code Review)
Steven Jacobs has posted comments on this change.

Change subject: [NO ISSUE] Eliminate BAD dependency on managix
..


Patch Set 3: Code-Review+2

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2194
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I702b532a03a39ac9b53a4c1f2c4e5f3868cb7700
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Ian Maxon 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-HasComments: No


Change in asterixdb[master]: [WIP] Delete managix

2017-12-06 Thread Steven Jacobs (Code Review)
Steven Jacobs has posted comments on this change.

Change subject: [WIP] Delete managix
..


Patch Set 15:

Hi, I think along with this change we need to update the CWiki BAD Extension 
guide 
(https://cwiki.apache.org/confluence/display/ASTERIXDB/Creating+a+BAD+Cluster+of+AsterixDB).
 I wouldn't mind making the change, but I'm not actually clear on how to set up 
a BAD cluster with the new framework.

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2155
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I5c710b6ec870bedd49dd46b74ed96a3665670e9b
Gerrit-PatchSet: 15
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Ian Maxon 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Michael Blow 
Gerrit-Reviewer: Murtadha Hubail 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Till Westmann 
Gerrit-HasComments: No


Change in asterixdb[master]: [ASTERIXDB-2181][FUN] Check whether a function is usable at ...

2017-12-11 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2210

to look at the new patch set (#4).

Change subject: [ASTERIXDB-2181][FUN] Check whether a function is usable at 
creation
..

[ASTERIXDB-2181][FUN] Check whether a function is usable at creation

Try rewriting a function before creating it
Add negative tests for bad function declarations

Change-Id: I07fa527b43149b661503978d32c183296857974c
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/base/RuleCollections.java
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/ByNameToByIndexFieldAccessRule.java
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/PushAggregateIntoNestedSubplanRule.java
D 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/ResolveVariableRule.java
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/LangExpressionToPlanTranslator.java
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/SqlppExpressionToPlanTranslator.java
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
M 
asterixdb/asterix-app/src/test/java/org/apache/asterix/test/sqlpp/ParserTestExecutor.java
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/count-tweets.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/denorm-cust-order.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/orderby-desc-using-gby.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/orders-aggreg.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/q01_pricing_summary_report_nt.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/query-issue562.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/split-materialization-above-join.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/aggregate/constant-gby-agg.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/gby_partitioning_property_01.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/hints/broadcast_hint_1.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/hints/broadcast_hint_2.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/hints/broadcast_hint_3.plan
M asterixdb/asterix-app/src/test/resources/optimizerts/results/loj-core.plan
M asterixdb/asterix-app/src/test/resources/optimizerts/results/loj-sugar.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-equi-join-non-enforced/btree-equi-join-non-enforced-05.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-equi-join-non-enforced/btree-equi-join-non-enforced-06.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-equi-join-non-enforced/btree-equi-join-non-enforced-07.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-equi-join-non-enforced/btree-equi-join-non-enforced-08.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-equi-join-non-enforced/btree-equi-join-non-enforced-09.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-04.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-05.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-06.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-07.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-08.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-09.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-10.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-105.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-11.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/query-ASTERIXDB-159-3.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/query-ASTERIXDB-1671.plan
M 

Change in asterixdb[master]: [ASTERIXDB-2181][FUN] Check whether a function is usable at ...

2017-12-11 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2210

to look at the new patch set (#3).

Change subject: [ASTERIXDB-2181][FUN] Check whether a function is usable at 
creation
..

[ASTERIXDB-2181][FUN] Check whether a function is usable at creation

Try rewriting a function before creating it

Change-Id: I07fa527b43149b661503978d32c183296857974c
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/base/RuleCollections.java
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/ByNameToByIndexFieldAccessRule.java
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/PushAggregateIntoNestedSubplanRule.java
D 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/ResolveVariableRule.java
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/LangExpressionToPlanTranslator.java
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/SqlppExpressionToPlanTranslator.java
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
M 
asterixdb/asterix-app/src/test/java/org/apache/asterix/test/sqlpp/ParserTestExecutor.java
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/count-tweets.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/denorm-cust-order.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/orderby-desc-using-gby.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/orders-aggreg.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/q01_pricing_summary_report_nt.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/query-issue562.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/split-materialization-above-join.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/aggregate/constant-gby-agg.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/gby_partitioning_property_01.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/hints/broadcast_hint_1.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/hints/broadcast_hint_2.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/hints/broadcast_hint_3.plan
M asterixdb/asterix-app/src/test/resources/optimizerts/results/loj-core.plan
M asterixdb/asterix-app/src/test/resources/optimizerts/results/loj-sugar.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-equi-join-non-enforced/btree-equi-join-non-enforced-05.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-equi-join-non-enforced/btree-equi-join-non-enforced-06.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-equi-join-non-enforced/btree-equi-join-non-enforced-07.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-equi-join-non-enforced/btree-equi-join-non-enforced-08.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-equi-join-non-enforced/btree-equi-join-non-enforced-09.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-04.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-05.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-06.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-07.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-08.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-09.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-10.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-105.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-11.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/query-ASTERIXDB-159-3.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/query-ASTERIXDB-1671.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/query-ASTERIXDB-1806.plan
M 

Change in asterixdb[master]: [ASTERIXDB-2181][FUN] Check whether a function is usable at ...

2017-12-11 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2210

to look at the new patch set (#5).

Change subject: [ASTERIXDB-2181][FUN] Check whether a function is usable at 
creation
..

[ASTERIXDB-2181][FUN] Check whether a function is usable at creation

Try rewriting a function before creating it
Add negative tests for bad function declarations

Change-Id: I07fa527b43149b661503978d32c183296857974c
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/base/RuleCollections.java
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/ByNameToByIndexFieldAccessRule.java
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/PushAggregateIntoNestedSubplanRule.java
D 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/ResolveVariableRule.java
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/LangExpressionToPlanTranslator.java
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/SqlppExpressionToPlanTranslator.java
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
M 
asterixdb/asterix-app/src/test/java/org/apache/asterix/test/sqlpp/ParserTestExecutor.java
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/count-tweets.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/denorm-cust-order.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/orderby-desc-using-gby.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/orders-aggreg.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/q01_pricing_summary_report_nt.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/query-issue562.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/queries_sqlpp/split-materialization-above-join.sqlpp
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/aggregate/constant-gby-agg.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/gby_partitioning_property_01.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/hints/broadcast_hint_1.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/hints/broadcast_hint_2.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/hints/broadcast_hint_3.plan
M asterixdb/asterix-app/src/test/resources/optimizerts/results/loj-core.plan
M asterixdb/asterix-app/src/test/resources/optimizerts/results/loj-sugar.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-equi-join-non-enforced/btree-equi-join-non-enforced-05.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-equi-join-non-enforced/btree-equi-join-non-enforced-06.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-equi-join-non-enforced/btree-equi-join-non-enforced-07.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-equi-join-non-enforced/btree-equi-join-non-enforced-08.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-equi-join-non-enforced/btree-equi-join-non-enforced-09.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-04.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-05.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-06.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-07.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-08.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-09.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-10.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-105.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/open-index-non-enforced/btree-index-non-enforced/btree-index-non-enforced-11.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/query-ASTERIXDB-159-3.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/query-ASTERIXDB-1671.plan
M 

Change in asterixdb-bad[master]: Prevent case where drop channel hangs indefinitely

2017-12-08 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2203

to look at the new patch set (#2).

Change subject: Prevent case where drop channel hangs indefinitely
..

Prevent case where drop channel hangs indefinitely

Change-Id: I7ed8efea454c19b2d0b86f01b196bb361d35450f
---
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ChannelDropStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ProcedureDropStatement.java
3 files changed, 43 insertions(+), 33 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/03/2203/2
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2203
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I7ed8efea454c19b2d0b86f01b196bb361d35450f
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb[master]: [ASTERIXDB-1911][HYR,RT,CLUS] Fixes and Improvements for Pre...

2017-10-25 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2045

to look at the new patch set (#12).

Change subject: [ASTERIXDB-1911][HYR,RT,CLUS] Fixes and Improvements for 
PreDistributed Jobs
..

[ASTERIXDB-1911][HYR,RT,CLUS] Fixes and Improvements for PreDistributed Jobs

Enable job executions to have a map of job parameters
Add an Asterix function to retrieve these parameters
which are can be assigned when the job is run, e.g. for PreDistributed jobs
Allow PreDistributed jobs to have new Asterix/Hyracks jobIds for each execution
Allow simultaneous execution of one PreDistributed Job

Change-Id: I8f493c1fa977d07dfe8a875f9ebe9515d01d1473
---
M asterixdb/asterix-active/pom.xml
A 
asterixdb/asterix-active/src/main/java/org/apache/asterix/active/PredistributedJobService.java
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
A 
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/IJobEventListenerFactory.java
M 
asterixdb/asterix-lang-common/src/main/java/org/apache/asterix/lang/common/statement/CreateFunctionStatement.java
M 
asterixdb/asterix-om/src/main/java/org/apache/asterix/om/functions/BuiltinFunctions.java
M 
asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/AbstractUnaryStringStringEval.java
A 
asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/GetJobParameterDescriptor.java
M 
asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/functions/FunctionCollection.java
M 
asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/job/listener/JobEventListenerFactory.java
M 
asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/job/listener/MultiTransactionJobletEventListenerFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/LockThenSearchOperationCallbackFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/PrimaryIndexInstantSearchOperationCallbackFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/PrimaryIndexModificationOperationCallbackFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/PrimaryIndexSearchOperationCallbackFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/SecondaryIndexModificationOperationCallbackFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/TempDatasetPrimaryIndexModificationOperationCallbackFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/TempDatasetSecondaryIndexModificationOperationCallbackFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/UpsertOperationCallbackFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/runtime/CommitRuntimeFactory.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceFunctions.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceRemoteProxy.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksConnection.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientConnection.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientInterface.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/impl/ActivityClusterGraphBuilder.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/impl/JobSpecificationActivityClusterGraphGeneratorFactory.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/context/IHyracksJobletContext.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/context/IHyracksTaskContext.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/job/ActivityClusterId.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/job/IActivityClusterGraphGeneratorFactory.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/job/IJobletEventListenerFactory.java
A 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/job/JobParameterByteStore.java
A 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/job/PreDistributedId.java
A 

Change in asterixdb-bad[master]: Added parameterized procedures

2017-10-25 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2046

to look at the new patch set (#7).

Change subject: Added parameterized procedures
..

Added parameterized procedures

Add tests, including concurrent/parameterized execution
delete and query procedures can both use parameters
these will use Asterix job parameters to assign at runtime
Add timeStamp index to channel results
Cleanup result code for query procedures
Prevent repetitive jobs from executing
multiple iterations concurrently

Change-Id: I999879b1cae0de179a1d3c232fa940228979f4fe
---
M asterix-bad/pom.xml
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
M asterix-bad/src/main/java/org/apache/asterix/bad/ChannelJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ChannelDropStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ProcedureDropStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/PrecompiledJobEventListener.java
R asterix-bad/src/main/resources/asterix-build-configuration.xml
M asterix-bad/src/main/resources/lang-extension/lang.txt
A 
asterix-bad/src/test/java/org/apache/asterix/bad/test/BADAsterixHyracksIntegrationUtil.java
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADExecutionTest.java
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADOptimizerTest.java
A 
asterix-bad/src/test/resources/optimizerts/queries/channel/channel-advanced.sqlpp
A 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-advanced.plan
M asterix-bad/src/test/resources/optimizerts/results/channel/channel-create.plan
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-subscribe.plan
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-unsubscribe.plan
A 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.2.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.3.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.4.sleep.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.5.query.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/ten_minute_channel/ten_minute_channel.1.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/ten_minute_channel/ten_minute_channel.4.sleep.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/ten_minute_channel/ten_minute_channel.5.query.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/concurrent_procedure/concurrent_procedure.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/concurrent_procedure/concurrent_procedure.2.update.sqlpp
C 
asterix-bad/src/test/resources/runtimets/queries/procedure/concurrent_procedure/concurrent_procedure.3.ddl.sqlpp
C 
asterix-bad/src/test/resources/runtimets/queries/procedure/concurrent_procedure/concurrent_procedure.4.query.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/delete_procedure_with_parameters/delete_procedure_with_parameters.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/delete_procedure_with_parameters/delete_procedure_with_parameters.2.query.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/delete_procedure_with_parameters/delete_procedure_with_parameters.3.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/delete_procedure_with_parameters/delete_procedure_with_parameters.4.query.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/insert_procedure/insert_procedure.5.sleep.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/insert_procedure/insert_procedure.6.ddl.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/insert_procedure/insert_procedure.7.query.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.2.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.3.update.sqlpp
A 

Change in asterixdb-bad[master]: Added parameterized procedures

2017-10-25 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2046

to look at the new patch set (#6).

Change subject: Added parameterized procedures
..

Added parameterized procedures

Add tests, including concurrent/parameterized execution
delete and query procedures can both use parameters
these will use Asterix job parameters to assign at runtime
Add timeStamp index to channel results
Cleanup result code for query procedures
Prevent repetitive jobs from executing
multiple iterations concurrently

Change-Id: I999879b1cae0de179a1d3c232fa940228979f4fe
---
M asterix-bad/pom.xml
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
M asterix-bad/src/main/java/org/apache/asterix/bad/ChannelJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ChannelDropStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ProcedureDropStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/PrecompiledJobEventListener.java
R asterix-bad/src/main/resources/asterix-build-configuration.xml
M asterix-bad/src/main/resources/lang-extension/lang.txt
A 
asterix-bad/src/test/java/org/apache/asterix/bad/test/BADAsterixHyracksIntegrationUtil.java
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADExecutionTest.java
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADOptimizerTest.java
A 
asterix-bad/src/test/resources/optimizerts/queries/channel/channel-advanced.sqlpp
A 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-advanced.plan
M asterix-bad/src/test/resources/optimizerts/results/channel/channel-create.plan
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-subscribe.plan
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-unsubscribe.plan
A 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.2.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.3.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.4.sleep.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.5.query.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/ten_minute_channel/ten_minute_channel.1.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/ten_minute_channel/ten_minute_channel.4.sleep.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/ten_minute_channel/ten_minute_channel.5.query.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/concurrent_procedure/concurrent_procedure.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/concurrent_procedure/concurrent_procedure.2.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/concurrent_procedure/concurrent_procedure.3.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/concurrent_procedure/concurrent_procedure.4.query.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/delete_procedure_with_parameters/delete_procedure_with_parameters.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/delete_procedure_with_parameters/delete_procedure_with_parameters.2.query.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/delete_procedure_with_parameters/delete_procedure_with_parameters.3.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/delete_procedure_with_parameters/delete_procedure_with_parameters.4.query.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.2.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.3.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/results/channel/disasters_with_friends/disasters_with_friends.1.adm
A 
asterix-bad/src/test/resources/runtimets/results/procedure/concurrent_procedure/concurrent_procedure.4.adm
A 
asterix-bad/src/test/resources/runtimets/results/procedure/delete_procedure_with_parameters/delete_procedure_with_parameters.1.adm
A 

Change in asterixdb[master]: [ASTERIXDB-1911][HYR,RT,CLUS] Fixes and Improvements for Pre...

2017-10-25 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2045

to look at the new patch set (#11).

Change subject: [ASTERIXDB-1911][HYR,RT,CLUS] Fixes and Improvements for 
PreDistributed Jobs
..

[ASTERIXDB-1911][HYR,RT,CLUS] Fixes and Improvements for PreDistributed Jobs

Enable job executions to have a map of job parameters
Add an Asterix function to retrieve these parameters
which are can be assigned when the job is run, e.g. for PreDistributed jobs
Allow PreDistributed jobs to have new Asterix/Hyracks jobIds for each execution
Allow simultaneous execution of one PreDistributed Job

Change-Id: I8f493c1fa977d07dfe8a875f9ebe9515d01d1473
---
M asterixdb/asterix-active/pom.xml
A 
asterixdb/asterix-active/src/main/java/org/apache/asterix/active/PredistributedJobService.java
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
A 
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/IJobEventListenerFactory.java
M 
asterixdb/asterix-lang-common/src/main/java/org/apache/asterix/lang/common/statement/CreateFunctionStatement.java
M 
asterixdb/asterix-om/src/main/java/org/apache/asterix/om/functions/BuiltinFunctions.java
M 
asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/AbstractUnaryStringStringEval.java
A 
asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/GetJobParameterDescriptor.java
M 
asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/functions/FunctionCollection.java
M 
asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/job/listener/JobEventListenerFactory.java
M 
asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/job/listener/MultiTransactionJobletEventListenerFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/LockThenSearchOperationCallbackFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/PrimaryIndexInstantSearchOperationCallbackFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/PrimaryIndexModificationOperationCallbackFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/PrimaryIndexSearchOperationCallbackFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/SecondaryIndexModificationOperationCallbackFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/TempDatasetPrimaryIndexModificationOperationCallbackFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/TempDatasetSecondaryIndexModificationOperationCallbackFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/UpsertOperationCallbackFactory.java
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/runtime/CommitRuntimeFactory.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceFunctions.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceRemoteProxy.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksConnection.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientConnection.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientInterface.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/impl/ActivityClusterGraphBuilder.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/impl/JobSpecificationActivityClusterGraphGeneratorFactory.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/context/IHyracksJobletContext.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/context/IHyracksTaskContext.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/job/ActivityClusterId.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/job/IActivityClusterGraphGeneratorFactory.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/job/IJobletEventListenerFactory.java
A 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/job/JobParameterByteStore.java
A 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/job/PreDistributedId.java
A 

Change in asterixdb[master]: [ASTERIXDB-2136][FUN] Prevent blind result write in external...

2017-10-20 Thread Steven Jacobs (Code Review)
Steven Jacobs has posted comments on this change.

Change subject: [ASTERIXDB-2136][FUN] Prevent blind result write in external UDF
..


Patch Set 2:

(2 comments)

Just one question

https://asterix-gerrit.ics.uci.edu/#/c/2082/2/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/generator/DataGenerator.java
File 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/generator/DataGenerator.java:

PS2, Line 424: buffer.append("#" + jargonTerm);
Is this related to this change, or fixing a bug simultaneously?


https://asterix-gerrit.ics.uci.edu/#/c/2082/2/asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/AddHashTagsFunction.java
File 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/AddHashTagsFunction.java:

Line 80: 
Same question here


-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2082
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ifce4a9e882febe4529f5c53e54db78e0cfa326fe
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: abdullah alamoudi 
Gerrit-HasComments: Yes


Change in asterixdb[master]: [ASTERIXDB-2181][FUN] Check whether a function is usable at ...

2017-12-20 Thread Steven Jacobs (Code Review)
Steven Jacobs has uploaded a new change for review.

  https://asterix-gerrit.ics.uci.edu/2242

Change subject: [ASTERIXDB-2181][FUN] Check whether a function is usable at 
creation
..

[ASTERIXDB-2181][FUN] Check whether a function is usable at creation

Verify rewrite step on a function before allowing creation
Add negative tests for bad function declarations

Change-Id: I262b8cfd29117c18f452973fed147696b83f1249
---
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries/cross-dataverse/cross-dv11/cross-dv11.1.ddl.aql
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries/cross-dataverse/cross-dv13/cross-dv13.1.ddl.aql
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries/cross-dataverse/cross-dv13/cross-dv13.2.update.aql
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries/cross-dataverse/cross-dv13/cross-dv13.3.query.aql
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries/cross-dataverse/cross-dv16/cross-dv16.1.ddl.aql
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries/cross-dataverse/cross-dv16/cross-dv16.2.update.aql
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries/cross-dataverse/cross-dv16/cross-dv16.3.query.aql
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries/user-defined-functions/udf17/udf17.1.ddl.aql
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries/user-defined-functions/udf26/udf26.1.ddl.aql
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries/user-defined-functions/udf26/udf26.2.update.aql
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries/user-defined-functions/udf26/udf26.3.query.aql
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/cross-dataverse/cross-dv11/cross-dv11.1.ddl.sqlpp
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/cross-dataverse/cross-dv13/cross-dv13.1.ddl.sqlpp
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/cross-dataverse/cross-dv13/cross-dv13.2.update.sqlpp
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/cross-dataverse/cross-dv13/cross-dv13.3.query.sqlpp
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/cross-dataverse/cross-dv16/cross-dv16.1.ddl.sqlpp
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/cross-dataverse/cross-dv16/cross-dv16.2.update.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/user-defined-functions/bad-function-ddl-1/bad-function-ddl-1.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/user-defined-functions/bad-function-ddl-10/bad-function-ddl-10.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/user-defined-functions/bad-function-ddl-2/bad-function-ddl-2.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/user-defined-functions/bad-function-ddl-3/bad-function-ddl-3.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/user-defined-functions/bad-function-ddl-4/bad-function-ddl-4.1.ddl.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/user-defined-functions/bad-function-ddl-5/bad-function-ddl-5.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/user-defined-functions/bad-function-ddl-6/bad-function-ddl-6.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/user-defined-functions/bad-function-ddl-7/bad-function-ddl-7.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/user-defined-functions/bad-function-ddl-8/bad-function-ddl-8.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/user-defined-functions/bad-function-ddl-9/bad-function-ddl-9.1.ddl.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/user-defined-functions/udf17/udf17.1.ddl.sqlpp
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/user-defined-functions/udf26/udf26.1.ddl.sqlpp
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/user-defined-functions/udf26/udf26.2.update.sqlpp
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/user-defined-functions/udf26/udf26.3.query.sqlpp
D 
asterixdb/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/cross-dataverse/cross-dv13/cross-dv13.1.ast
D 
asterixdb/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/cross-dataverse/cross-dv13/cross-dv13.2.ast
D 
asterixdb/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/cross-dataverse/cross-dv13/cross-dv13.3.ast
D 
asterixdb/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/cross-dataverse/cross-dv16/cross-dv16.1.ast
D 
asterixdb/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/cross-dataverse/cross-dv16/cross-dv16.2.ast
D 

Change in asterixdb[master]: [ASTERIXDB-2181][FUN] Check whether a function is usable at ...

2017-12-20 Thread Steven Jacobs (Code Review)
Steven Jacobs has abandoned this change.

Change subject: [ASTERIXDB-2181][FUN] Check whether a function is usable at 
creation
..


Abandoned

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2210
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: abandon
Gerrit-Change-Id: I07fa527b43149b661503978d32c183296857974c
Gerrit-PatchSet: 5
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [ASTERIXDB-2386][CLUS] Allow extension of the global recover...

2018-05-14 Thread Steven Jacobs (Code Review)
Steven Jacobs has uploaded a new change for review.

  https://asterix-gerrit.ics.uci.edu/2640

Change subject: [ASTERIXDB-2386][CLUS] Allow extension of the global recovery 
manager
..

[ASTERIXDB-2386][CLUS] Allow extension of the global recovery manager

Allow the Asterix GlobalRecoveryManager to be extended
Add an hcc method to reset the deployed job id factory

Change-Id: I1213e702a77ededde18ee0b50bc105212f43480d
---
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/cc/CCExtensionManager.java
A 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/cc/IGlobalRecoveryExtension.java
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/CCApplication.java
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/GlobalRecoveryManager.java
M 
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/IExtension.java
M 
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/cluster/IGlobalRecoveryManager.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceFunctions.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceRemoteProxy.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksConnection.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientConnection.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientInterface.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/job/DeployedJobSpecIdFactory.java
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/ClientInterfaceIPCI.java
13 files changed, 146 insertions(+), 15 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/40/2640/1

diff --git 
a/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/cc/CCExtensionManager.java
 
b/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/cc/CCExtensionManager.java
index 1ba418a..9ad9dd7 100644
--- 
a/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/cc/CCExtensionManager.java
+++ 
b/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/cc/CCExtensionManager.java
@@ -28,12 +28,14 @@
 import org.apache.asterix.app.translator.DefaultStatementExecutorFactory;
 import org.apache.asterix.common.api.ExtensionId;
 import org.apache.asterix.common.api.IExtension;
+import org.apache.asterix.common.cluster.IGlobalRecoveryManager;
 import org.apache.asterix.common.config.AsterixExtension;
 import org.apache.asterix.common.exceptions.ErrorCode;
 import org.apache.asterix.common.exceptions.RuntimeDataException;
 import org.apache.asterix.compiler.provider.AqlCompilationProvider;
 import org.apache.asterix.compiler.provider.ILangCompilationProvider;
 import org.apache.asterix.compiler.provider.SqlppCompilationProvider;
+import org.apache.asterix.hyracks.bootstrap.GlobalRecoveryManager;
 import org.apache.asterix.om.functions.IFunctionExtensionManager;
 import org.apache.asterix.om.functions.IFunctionManager;
 import org.apache.asterix.runtime.functions.FunctionCollection;
@@ -53,6 +55,7 @@
 private final ILangCompilationProvider aqlCompilationProvider;
 private final ILangCompilationProvider sqlppCompilationProvider;
 private final IFunctionManager functionManager;
+private final IGlobalRecoveryManager globalRecoveryManager;
 private transient IStatementExecutorFactory statementExecutorFactory;
 
 /**
@@ -71,6 +74,7 @@
 Pair sqlppcp = null;
 Pair fm = null;
 IStatementExecutorExtension see = null;
+IGlobalRecoveryManager grm = null;
 if (list != null) {
 Set extensionIds = new HashSet<>();
 for (AsterixExtension extensionConf : list) {
@@ -89,6 +93,9 @@
 sqlppcp = 
ExtensionUtil.extendLangCompilationProvider(Language.SQLPP, sqlppcp, le);
 fm = ExtensionUtil.extendFunctionManager(fm, le);
 break;
+case RECOVERY:
+grm = ((IGlobalRecoveryExtension) 
extension).getGlobalRecoveryManager();
+break;
 default:
 break;
 }
@@ -99,6 +106,7 @@
 this.sqlppCompilationProvider = sqlppcp == null ? new 
SqlppCompilationProvider() : sqlppcp.second;
 this.functionManager =
 fm == null ? new 
FunctionManager(FunctionCollection.createDefaultFunctionCollection()) : 
fm.second;
+this.globalRecoveryManager = grm;
 }
 
 /** @deprecated use getStatementExecutorFactory instead */
@@ -127,6 +135,13 @@
 }
 

Change in asterixdb-bad[master]: Redeploy channels and procedures during recovery

2018-05-14 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2641

to look at the new patch set (#2).

Change subject: Redeploy channels and procedures during recovery
..

Redeploy channels and procedures during recovery

Use the GlobalRecoveryManager extension to redeploy channels/procedures
Restart execution of channels during recovery
Some code cleanup

Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
---
M asterix-bad/pom.xml
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
M asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/BADMetadataRecordTypes.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Procedure.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/ProcedureTupleTranslator.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADGlobalRecoveryManager.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADRecoveryExtension.java
M asterix-bad/src/main/resources/cc.conf
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADListenerTest.java
M 
asterix-bad/src/test/resources/runtimets/results/procedure/create_procedure_check_metadata/create_procedure_check_metadata.1.adm
16 files changed, 333 insertions(+), 138 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/41/2641/2
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2641
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb[master]: [ASTERIXDB-2386][CLUS] Allow extension of the global recover...

2018-05-14 Thread Steven Jacobs (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2640

to look at the new patch set (#2).

Change subject: [ASTERIXDB-2386][CLUS] Allow extension of the global recovery 
manager
..

[ASTERIXDB-2386][CLUS] Allow extension of the global recovery manager

Allow the Asterix GlobalRecoveryManager to be extended
Add an hcc method to reset the deployed job id factory

Change-Id: I1213e702a77ededde18ee0b50bc105212f43480d
---
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/cc/CCExtensionManager.java
A 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/cc/IGlobalRecoveryExtension.java
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/CCApplication.java
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/GlobalRecoveryManager.java
M 
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/IExtension.java
M 
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/cluster/IGlobalRecoveryManager.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceFunctions.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceRemoteProxy.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksConnection.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientConnection.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientInterface.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/job/DeployedJobSpecIdFactory.java
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/ClientInterfaceIPCI.java
13 files changed, 146 insertions(+), 15 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/40/2640/2
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2640
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I1213e702a77ededde18ee0b50bc105212f43480d
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb-bad[master]: Redeploy channels and procedures during recovery

2018-05-14 Thread Steven Jacobs (Code Review)
Steven Jacobs has uploaded a new change for review.

  https://asterix-gerrit.ics.uci.edu/2641

Change subject: Redeploy channels and procedures during recovery
..

Redeploy channels and procedures during recovery

Use the GlobalRecoveryManager extension to redeploy channels/procedures
Restart execution of channels during recovery
Some code cleanup

Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
---
M asterix-bad/pom.xml
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
M asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/BADMetadataRecordTypes.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Procedure.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/ProcedureTupleTranslator.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADGlobalRecoveryManager.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADRecoveryExtension.java
M asterix-bad/src/main/resources/cc.conf
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADListenerTest.java
M 
asterix-bad/src/test/resources/runtimets/results/procedure/create_procedure_check_metadata/create_procedure_check_metadata.1.adm
16 files changed, 328 insertions(+), 138 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/41/2641/1

diff --git a/asterix-bad/pom.xml b/asterix-bad/pom.xml
index 6f5cd32..51aba74 100644
--- a/asterix-bad/pom.xml
+++ b/asterix-bad/pom.xml
@@ -271,6 +271,11 @@
 
 
   org.apache.hyracks
+  hyracks-control-common
+  ${hyracks.version}
+
+
+  org.apache.hyracks
   algebricks-runtime
 
 
diff --git a/asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java 
b/asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
index d422663..0467f6e 100644
--- a/asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
+++ b/asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
@@ -47,7 +47,7 @@
 String FIELD_NAME_ARITY = "Arity";
 String FIELD_NAME_DEPENDENCIES = "Dependencies";
 String FIELD_NAME_PARAMS = "Params";
-String FIELD_NAME_RETURN_TYPE = "ReturnType";
+String FIELD_NAME_TYPE = "Type";
 String FIELD_NAME_DEFINITION = "Definition";
 String FIELD_NAME_LANGUAGE = "Language";
 String FIELD_NAME_BODY = "Body";
diff --git 
a/asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java 
b/asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
index e326ce6..8090fb8 100644
--- a/asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
+++ b/asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
@@ -21,6 +21,7 @@
 import java.io.StringReader;
 import java.time.Instant;
 import java.util.Date;
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.concurrent.Executors;
@@ -51,6 +52,7 @@
 import org.apache.asterix.translator.IStatementExecutor;
 import org.apache.hyracks.api.client.IHyracksClientConnection;
 import org.apache.hyracks.api.dataset.IHyracksDataset;
+import org.apache.hyracks.api.dataset.ResultSetId;
 import org.apache.hyracks.api.job.DeployedJobSpecId;
 import org.apache.hyracks.api.job.JobId;
 import org.apache.hyracks.api.job.JobSpecification;
@@ -66,6 +68,19 @@
 private static final int POOL_SIZE = 1;
 
 private static final long millisecondTimeout = 
BADConstants.EXECUTOR_TIMEOUT * 1000;
+
+public static void setupExecutorJob(EntityId entityId, JobSpecification 
channeljobSpec,
+IHyracksClientConnection hcc, DeployedJobSpecEventListener 
listener, ITxnIdFactory txnIdFactory,
+String duration) throws Exception {
+if (channeljobSpec != null) {
+
channeljobSpec.setProperty(ActiveNotificationHandler.ACTIVE_ENTITY_PROPERTY_NAME,
 entityId);
+DeployedJobSpecId destributedId = 
hcc.deployJobSpec(channeljobSpec);
+ScheduledExecutorService ses = 
startRepetitiveDeployedJobSpec(destributedId, hcc, findPeriod(duration),
+new HashMap<>(), entityId, txnIdFactory, listener);
+listener.storeDistributedInfo(destributedId, ses);
+}
+
+}
 
 //Starts running a deployed job specification periodically with an 
interval of "period" seconds
 public static ScheduledExecutorService 

Change in asterixdb-bad[master]: Allow BAD jobs to update their specifications to use new ind...

2018-05-07 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2620

to look at the new patch set (#8).

Change subject: Allow BAD jobs to update their specifications to use new indexes
..

Allow BAD jobs to update their specifications to use new indexes

- storage format changes: new field for Channel body

This changes uses the Asterix upsertDeployedJobSpec to
recompile and update the channel job when new indexes are
created.

Added test case
Moved methods from Asterix DeployedJobService to BADJobService

Change-Id: If0a4d37a5b91063fcb1673dbfd008c140ed54ae6
---
M asterix-bad/pom.xml
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
A asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
D asterix-bad/src/main/java/org/apache/asterix/bad/ChannelJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/BADMetadataRecordTypes.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Channel.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/ChannelTupleTranslator.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Procedure.java
M asterix-bad/src/main/resources/lang-extension/lang.txt
A asterix-bad/src/test/java/org/apache/asterix/bad/test/BADListenerTest.java
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.2.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.3.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.4.sleep.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.5.query.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.6.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/drop_index/drop_index.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/results/channel/add_index/add_index.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/channel/create_channel_check_metadata/create_channel_check_metadata.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/channel/drop_channel_check_metadata/drop_channel_check_metadata.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/procedure/create_procedure_check_metadata/create_procedure_check_metadata.1.adm
M asterix-bad/src/test/resources/runtimets/testsuite.xml
27 files changed, 1,349 insertions(+), 307 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/20/2620/8
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2620
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: If0a4d37a5b91063fcb1673dbfd008c140ed54ae6
Gerrit-PatchSet: 8
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb-bad[master]: Allow BAD jobs to update their specifications to use new ind...

2018-05-07 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2620

to look at the new patch set (#9).

Change subject: Allow BAD jobs to update their specifications to use new indexes
..

Allow BAD jobs to update their specifications to use new indexes

- storage format changes: new field for Channel body

This changes uses the Asterix upsertDeployedJobSpec to
recompile and update the channel job when new indexes are
created.

Added test case
Moved methods from Asterix DeployedJobService to BADJobService

Change-Id: If0a4d37a5b91063fcb1673dbfd008c140ed54ae6
---
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
A asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
D asterix-bad/src/main/java/org/apache/asterix/bad/ChannelJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/BADMetadataRecordTypes.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Channel.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/ChannelTupleTranslator.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Procedure.java
M asterix-bad/src/main/resources/lang-extension/lang.txt
A asterix-bad/src/test/java/org/apache/asterix/bad/test/BADListenerTest.java
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.2.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.3.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.4.sleep.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.5.query.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.6.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/drop_index/drop_index.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/results/channel/add_index/add_index.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/channel/create_channel_check_metadata/create_channel_check_metadata.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/channel/drop_channel_check_metadata/drop_channel_check_metadata.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/procedure/create_procedure_check_metadata/create_procedure_check_metadata.1.adm
M asterix-bad/src/test/resources/runtimets/testsuite.xml
26 files changed, 1,343 insertions(+), 307 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/20/2620/9
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2620
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: If0a4d37a5b91063fcb1673dbfd008c140ed54ae6
Gerrit-PatchSet: 9
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb-bad[master]: Allow BAD jobs to update their specifications to use new ind...

2018-05-07 Thread Steven Jacobs (Code Review)
Steven Jacobs has posted comments on this change.

Change subject: Allow BAD jobs to update their specifications to use new indexes
..


Patch Set 5:

(19 comments)

https://asterix-gerrit.ics.uci.edu/#/c/2620/3/asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
File asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java:

PS3, Line 45: Duration";
: String Function = "Function";
: String FIELD_NAME_ARITY = "Arity";
: String FIELD_NAME_DEPENDENCIES = "Dependencies";
: String FIELD_NAME_PARAMS = "Params";
: String FIELD_NAME_RETURN_TYPE = "ReturnType";
: String FIELD_NAME_DEFINITION = "Definition";
: String FIELD_NAME_LANGUAGE = "Language";
: String FIELD_NAME_BODY = "Body";
> It would be better to add prefixes to these names so we would know what the
Given that they are "field names" and used for specific metadata, I think it's 
clear. Also we would have to replace one variable with two if we specified 
channel vs procedure. So my vote is for them to stay, but I can change it if 
you still think so.


https://asterix-gerrit.ics.uci.edu/#/c/2620/3/asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
File asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java:

PS3, Line 71: period, 
> should this be period?
Done


Line 91: public static boolean 
runDeployedJobSpecCheckPeriod(DeployedJobSpecId distributedId, 
IHyracksClientConnection hcc,
> this name is misleading. it doesn't actually run the repetitive job but mak
Done


Line 115: 
String.valueOf(txnIdFactory.create().getId()).getBytes());
> I don't think it's a good way to do locking like this... Maybe refactor the
Completely re-did this stuff to make sense


Line 121: long executionMilliseconds = Instant.now().toEpochMilli() - 
startTime;
> will this ever be true given the statements above?
Completely re-did this stuff to make sense


Line 210: metadataProvider.getConfig().put(ss.getPropName(), 
ss.getPropValue());
> same here
Completely re-did this stuff to make sense


Line 233: 
> which means the channel is actually not active?
Yes, this should actually never happen but I think it's better to log a message 
then break the control flow if there is some crazy situation where this happens.


https://asterix-gerrit.ics.uci.edu/#/c/2620/3/asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
File 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java:

Line 142: private void throwErrorIfDatasetUsed(MetadataTransactionContext 
mdTxnCtx, String dataverse, String dataset)
> change this to checkIfDatasetUsed and return true if used. Then throw an ex
If we do it this way, the error message won't be as informative. The way I did 
it, the error says exactly what entity uses the dataset.


Line 155: private void throwErrorIfFunctionUsed(MetadataTransactionContext 
mdTxnCtx, String dataverse, String function,
> same
same.


Line 178: throwErrorIfDatasetUsed(mdTxnCtx, dvId, dsId.getValue());
> if (checkIfDatasetUsed(xxx)) throw new CompliationException();
same.


Line 200: for (Dataverse dv : dataverseList) {
> I guess you chose this it's because the channel and procedure can be much m
Channels and Procedures don't directly depend on the datasets used by their 
function calls, but rather they depend through chaining (e.g. channel depends 
on function which depends on dataset). This is the way Mike recommended 
dependencies to be. I'm not sure if there is any smarter solution until Asterix 
finally has Metadata dependencies in place, in which case most of this code 
will be thrown out.


https://asterix-gerrit.ics.uci.edu/#/c/2620/3/asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
File 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java:

Line 115: Pattern variableReference = Pattern.compile("([^\\w\\d])" 
+ var.getVar() + "([^\\w\\d]|$)");
> I think you should be able to use let x = get-job-param("$x") to do the tri
I think from a compilation standpoint it's better this way. I've seen lots of 
issues with "let" not optimizing in a good way. I know you're currently working 
in another branch on getting get-job-param to compile correctly, so maybe this 
should be visited in that branch as well?


https://asterix-gerrit.ics.uci.edu/#/c/2620/3/asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Channel.java
File asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Channel.java:

Line 40: private final String channelBody;
> ->channelBody?
Done


https://asterix-gerrit.ics.uci.edu/#/c/2620/3/asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
File 

Change in asterixdb-bad[master]: Allow BAD jobs to update their specifications to use new ind...

2018-05-07 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2620

to look at the new patch set (#7).

Change subject: Allow BAD jobs to update their specifications to use new indexes
..

Allow BAD jobs to update their specifications to use new indexes

- storage format changes: new field for Channel body

This changes uses the Asterix upsertDeployedJobSpec to
recompile and update the channel job when new indexes are
created.

Added test case
Moved methods from Asterix DeployedJobService to BADJobService

Change-Id: If0a4d37a5b91063fcb1673dbfd008c140ed54ae6
---
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
A asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
D asterix-bad/src/main/java/org/apache/asterix/bad/ChannelJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/BADMetadataRecordTypes.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Channel.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/ChannelTupleTranslator.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Procedure.java
M asterix-bad/src/main/resources/lang-extension/lang.txt
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.2.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.3.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.4.sleep.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.5.query.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.6.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/drop_index/drop_index.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/results/channel/add_index/add_index.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/channel/create_channel_check_metadata/create_channel_check_metadata.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/channel/drop_channel_check_metadata/drop_channel_check_metadata.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/procedure/create_procedure_check_metadata/create_procedure_check_metadata.1.adm
M asterix-bad/src/test/resources/runtimets/testsuite.xml
25 files changed, 1,257 insertions(+), 307 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/20/2620/7
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2620
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: If0a4d37a5b91063fcb1673dbfd008c140ed54ae6
Gerrit-PatchSet: 7
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb[master]: [ASTERIXDB-2373][HYR,CLUS] Allow upsert of JobSpecs for Depl...

2018-04-27 Thread Steven Jacobs (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2619

to look at the new patch set (#2).

Change subject: [ASTERIXDB-2373][HYR,CLUS] Allow upsert of JobSpecs for 
Deployed Jobs
..

[ASTERIXDB-2373][HYR,CLUS] Allow upsert of JobSpecs for Deployed Jobs

- user model changes: none
- storage format changes: none
- interface changes: new methods added

This change adds the upsertDeployedJobSpec method, enabling
a Deployed Job to update its Job Specification.

Added call in test.
Removed DeployedJobService (moved methods to BAD codebase).

Change-Id: I01fd5d43896d520fe75e1007d7bd39324f6f6e4b
---
D 
asterixdb/asterix-active/src/main/java/org/apache/asterix/active/DeployedJobService.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceFunctions.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceRemoteProxy.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksConnection.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientConnection.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientInterface.java
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/ClientInterfaceIPCI.java
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/DeployedJobSpecStore.java
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/work/DeployJobSpecWork.java
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-common/src/main/java/org/apache/hyracks/control/common/base/INodeController.java
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-common/src/main/java/org/apache/hyracks/control/common/ipc/CCNCFunctions.java
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-common/src/main/java/org/apache/hyracks/control/common/ipc/NodeControllerRemoteProxy.java
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-nc/src/main/java/org/apache/hyracks/control/nc/NodeControllerIPCI.java
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-nc/src/main/java/org/apache/hyracks/control/nc/NodeControllerService.java
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-nc/src/main/java/org/apache/hyracks/control/nc/work/DeployJobSpecWork.java
M 
hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/DeployedJobSpecsTest.java
16 files changed, 117 insertions(+), 143 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/19/2619/2
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2619
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I01fd5d43896d520fe75e1007d7bd39324f6f6e4b
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb[master]: [ASTERIXDB-2373][HYR,CLUS] Allow upsert of JobSpecs for Depl...

2018-04-27 Thread Steven Jacobs (Code Review)
Steven Jacobs has posted comments on this change.

Change subject: [ASTERIXDB-2373][HYR,CLUS] Allow upsert of JobSpecs for 
Deployed Jobs
..


Patch Set 1:

(4 comments)

https://asterix-gerrit.ics.uci.edu/#/c/2619/1/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceRemoteProxy.java
File 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceRemoteProxy.java:

PS1, Line 101: upsertDeployedJobSpec
> Is this a name that has been discussed before? I personally think upsert ha
The reason I went with upsert is because this is technically working with an 
upsert semantic, i.e. if the job spec currently doesn't exist, it is inserted, 
otherwise it is replaced.


https://asterix-gerrit.ics.uci.edu/#/c/2619/1/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/work/DeployJobSpecWork.java
File 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/work/DeployJobSpecWork.java:

PS1, Line 42: checkForDuplicate
> You can use upsert here if you want. :)
Done


https://asterix-gerrit.ics.uci.edu/#/c/2619/1/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-nc/src/main/java/org/apache/hyracks/control/nc/work/DeployJobSpecWork.java
File 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-nc/src/main/java/org/apache/hyracks/control/nc/work/DeployJobSpecWork.java:

Line 40: private final boolean checkForDuplicate;
> same as cc
Done


https://asterix-gerrit.ics.uci.edu/#/c/2619/1/hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/DeployedJobSpecsTest.java
File 
hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/DeployedJobSpecsTest.java:

Line 202: 
> is there a test case for the unhappy path? add a deploy job with the same i
Actually there is no such "unhappy" path. the deploy function doesn't take an 
id, and the upsert function can be called with the same id as many times as a 
users wants.


-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2619
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I01fd5d43896d520fe75e1007d7bd39324f6f6e4b
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: Yes


Change in asterixdb-bad[master]: Allow BAD jobs to update their specifications to use new ind...

2018-05-07 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2620

to look at the new patch set (#6).

Change subject: Allow BAD jobs to update their specifications to use new indexes
..

Allow BAD jobs to update their specifications to use new indexes

- storage format changes: new field for Channel body

This changes uses the Asterix upsertDeployedJobSpec to
recompile and update the channel job when new indexes are
created.

Added test case
Moved methods from Asterix DeployedJobService to BADJobService

Change-Id: If0a4d37a5b91063fcb1673dbfd008c140ed54ae6
---
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
A asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
D asterix-bad/src/main/java/org/apache/asterix/bad/ChannelJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/BADMetadataRecordTypes.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Channel.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/ChannelTupleTranslator.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Procedure.java
M asterix-bad/src/main/resources/lang-extension/lang.txt
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.2.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.3.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.4.sleep.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.5.query.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.6.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/drop_index/drop_index.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/results/channel/add_index/add_index.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/channel/create_channel_check_metadata/create_channel_check_metadata.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/channel/drop_channel_check_metadata/drop_channel_check_metadata.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/procedure/create_procedure_check_metadata/create_procedure_check_metadata.1.adm
M asterix-bad/src/test/resources/runtimets/testsuite.xml
25 files changed, 1,266 insertions(+), 307 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/20/2620/6
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2620
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: If0a4d37a5b91063fcb1673dbfd008c140ed54ae6
Gerrit-PatchSet: 6
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb-bad[master]: Allow BAD jobs to update their specifications to use new ind...

2018-05-08 Thread Steven Jacobs (Code Review)
Steven Jacobs has posted comments on this change.

Change subject: Allow BAD jobs to update their specifications to use new indexes
..


Patch Set 9:

(1 comment)

https://asterix-gerrit.ics.uci.edu/#/c/2620/9/asterix-bad/src/test/java/org/apache/asterix/bad/test/BADListenerTest.java
File asterix-bad/src/test/java/org/apache/asterix/bad/test/BADListenerTest.java:

Line 33: private static DeployedJobSpecEventListener djsel;
> This test case doesn't cover what you would want to test. A good test examp
I am covering such cases.
Line 78 does (1), Line 79 does (2) then 5 seconds later line 78 completes and 
thereby completes (2). Lines 76 and 77 do (3).


-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2620
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: If0a4d37a5b91063fcb1673dbfd008c140ed54ae6
Gerrit-PatchSet: 9
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: Yes


Change in asterixdb-bad[master]: Allow BAD jobs to update their specifications to use new ind...

2018-05-07 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2620

to look at the new patch set (#4).

Change subject: Allow BAD jobs to update their specifications to use new indexes
..

Allow BAD jobs to update their specifications to use new indexes

- storage format changes: new field for Channel body

This changes uses the Asterix upsertDeployedJobSpec to
recompile and update the channel job when new indexes are
created.

Added test case
Moved methods from Asterix DeployedJobService to BADJobService

Change-Id: If0a4d37a5b91063fcb1673dbfd008c140ed54ae6
---
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
A asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
D asterix-bad/src/main/java/org/apache/asterix/bad/ChannelJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/BADMetadataRecordTypes.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Channel.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/ChannelTupleTranslator.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Procedure.java
M asterix-bad/src/main/resources/lang-extension/lang.txt
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.2.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.3.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.4.sleep.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.5.query.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.6.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/drop_index/drop_index.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/results/channel/add_index/add_index.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/channel/create_channel_check_metadata/create_channel_check_metadata.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/channel/drop_channel_check_metadata/drop_channel_check_metadata.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/procedure/create_procedure_check_metadata/create_procedure_check_metadata.1.adm
M asterix-bad/src/test/resources/runtimets/testsuite.xml
25 files changed, 1,266 insertions(+), 305 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/20/2620/4
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2620
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: If0a4d37a5b91063fcb1673dbfd008c140ed54ae6
Gerrit-PatchSet: 4
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb-bad[master]: Allow BAD jobs to update their specifications to use new ind...

2018-05-07 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2620

to look at the new patch set (#5).

Change subject: Allow BAD jobs to update their specifications to use new indexes
..

Allow BAD jobs to update their specifications to use new indexes

- storage format changes: new field for Channel body

This changes uses the Asterix upsertDeployedJobSpec to
recompile and update the channel job when new indexes are
created.

Added test case
Moved methods from Asterix DeployedJobService to BADJobService

Change-Id: If0a4d37a5b91063fcb1673dbfd008c140ed54ae6
---
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
A asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
D asterix-bad/src/main/java/org/apache/asterix/bad/ChannelJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/BADMetadataRecordTypes.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Channel.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/ChannelTupleTranslator.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Procedure.java
M asterix-bad/src/main/resources/lang-extension/lang.txt
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.2.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.3.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.4.sleep.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.5.query.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.6.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/drop_index/drop_index.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/results/channel/add_index/add_index.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/channel/create_channel_check_metadata/create_channel_check_metadata.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/channel/drop_channel_check_metadata/drop_channel_check_metadata.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/procedure/create_procedure_check_metadata/create_procedure_check_metadata.1.adm
M asterix-bad/src/test/resources/runtimets/testsuite.xml
25 files changed, 1,266 insertions(+), 305 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/20/2620/5
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2620
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: If0a4d37a5b91063fcb1673dbfd008c140ed54ae6
Gerrit-PatchSet: 5
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb-bad[master]: Allow BAD jobs to update their specifications to use new ind...

2018-05-08 Thread Steven Jacobs (Code Review)
Steven Jacobs has submitted this change and it was merged.

Change subject: Allow BAD jobs to update their specifications to use new indexes
..


Allow BAD jobs to update their specifications to use new indexes

- storage format changes: new field for Channel body

This changes uses the Asterix upsertDeployedJobSpec to
recompile and update the channel job when new indexes are
created.

Added test case
Moved methods from Asterix DeployedJobService to BADJobService

Change-Id: If0a4d37a5b91063fcb1673dbfd008c140ed54ae6
---
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
A asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
D asterix-bad/src/main/java/org/apache/asterix/bad/ChannelJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/BADMetadataRecordTypes.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Channel.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/ChannelTupleTranslator.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Procedure.java
M asterix-bad/src/main/resources/lang-extension/lang.txt
A asterix-bad/src/test/java/org/apache/asterix/bad/test/BADListenerTest.java
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.2.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.3.update.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.4.sleep.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.5.query.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.6.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/drop_index/drop_index.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/results/channel/add_index/add_index.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/channel/create_channel_check_metadata/create_channel_check_metadata.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/channel/drop_channel_check_metadata/drop_channel_check_metadata.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/procedure/create_procedure_check_metadata/create_procedure_check_metadata.1.adm
M asterix-bad/src/test/resources/runtimets/testsuite.xml
26 files changed, 1,343 insertions(+), 307 deletions(-)

Approvals:
  Jenkins: Verified
  Xikui Wang: Looks good to me, approved



diff --git a/asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java 
b/asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
index d2d0fa3..d422663 100644
--- a/asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
+++ b/asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
@@ -50,6 +50,7 @@
 String FIELD_NAME_RETURN_TYPE = "ReturnType";
 String FIELD_NAME_DEFINITION = "Definition";
 String FIELD_NAME_LANGUAGE = "Language";
+String FIELD_NAME_BODY = "Body";
 //To enable new Asterix TxnId for separate deployed job spec invocations
 byte[] TRANSACTION_ID_PARAMETER_NAME = "TxnIdParameter".getBytes();
 int EXECUTOR_TIMEOUT = 20;
diff --git 
a/asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java 
b/asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
new file mode 100644
index 000..e326ce6
--- /dev/null
+++ b/asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
@@ -0,0 +1,277 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.asterix.bad;
+
+import java.io.StringReader;
+import java.time.Instant;
+import java.util.Date;

Change in asterixdb[master]: [ASTERIXDB-2373][HYR,CLUS] Allow upsert of JobSpecs for Depl...

2018-05-08 Thread Steven Jacobs (Code Review)
Steven Jacobs has submitted this change and it was merged.

Change subject: [ASTERIXDB-2373][HYR,CLUS] Allow upsert of JobSpecs for 
Deployed Jobs
..


[ASTERIXDB-2373][HYR,CLUS] Allow upsert of JobSpecs for Deployed Jobs

- user model changes: none
- storage format changes: none
- interface changes: new methods added

This change adds the upsertDeployedJobSpec method, enabling
a Deployed Job to update its Job Specification.

Added call in test.
Removed DeployedJobService (moved methods to BAD codebase).

Change-Id: I01fd5d43896d520fe75e1007d7bd39324f6f6e4b
Reviewed-on: https://asterix-gerrit.ics.uci.edu/2619
Tested-by: Jenkins 
Contrib: Jenkins 
Reviewed-by: Xikui Wang 
---
D 
asterixdb/asterix-active/src/main/java/org/apache/asterix/active/DeployedJobService.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceFunctions.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceRemoteProxy.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksConnection.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientConnection.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientInterface.java
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/ClientInterfaceIPCI.java
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/DeployedJobSpecStore.java
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/work/DeployJobSpecWork.java
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-common/src/main/java/org/apache/hyracks/control/common/base/INodeController.java
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-common/src/main/java/org/apache/hyracks/control/common/ipc/CCNCFunctions.java
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-common/src/main/java/org/apache/hyracks/control/common/ipc/NodeControllerRemoteProxy.java
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-nc/src/main/java/org/apache/hyracks/control/nc/NodeControllerIPCI.java
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-nc/src/main/java/org/apache/hyracks/control/nc/NodeControllerService.java
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-nc/src/main/java/org/apache/hyracks/control/nc/work/DeployJobSpecWork.java
M 
hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/DeployedJobSpecsTest.java
16 files changed, 115 insertions(+), 143 deletions(-)

Approvals:
  Anon. E. Moose #1000171: 
  Jenkins: Verified; 
  Xikui Wang: Looks good to me, approved

Objections:
  Jenkins: Violations found



diff --git 
a/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/DeployedJobService.java
 
b/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/DeployedJobService.java
deleted file mode 100644
index bc6f1b1..000
--- 
a/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/DeployedJobService.java
+++ /dev/null
@@ -1,111 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.asterix.active;
-
-import java.time.Instant;
-import java.util.Date;
-import java.util.Map;
-import java.util.concurrent.Executors;
-import java.util.concurrent.ScheduledExecutorService;
-import java.util.concurrent.TimeUnit;
-
-import org.apache.asterix.common.transactions.ITxnIdFactory;
-import org.apache.hyracks.api.client.IHyracksClientConnection;
-import org.apache.hyracks.api.job.DeployedJobSpecId;
-import org.apache.hyracks.api.job.JobId;
-import org.apache.logging.log4j.Level;
-import org.apache.logging.log4j.LogManager;
-import org.apache.logging.log4j.Logger;
-
-/**
- * Provides functionality for running DeployedJobSpecs
- */
-public class DeployedJobService {
-

Change in asterixdb-bad[master]: Redeploy channels and procedures during recovery

2018-05-17 Thread Steven Jacobs (Code Review)
Steven Jacobs has posted comments on this change.

Change subject: Redeploy channels and procedures during recovery
..


Patch Set 11:

(2 comments)

https://asterix-gerrit.ics.uci.edu/#/c/2641/11/asterix-bad/src/test/java/org/apache/asterix/bad/test/BADRecoveryTest.java
File asterix-bad/src/test/java/org/apache/asterix/bad/test/BADRecoveryTest.java:

Line 86: if (testNumber == 1) {
> Sorry for the 2nd comment. What does this mean?
The cluster gets stopped after the 0th test (line 95) and started again before 
the 1st test (line 88). Other than that we don't need to keep restarting the 
cluster.


https://asterix-gerrit.ics.uci.edu/#/c/2641/11/asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.3.sleep.sqlpp
File 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.3.sleep.sqlpp:

Line 25: 25000
> why sleep 25 seconds? (This will make the bad test longer for every patch r
I want to make absolutely certain that the channel is still executing. I know 
the tests can run on slower machines. There are several issues that lead me to 
make it this long:

1) I don't have confidence in making the channel period less than 5 seconds 
(even on my local build there are rare instances taking longer than 1 second to 
execute the tiny channel job.
2) The cluster deinit() has no precise timing, e.g. we don't know how long the 
channel was running before the cluster stopped.
3) The cluster init() also has no precise timing, so there's no way to 
guarantee how long the channel has been running before this sleep happens.

Essentially I start the comparison much higher than expected (< 3 when we 
actually expect 0) to account for potential executions during the start and 
stop, so I have to add 15 seconds worth of time to make sure that we get to at 
least 3, and I also want to make sure that we increase, which is why I put 10 
seconds more.

I think by giving this much wiggle room we make sure to prevent random failures 
of the test.


-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2641
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
Gerrit-PatchSet: 11
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: Yes


Change in asterixdb-bad[master]: Redeploy channels and procedures during recovery

2018-05-17 Thread Steven Jacobs (Code Review)
Steven Jacobs has posted comments on this change.

Change subject: Redeploy channels and procedures during recovery
..


Patch Set 11:

(1 comment)

https://asterix-gerrit.ics.uci.edu/#/c/2641/11/asterix-bad/src/test/java/org/apache/asterix/bad/test/BADRecoveryTest.java
File asterix-bad/src/test/java/org/apache/asterix/bad/test/BADRecoveryTest.java:

Line 86: if (testNumber == 1) {
> The cluster gets stopped after the 0th test (line 95) and started again bef
In case this isn't very clear from looking, the three tests are as follows:
0) Test 0 creates the channels and procedures
The cluster is restarted
1) Test 1 checks whether the channels started again successfully 
2) Test 2 checks whether the procedures are still usable


-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2641
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
Gerrit-PatchSet: 11
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: Yes


Change in asterixdb-bad[master]: Redeploy channels and procedures during recovery

2018-05-17 Thread Steven Jacobs (Code Review)
Steven Jacobs has posted comments on this change.

Change subject: Redeploy channels and procedures during recovery
..


Patch Set 5:

(3 comments)

https://asterix-gerrit.ics.uci.edu/#/c/2641/5/asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADGlobalRecoveryManager.java
File 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADGlobalRecoveryManager.java:

PS5, Line 92: tionContext mdTxnCtx = 
MetadataManager.INSTANCE.beginTransaction();
: metadataProvider.setMetadataTxnContext(mdTxnCtx);
: 
: List channels = 
BADLangExtension.getAllChannels(mdTxnCtx);
: List procedures = 
BADLangExtension.getAllProcedures(mdTxnCtx);
: 
: MetadataManager.INSTANCE.commitTransaction(mdTxnCtx);
> sorry that I didn't explain my comment very well. What I meant is that it s
Done


Line 125: listener.suspend();
> the followup question is the system now is in suspend state right? Would it
the redeployJobSpec call (line 127) calls listener.resume() at the end.


PS5, Line 161: //Issue: need to store in metadata the information 
for running instances
> In other word, we are not storing the period of the repetitive procedures? 
We do store the period, but just having the period doesn't give us any 
guarantees about whether there were actually instances of the procedure running 
or not. In other words, you can create a repetitive procedure but not execute 
it.

There is a deeper question about maintaining multiple instances of repetitive 
procedures as well, which is why this is listed as TODO


-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2641
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
Gerrit-PatchSet: 5
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: Yes


Change in asterixdb-bad[master]: Redeploy channels and procedures during recovery

2018-05-17 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2641

to look at the new patch set (#12).

Change subject: Redeploy channels and procedures during recovery
..

Redeploy channels and procedures during recovery

Use the GlobalRecoveryManager extension to redeploy channels/procedures
Restart execution of channels during recovery
Some code cleanup

Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
---
M asterix-bad/pom.xml
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
M asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/BADMetadataRecordTypes.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Procedure.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/ProcedureTupleTranslator.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADGlobalRecoveryManager.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADRecoveryExtension.java
M asterix-bad/src/main/resources/cc.conf
M 
asterix-bad/src/test/java/org/apache/asterix/bad/test/BADAsterixHyracksIntegrationUtil.java
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADListenerTest.java
A asterix-bad/src/test/java/org/apache/asterix/bad/test/BADRecoveryTest.java
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.1.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.2.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.3.sleep.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.4.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.5.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.6.ddl.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_procedures/check_procedures.1.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_procedures/check_procedures.2.update.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_procedures/check_procedures.3.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_procedures/check_procedures.4.update.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_procedures/check_procedures.5.query.sqlpp
A asterix-bad/src/test/resources/recoveryts/queries/recovery/ddl/ddl.1.ddl.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/ddl/ddl.2.update.sqlpp
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_channels/check_channels.1.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_channels/check_channels.2.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_channels/check_channels.4.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_channels/check_channels.5.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_procedures/check_procedures.1.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_procedures/check_procedures.3.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_procedures/check_procedures.5.adm
A asterix-bad/src/test/resources/recoveryts/testsuite.xml
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure/query_procedure.3.query.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure/query_procedure.5.query.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.2.query.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.3.query.sqlpp
M 
asterix-bad/src/test/resources/runtimets/results/procedure/create_procedure_check_metadata/create_procedure_check_metadata.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/procedure/query_procedure/query_procedure.3.adm
M 
asterix-bad/src/test/resources/runtimets/results/procedure/query_procedure/query_procedure.5.adm
M 
asterix-bad/src/test/resources/runtimets/results/procedure/query_procedure_with_parameters/query_procedure_with_parameters.2.adm
46 files changed, 620 insertions(+), 197 

Change in asterixdb[master]: [ASTERIXDB-2386][CLUS] Allow extension of the global recover...

2018-05-15 Thread Steven Jacobs (Code Review)
Steven Jacobs has posted comments on this change.

Change subject: [ASTERIXDB-2386][CLUS] Allow extension of the global recovery 
manager
..


Patch Set 2:

(8 comments)

Addressed Comments. Uploading a new change.

https://asterix-gerrit.ics.uci.edu/#/c/2640/2/asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/CCApplication.java
File 
asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/CCApplication.java:

PS2, Line 183: GlobalRecoveryManager
> IGlobalRecoveryManager?
Done


PS2, Line 185: GlobalRecoveryManager
> IGlobalRecoveryManager?
Done


Line 185: GlobalRecoveryManager globalRecoveryManager =
> My extension knowledge is very limited, so please correct me if I'm wrong. 
This is the way that all of the extensions are handled. You can see the ideal 
data flow that you are mentioning happening in the call done by line 186. I 
changed the method name to "get" in the new patch. 

The RecoveryManager class is unaltered by this patch. It only affects whether 
the GlobalRecoveryManager can be extended.


PS2, Line 186: GlobalRecoveryManager
> not needed?
Done


Line 202: return new 
ExtensionProperties(PropertiesAccessor.getInstance(ccServiceCtx.getAppConfig())).getExtensions();
> Why this need to be changed?
This is because the global recover managers is set up before the application 
context, and now the extensions need to be set up before the app context (lines 
145-147 in the new change)


https://asterix-gerrit.ics.uci.edu/#/c/2640/2/asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/GlobalRecoveryManager.java
File 
asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/GlobalRecoveryManager.java:

Line 132: MetadataManager.INSTANCE.getDataverse(mdTxnCtx, 
dataverse.getDataverseName());
> this is for?
This one line is actually the whole fix for ASTERIXDB-2386. Basically the 
dataverses should be in the cache after recovery.


https://asterix-gerrit.ics.uci.edu/#/c/2640/2/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksConnection.java
File 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksConnection.java:

Line 124: 
> empty line.
Done


https://asterix-gerrit.ics.uci.edu/#/c/2640/2/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientConnection.java
File 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientConnection.java:

PS2, Line 120: resetDeployedJobIdFactory
> This method seems problematic as it exposes internals. I think that the cre
Done


-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2640
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I1213e702a77ededde18ee0b50bc105212f43480d
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: Yes


Change in asterixdb[master]: [ASTERIXDB-2386][CLUS] Allow extension of the global recover...

2018-05-15 Thread Steven Jacobs (Code Review)
Hello Anon. E. Moose #1000171, Till Westmann, Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2640

to look at the new patch set (#3).

Change subject: [ASTERIXDB-2386][CLUS] Allow extension of the global recovery 
manager
..

[ASTERIXDB-2386][CLUS] Allow extension of the global recovery manager

Allow the Asterix GlobalRecoveryManager to be extended
Add an hcc method to reset the deployed job id factory

Change-Id: I1213e702a77ededde18ee0b50bc105212f43480d
---
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/cc/CCExtensionManager.java
A 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/cc/IGlobalRecoveryExtension.java
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/CCApplication.java
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/GlobalRecoveryManager.java
M 
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/IExtension.java
M 
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/cluster/IGlobalRecoveryManager.java
6 files changed, 90 insertions(+), 16 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/40/2640/3
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2640
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I1213e702a77ededde18ee0b50bc105212f43480d
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb-bad[master]: Redeploy channels and procedures during recovery

2018-05-15 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2641

to look at the new patch set (#3).

Change subject: Redeploy channels and procedures during recovery
..

Redeploy channels and procedures during recovery

Use the GlobalRecoveryManager extension to redeploy channels/procedures
Restart execution of channels during recovery
Some code cleanup

Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
---
M asterix-bad/pom.xml
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
M asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/BADMetadataRecordTypes.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Procedure.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/ProcedureTupleTranslator.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADGlobalRecoveryManager.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADRecoveryExtension.java
M asterix-bad/src/main/resources/cc.conf
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADListenerTest.java
M 
asterix-bad/src/test/resources/runtimets/results/procedure/create_procedure_check_metadata/create_procedure_check_metadata.1.adm
16 files changed, 341 insertions(+), 143 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/41/2641/3
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2641
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb-bad[master]: Redeploy channels and procedures during recovery

2018-05-16 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2641

to look at the new patch set (#7).

Change subject: Redeploy channels and procedures during recovery
..

Redeploy channels and procedures during recovery

Use the GlobalRecoveryManager extension to redeploy channels/procedures
Restart execution of channels during recovery
Some code cleanup

Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
---
M asterix-bad/pom.xml
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
M asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/BADMetadataRecordTypes.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Procedure.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/ProcedureTupleTranslator.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADGlobalRecoveryManager.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADRecoveryExtension.java
M asterix-bad/src/main/resources/cc.conf
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADListenerTest.java
M 
asterix-bad/src/test/resources/runtimets/results/procedure/create_procedure_check_metadata/create_procedure_check_metadata.1.adm
16 files changed, 352 insertions(+), 143 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/41/2641/7
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2641
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
Gerrit-PatchSet: 7
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb-bad[master]: Redeploy channels and procedures during recovery

2018-05-16 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2641

to look at the new patch set (#8).

Change subject: Redeploy channels and procedures during recovery
..

Redeploy channels and procedures during recovery

Use the GlobalRecoveryManager extension to redeploy channels/procedures
Restart execution of channels during recovery
Some code cleanup

Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
---
M asterix-bad/pom.xml
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
M asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/BADMetadataRecordTypes.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Procedure.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/ProcedureTupleTranslator.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADGlobalRecoveryManager.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADRecoveryExtension.java
M asterix-bad/src/main/resources/cc.conf
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADListenerTest.java
M 
asterix-bad/src/test/resources/runtimets/results/procedure/create_procedure_check_metadata/create_procedure_check_metadata.1.adm
16 files changed, 352 insertions(+), 143 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/41/2641/8
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2641
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
Gerrit-PatchSet: 8
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb-bad[master]: Redeploy channels and procedures during recovery

2018-05-16 Thread Steven Jacobs (Code Review)
Steven Jacobs has posted comments on this change.

Change subject: Redeploy channels and procedures during recovery
..


Patch Set 5:

(11 comments)

https://asterix-gerrit.ics.uci.edu/#/c/2641/5/asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
File asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java:

Line 142: ResultReader resultReader = new ResultReader(hdc, jobId, 
new ResultSetId(0));
> is this always reading the 1st result set? (I know there are some issues in
Procedures and Channels only allow one statement (so one result set) so this is 
a simplification for them. Maybe other deployed jobs will have potential issues,


Line 249: if (useNewId) {
> I'm comfused... What's the difference between deploy and redeploy + newId
When the cluster is restarted, we just deploy the jobs as new jobs (the old 
deployed jobs would be lost anyway).

When an index is added, we use the redeploy to replace the existing job spec


https://asterix-gerrit.ics.uci.edu/#/c/2641/5/asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
File 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java:

Line 273: resultsTableName = !push ? channelName + 
BADConstants.resultsEnding : "";
> push : "" : constant
Done


https://asterix-gerrit.ics.uci.edu/#/c/2641/5/asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
File 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java:

PS5, Line 274: LANGUAGE_AQL
> it's AQL?
Done


https://asterix-gerrit.ics.uci.edu/#/c/2641/5/asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
File 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java:

Line 105: public void storeDeployedJobSpecId(DeployedJobSpecId 
deployedJobSpecId) {
> -> setDeployedJobSpecId ?
Done


Line 109: public void storeExecutorService(ScheduledExecutorService ses) {
> same
Done


https://asterix-gerrit.ics.uci.edu/#/c/2641/5/asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Procedure.java
File asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Procedure.java:

Line 49: public Procedure(String dataverseName, String functionName, int 
arity, List params, String type,
> Is it no longer the return type?
The return type was left over from functions, we don't use such a thing in 
procedures. I needed to add a Procedure type, so I figured I should remove the 
unused field while adding the new one.


https://asterix-gerrit.ics.uci.edu/#/c/2641/5/asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADGlobalRecoveryManager.java
File 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADGlobalRecoveryManager.java:

PS5, Line 92: tionContext mdTxnCtx = 
MetadataManager.INSTANCE.beginTransaction();
: metadataProvider.setMetadataTxnContext(mdTxnCtx);
: 
: List channels = 
BADLangExtension.getAllChannels(mdTxnCtx);
: List procedures = 
BADLangExtension.getAllProcedures(mdTxnCtx);
: 
: MetadataManager.INSTANCE.commitTransaction(mdTxnCtx);
> why not do this in recover after doRecovery()?
Done


Line 112: for (IActiveEntityEventsListener listener : 
activeEventHandler.getEventListeners()) {
> do you want to check & stop EventListeners' executorService before you remo
Done


Line 125: listener.suspend();
> this is to make sure if there is any dangling deployed job running instance
yes


PS5, Line 161: //Issue: need to store in metadata the information 
for running instances
> I don't understand this issue here... maybe we can talk about this offline.
Sure. We can talk about it more in future, but the main issue is:

1) A repetitive procedure can exist without running (no one has called "execute"
2) At cluster restart, the listener is gone, so the only information we have is 
the metadata
3) For every channel we automatically know that there should be one running 
instance, so we just start it again. We have no such guarantee for a procedure, 
and the metadata doesn't tell us anything about if/how many were running.


-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2641
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
Gerrit-PatchSet: 5
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: Yes


Change in asterixdb-bad[master]: Redeploy channels and procedures during recovery

2018-05-15 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2641

to look at the new patch set (#4).

Change subject: Redeploy channels and procedures during recovery
..

Redeploy channels and procedures during recovery

Use the GlobalRecoveryManager extension to redeploy channels/procedures
Restart execution of channels during recovery
Some code cleanup

Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
---
M asterix-bad/pom.xml
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
M asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/BADMetadataRecordTypes.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Procedure.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/ProcedureTupleTranslator.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADGlobalRecoveryManager.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADRecoveryExtension.java
M asterix-bad/src/main/resources/cc.conf
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADListenerTest.java
M 
asterix-bad/src/test/resources/runtimets/results/procedure/create_procedure_check_metadata/create_procedure_check_metadata.1.adm
16 files changed, 348 insertions(+), 143 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/41/2641/4
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2641
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
Gerrit-PatchSet: 4
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb[master]: [ASTERIXDB-2386][CLUS] Allow extension of the global recover...

2018-05-15 Thread Steven Jacobs (Code Review)
Hello Anon. E. Moose #1000171, Till Westmann, Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2640

to look at the new patch set (#5).

Change subject: [ASTERIXDB-2386][CLUS] Allow extension of the global recovery 
manager
..

[ASTERIXDB-2386][CLUS] Allow extension of the global recovery manager

Allow the Asterix GlobalRecoveryManager to be extended
Cleanup some deployed job spec methods

Change-Id: I1213e702a77ededde18ee0b50bc105212f43480d
---
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/cc/CCExtensionManager.java
A 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/cc/IGlobalRecoveryExtension.java
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/CCApplication.java
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/GlobalRecoveryManager.java
M 
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/IExtension.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceRemoteProxy.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksConnection.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientConnection.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientInterface.java
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/work/UndeployJobSpecWork.java
10 files changed, 97 insertions(+), 33 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/40/2640/5
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2640
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I1213e702a77ededde18ee0b50bc105212f43480d
Gerrit-PatchSet: 5
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb[master]: [ASTERIXDB-2386][CLUS] Allow extension of the global recover...

2018-05-15 Thread Steven Jacobs (Code Review)
Hello Anon. E. Moose #1000171, Till Westmann, Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2640

to look at the new patch set (#4).

Change subject: [ASTERIXDB-2386][CLUS] Allow extension of the global recovery 
manager
..

[ASTERIXDB-2386][CLUS] Allow extension of the global recovery manager

Allow the Asterix GlobalRecoveryManager to be extended
Cleanup some deployed job spec methods

Change-Id: I1213e702a77ededde18ee0b50bc105212f43480d
---
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/cc/CCExtensionManager.java
A 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/cc/IGlobalRecoveryExtension.java
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/CCApplication.java
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/GlobalRecoveryManager.java
M 
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/IExtension.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceRemoteProxy.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksConnection.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientConnection.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientInterface.java
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/work/UndeployJobSpecWork.java
10 files changed, 99 insertions(+), 34 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/40/2640/4
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2640
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I1213e702a77ededde18ee0b50bc105212f43480d
Gerrit-PatchSet: 4
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb-bad[master]: Redeploy channels and procedures during recovery

2018-05-15 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2641

to look at the new patch set (#5).

Change subject: Redeploy channels and procedures during recovery
..

Redeploy channels and procedures during recovery

Use the GlobalRecoveryManager extension to redeploy channels/procedures
Restart execution of channels during recovery
Some code cleanup

Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
---
M asterix-bad/pom.xml
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
M asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/BADMetadataRecordTypes.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Procedure.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/ProcedureTupleTranslator.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADGlobalRecoveryManager.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADRecoveryExtension.java
M asterix-bad/src/main/resources/cc.conf
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADListenerTest.java
M 
asterix-bad/src/test/resources/runtimets/results/procedure/create_procedure_check_metadata/create_procedure_check_metadata.1.adm
16 files changed, 348 insertions(+), 143 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/41/2641/5
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2641
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
Gerrit-PatchSet: 5
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb[master]: [ASTERIXDB-2386][CLUS] Allow extension of the global recover...

2018-05-15 Thread Steven Jacobs (Code Review)
Steven Jacobs has posted comments on this change.

Change subject: [ASTERIXDB-2386][CLUS] Allow extension of the global recovery 
manager
..


Patch Set 3:

(3 comments)

Addressed Comments. Uploading a new patchset

https://asterix-gerrit.ics.uci.edu/#/c/2640/3/asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/CCApplication.java
File 
asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/CCApplication.java:

PS3, Line 184: getGlobalRecoveryManager
> I think that we should keep this as a "create" methods (like the one above 
Done


https://asterix-gerrit.ics.uci.edu/#/c/2640/3/asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/GlobalRecoveryManager.java
File 
asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/GlobalRecoveryManager.java:

PS3, Line 132: getDataverse
> Why do we call this here if we don't use the returned value?
This one line is actually the whole fix for ASTERIXDB-2386. Basically the 
dataverses should be in the cache after recovery.


https://asterix-gerrit.ics.uci.edu/#/c/2640/3/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/cluster/IGlobalRecoveryManager.java
File 
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/cluster/IGlobalRecoveryManager.java:

PS3, Line 32: create
> I think that it'd be better to keep this interface clean and move these par
Done


-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2640
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I1213e702a77ededde18ee0b50bc105212f43480d
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: Yes


Change in asterixdb[master]: [ASTERIXDB-2386][CLUS] Allow extension of the global recover...

2018-05-15 Thread Steven Jacobs (Code Review)
Hello Anon. E. Moose #1000171, Till Westmann, Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2640

to look at the new patch set (#6).

Change subject: [ASTERIXDB-2386][CLUS] Allow extension of the global recovery 
manager
..

[ASTERIXDB-2386][CLUS] Allow extension of the global recovery manager

Allow the Asterix GlobalRecoveryManager to be extended
Cleanup some deployed job spec methods

Change-Id: I1213e702a77ededde18ee0b50bc105212f43480d
---
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/cc/CCExtensionManager.java
A 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/cc/IGlobalRecoveryExtension.java
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/CCApplication.java
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/GlobalRecoveryManager.java
M 
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/IExtension.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceFunctions.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceRemoteProxy.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksConnection.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientConnection.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientInterface.java
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/ClientInterfaceIPCI.java
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/work/UndeployJobSpecWork.java
M 
hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/DeployedJobSpecsTest.java
13 files changed, 107 insertions(+), 43 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/40/2640/6
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2640
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I1213e702a77ededde18ee0b50bc105212f43480d
Gerrit-PatchSet: 6
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb-bad[master]: Redeploy channels and procedures during recovery

2018-05-21 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2641

to look at the new patch set (#14).

Change subject: Redeploy channels and procedures during recovery
..

Redeploy channels and procedures during recovery

Use the GlobalRecoveryManager extension to redeploy channels/procedures
Restart execution of channels during recovery
Some code cleanup
Added recovery test

Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
---
M asterix-bad/pom.xml
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
M asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/BADMetadataRecordTypes.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Procedure.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/ProcedureTupleTranslator.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADGlobalRecoveryManager.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADRecoveryExtension.java
M asterix-bad/src/main/resources/cc.conf
M 
asterix-bad/src/test/java/org/apache/asterix/bad/test/BADAsterixHyracksIntegrationUtil.java
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADListenerTest.java
A asterix-bad/src/test/java/org/apache/asterix/bad/test/BADRecoveryTest.java
A 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.1.ddl.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.10.update.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.11.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.12.update.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.13.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.14.ddl.sqlpp
A 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.2.script.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.3.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.4.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.5.update.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.6.sleep.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.7.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.8.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.9.query.sqlpp
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.11.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.13.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.3.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.4.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.7.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.8.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.9.adm
A 
asterix-bad/src/test/resources/recoveryts/scripts/recovery/restart_cluster/stop_and_start.sh
A 
asterix-bad/src/test/resources/recoveryts/scripts/setup_teardown/configure_and_validate.sh
A 
asterix-bad/src/test/resources/recoveryts/scripts/setup_teardown/stop_and_delete.sh
A asterix-bad/src/test/resources/recoveryts/testsuite.xml
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure/query_procedure.3.query.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure/query_procedure.5.query.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.2.query.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.3.query.sqlpp
M 

Change in asterixdb-bad[master]: Redeploy channels and procedures during recovery

2018-05-21 Thread Steven Jacobs (Code Review)
Steven Jacobs has submitted this change and it was merged.

Change subject: Redeploy channels and procedures during recovery
..


Redeploy channels and procedures during recovery

Use the GlobalRecoveryManager extension to redeploy channels/procedures
Restart execution of channels during recovery
Some code cleanup
Added recovery test

Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
---
M asterix-bad/pom.xml
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
M asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/BADMetadataRecordTypes.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Procedure.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/ProcedureTupleTranslator.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADGlobalRecoveryManager.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADRecoveryExtension.java
M asterix-bad/src/main/resources/cc.conf
M 
asterix-bad/src/test/java/org/apache/asterix/bad/test/BADAsterixHyracksIntegrationUtil.java
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADListenerTest.java
A asterix-bad/src/test/java/org/apache/asterix/bad/test/BADRecoveryTest.java
A 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.1.ddl.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.10.update.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.11.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.12.update.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.13.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.14.ddl.sqlpp
A 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.2.script.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.3.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.4.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.5.update.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.6.sleep.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.7.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.8.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.9.query.sqlpp
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.11.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.13.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.3.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.4.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.7.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.8.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.9.adm
A 
asterix-bad/src/test/resources/recoveryts/scripts/recovery/restart_cluster/stop_and_start.sh
A 
asterix-bad/src/test/resources/recoveryts/scripts/setup_teardown/configure_and_validate.sh
A 
asterix-bad/src/test/resources/recoveryts/scripts/setup_teardown/stop_and_delete.sh
A asterix-bad/src/test/resources/recoveryts/testsuite.xml
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure/query_procedure.3.query.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure/query_procedure.5.query.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.2.query.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.3.query.sqlpp
M 
asterix-bad/src/test/resources/runtimets/results/procedure/create_procedure_check_metadata/create_procedure_check_metadata.1.adm
M 

Change in asterixdb-bad[master]: Redeploy channels and procedures during recovery

2018-05-21 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2641

to look at the new patch set (#15).

Change subject: Redeploy channels and procedures during recovery
..

Redeploy channels and procedures during recovery

Use the GlobalRecoveryManager extension to redeploy channels/procedures
Restart execution of channels during recovery
Some code cleanup
Added recovery test

Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
---
M asterix-bad/pom.xml
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
M asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/BADMetadataRecordTypes.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Procedure.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/ProcedureTupleTranslator.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADGlobalRecoveryManager.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADRecoveryExtension.java
M asterix-bad/src/main/resources/cc.conf
M 
asterix-bad/src/test/java/org/apache/asterix/bad/test/BADAsterixHyracksIntegrationUtil.java
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADListenerTest.java
A asterix-bad/src/test/java/org/apache/asterix/bad/test/BADRecoveryTest.java
A 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.1.ddl.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.10.update.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.11.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.12.update.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.13.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.14.ddl.sqlpp
A 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.2.script.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.3.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.4.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.5.update.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.6.sleep.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.7.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.8.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.9.query.sqlpp
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.11.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.13.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.3.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.4.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.7.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.8.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.9.adm
A 
asterix-bad/src/test/resources/recoveryts/scripts/recovery/restart_cluster/stop_and_start.sh
A 
asterix-bad/src/test/resources/recoveryts/scripts/setup_teardown/configure_and_validate.sh
A 
asterix-bad/src/test/resources/recoveryts/scripts/setup_teardown/stop_and_delete.sh
A asterix-bad/src/test/resources/recoveryts/testsuite.xml
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure/query_procedure.3.query.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure/query_procedure.5.query.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.2.query.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.3.query.sqlpp
M 

Change in asterixdb-bad[master]: Redeploy channels and procedures during recovery

2018-05-21 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2641

to look at the new patch set (#13).

Change subject: Redeploy channels and procedures during recovery
..

Redeploy channels and procedures during recovery

Use the GlobalRecoveryManager extension to redeploy channels/procedures
Restart execution of channels during recovery
Some code cleanup
Added recovery test

Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
---
M asterix-bad/pom.xml
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
M asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/BADMetadataRecordTypes.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Procedure.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/ProcedureTupleTranslator.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADGlobalRecoveryManager.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADRecoveryExtension.java
M asterix-bad/src/main/resources/cc.conf
M 
asterix-bad/src/test/java/org/apache/asterix/bad/test/BADAsterixHyracksIntegrationUtil.java
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADListenerTest.java
A asterix-bad/src/test/java/org/apache/asterix/bad/test/BADRecoveryTest.java
A 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.1.ddl.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.10.update.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.11.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.12.update.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.13.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.14.ddl.sqlpp
A 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.2.script.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.3.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.4.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.5.update.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.6.sleep.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.7.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.8.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/restart_cluster/restart_cluster.9.query.sqlpp
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.11.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.13.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.3.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.4.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.7.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.8.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/restart_cluster/restart_cluster.9.adm
A 
asterix-bad/src/test/resources/recoveryts/scripts/recovery/restart_cluster/stop_and_start.sh
A 
asterix-bad/src/test/resources/recoveryts/scripts/setup_teardown/configure_and_validate.sh
A 
asterix-bad/src/test/resources/recoveryts/scripts/setup_teardown/stop_and_delete.sh
A asterix-bad/src/test/resources/recoveryts/testsuite.xml
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure/query_procedure.3.query.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure/query_procedure.5.query.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.2.query.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.3.query.sqlpp
M 

Change in asterixdb[master]: [ASTERIXDB-2391][COMP] Prevent insert return variables from ...

2018-05-24 Thread Steven Jacobs (Code Review)
Steven Jacobs has uploaded a new change for review.

  https://asterix-gerrit.ics.uci.edu/2656

Change subject: [ASTERIXDB-2391][COMP] Prevent insert return variables from 
being projected away
..

[ASTERIXDB-2391][COMP] Prevent insert return variables from being projected away

Prevent IntroduceDynamicTypeCastRule from removing variables
that may be needed elsewhere (e.g., by a returning clause)
Added test case

Change-Id: I9a86668c5c83ec2b73ceec57289211407c4ad07f
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastRule.java
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/issue2391-returning/issue2391-returning.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/issue2391-returning/issue2391-returning.2.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/upsert/issue2391-returning/issue2391-returning.2.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
5 files changed, 72 insertions(+), 1 deletion(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/56/2656/1

diff --git 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastRule.java
 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastRule.java
index 2695337..f0db04a 100644
--- 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastRule.java
+++ 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastRule.java
@@ -50,6 +50,7 @@
 import 
org.apache.hyracks.algebricks.core.algebra.operators.logical.DelegateOperator;
 import 
org.apache.hyracks.algebricks.core.algebra.operators.logical.DistributeResultOperator;
 import 
org.apache.hyracks.algebricks.core.algebra.operators.logical.InsertDeleteUpsertOperator;
+import 
org.apache.hyracks.algebricks.core.algebra.operators.logical.ProjectOperator;
 import 
org.apache.hyracks.algebricks.core.algebra.operators.logical.visitors.VariableUtilities;
 import org.apache.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule;
 
@@ -220,7 +221,13 @@
 opRef.setValue(newAssignOperator);
 
context.computeAndSetTypeEnvironmentForOperator(newAssignOperator);
 newAssignOperator.computeOutputTypeEnvironment(context);
-VariableUtilities.substituteVariables(parent, recordVar, 
newAssignVar, context);
+if (parent.getOperatorTag() == LogicalOperatorTag.PROJECT) 
{
+//Don't remove the variable that might be used above 
the insert
+((ProjectOperator) 
parent).getVariables().add(newAssignVar);
+
context.computeAndSetTypeEnvironmentForOperator(parent);
+} else {
+VariableUtilities.substituteVariables(parent, 
recordVar, newAssignVar, context);
+}
 return newAssignVar;
 }
 }
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/issue2391-returning/issue2391-returning.1.ddl.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/issue2391-returning/issue2391-returning.1.ddl.sqlpp
new file mode 100644
index 000..68c9788
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/issue2391-returning/issue2391-returning.1.ddl.sqlpp
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+/*
+ * Description  : ASTERIXDB-2391
+ * Expected Res : Success
+ * Date : May 2018
+ */
+
+drop dataverse test if exists;
+create dataverse test;
+use test;
+
+create type sub as {
+  subscriptionId: uuid
+};
+
+create dataset subscriptions(sub) primary key subscriptionId;
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/issue2391-returning/issue2391-returning.2.query.sqlpp
 

Change in asterixdb-bad[master]: Redeploy channels and procedures during recovery

2018-05-17 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2641

to look at the new patch set (#9).

Change subject: Redeploy channels and procedures during recovery
..

Redeploy channels and procedures during recovery

Use the GlobalRecoveryManager extension to redeploy channels/procedures
Restart execution of channels during recovery
Some code cleanup

Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
---
M asterix-bad/pom.xml
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
M asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/BADMetadataRecordTypes.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Procedure.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/ProcedureTupleTranslator.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADGlobalRecoveryManager.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADRecoveryExtension.java
M asterix-bad/src/main/resources/cc.conf
M 
asterix-bad/src/test/java/org/apache/asterix/bad/test/BADAsterixHyracksIntegrationUtil.java
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADListenerTest.java
A asterix-bad/src/test/java/org/apache/asterix/bad/test/BADRecoveryTest.java
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.1.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.2.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.3.sleep.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.4.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.5.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.6.ddl.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_procedures/check_procedures.1.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_procedures/check_procedures.2.update.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_procedures/check_procedures.3.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_procedures/check_procedures.4.update.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_procedures/check_procedures.5.query.sqlpp
A asterix-bad/src/test/resources/recoveryts/queries/recovery/ddl/ddl.1.ddl.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/ddl/ddl.2.update.sqlpp
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_channels/check_channels.1.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_channels/check_channels.2.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_channels/check_channels.4.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_channels/check_channels.5.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_procedures/check_procedures.1.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_procedures/check_procedures.3.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_procedures/check_procedures.5.adm
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure/query_procedure.3.query.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure/query_procedure.5.query.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.2.query.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.3.query.sqlpp
M 
asterix-bad/src/test/resources/runtimets/results/procedure/create_procedure_check_metadata/create_procedure_check_metadata.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/procedure/query_procedure/query_procedure.3.adm
M 
asterix-bad/src/test/resources/runtimets/results/procedure/query_procedure/query_procedure.5.adm
M 
asterix-bad/src/test/resources/runtimets/results/procedure/query_procedure_with_parameters/query_procedure_with_parameters.2.adm
45 files changed, 594 insertions(+), 204 deletions(-)


  git pull 

Change in asterixdb-bad[master]: Redeploy channels and procedures during recovery

2018-05-17 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2641

to look at the new patch set (#10).

Change subject: Redeploy channels and procedures during recovery
..

Redeploy channels and procedures during recovery

Use the GlobalRecoveryManager extension to redeploy channels/procedures
Restart execution of channels during recovery
Some code cleanup

Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
---
M asterix-bad/pom.xml
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
M asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/BADMetadataRecordTypes.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Procedure.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/ProcedureTupleTranslator.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADGlobalRecoveryManager.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADRecoveryExtension.java
M asterix-bad/src/main/resources/cc.conf
M 
asterix-bad/src/test/java/org/apache/asterix/bad/test/BADAsterixHyracksIntegrationUtil.java
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADListenerTest.java
A asterix-bad/src/test/java/org/apache/asterix/bad/test/BADRecoveryTest.java
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.1.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.2.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.3.sleep.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.4.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.5.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.6.ddl.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_procedures/check_procedures.1.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_procedures/check_procedures.2.update.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_procedures/check_procedures.3.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_procedures/check_procedures.4.update.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_procedures/check_procedures.5.query.sqlpp
A asterix-bad/src/test/resources/recoveryts/queries/recovery/ddl/ddl.1.ddl.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/ddl/ddl.2.update.sqlpp
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_channels/check_channels.1.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_channels/check_channels.2.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_channels/check_channels.4.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_channels/check_channels.5.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_procedures/check_procedures.1.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_procedures/check_procedures.3.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_procedures/check_procedures.5.adm
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure/query_procedure.3.query.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure/query_procedure.5.query.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.2.query.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.3.query.sqlpp
M 
asterix-bad/src/test/resources/runtimets/results/procedure/create_procedure_check_metadata/create_procedure_check_metadata.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/procedure/query_procedure/query_procedure.3.adm
M 
asterix-bad/src/test/resources/runtimets/results/procedure/query_procedure/query_procedure.5.adm
M 
asterix-bad/src/test/resources/runtimets/results/procedure/query_procedure_with_parameters/query_procedure_with_parameters.2.adm
45 files changed, 587 insertions(+), 197 deletions(-)


  git pull 

Change in asterixdb-bad[master]: Redeploy channels and procedures during recovery

2018-05-17 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2641

to look at the new patch set (#11).

Change subject: Redeploy channels and procedures during recovery
..

Redeploy channels and procedures during recovery

Use the GlobalRecoveryManager extension to redeploy channels/procedures
Restart execution of channels during recovery
Some code cleanup

Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
---
M asterix-bad/pom.xml
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
M asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/BADMetadataRecordTypes.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Procedure.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/ProcedureTupleTranslator.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADGlobalRecoveryManager.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADRecoveryExtension.java
M asterix-bad/src/main/resources/cc.conf
M 
asterix-bad/src/test/java/org/apache/asterix/bad/test/BADAsterixHyracksIntegrationUtil.java
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADListenerTest.java
A asterix-bad/src/test/java/org/apache/asterix/bad/test/BADRecoveryTest.java
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.1.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.2.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.3.sleep.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.4.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.5.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_channels/check_channels.6.ddl.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_procedures/check_procedures.1.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_procedures/check_procedures.2.update.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_procedures/check_procedures.3.query.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_procedures/check_procedures.4.update.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/check_procedures/check_procedures.5.query.sqlpp
A asterix-bad/src/test/resources/recoveryts/queries/recovery/ddl/ddl.1.ddl.sqlpp
C 
asterix-bad/src/test/resources/recoveryts/queries/recovery/ddl/ddl.2.update.sqlpp
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_channels/check_channels.1.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_channels/check_channels.2.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_channels/check_channels.4.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_channels/check_channels.5.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_procedures/check_procedures.1.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_procedures/check_procedures.3.adm
A 
asterix-bad/src/test/resources/recoveryts/results/recovery/check_procedures/check_procedures.5.adm
A asterix-bad/src/test/resources/recoveryts/testsuite.xml
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure/query_procedure.3.query.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure/query_procedure.5.query.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.2.query.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_with_parameters/query_procedure_with_parameters.3.query.sqlpp
M 
asterix-bad/src/test/resources/runtimets/results/procedure/create_procedure_check_metadata/create_procedure_check_metadata.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/procedure/query_procedure/query_procedure.3.adm
M 
asterix-bad/src/test/resources/runtimets/results/procedure/query_procedure/query_procedure.5.adm
M 
asterix-bad/src/test/resources/runtimets/results/procedure/query_procedure_with_parameters/query_procedure_with_parameters.2.adm
46 files changed, 627 insertions(+), 197 

Change in asterixdb[master]: [ASTERIXDB-2386][CLUS] Allow extension of the global recover...

2018-05-15 Thread Steven Jacobs (Code Review)
Steven Jacobs has posted comments on this change.

Change subject: [ASTERIXDB-2386][CLUS] Allow extension of the global recovery 
manager
..


Patch Set 8: Code-Review+2

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2640
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I1213e702a77ededde18ee0b50bc105212f43480d
Gerrit-PatchSet: 8
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: No


Change in asterixdb-bad[master]: Coordinated change to redeploy job specs

2018-05-15 Thread Steven Jacobs (Code Review)
Steven Jacobs has submitted this change and it was merged.

Change subject: Coordinated change to redeploy job specs
..


Coordinated change to redeploy job specs

Change-Id: I9baa1cd172d7ed8605b8eccbfe838c85f377f9e4
---
M asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
1 file changed, 1 insertion(+), 1 deletion(-)

Approvals:
  Till Westmann: Looks good to me, approved
  Jenkins: Verified
  Xikui Wang: Looks good to me, approved



diff --git 
a/asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java 
b/asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
index e326ce6..e587072 100644
--- a/asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
+++ b/asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
@@ -230,7 +230,7 @@
 jobSpec = compileProcedureJob(badStatementExecutor, 
metadataProvider, hcc, hdc, stats, fStatements.get(1));
 
 }
-hcc.upsertDeployedJobSpec(listener.getDeployedJobSpecId(), jobSpec);
+hcc.redeployJobSpec(listener.getDeployedJobSpecId(), jobSpec);
 
 listener.resume();
 

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2644
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I9baa1cd172d7ed8605b8eccbfe838c85f377f9e4
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb-bad[master]: Coordinated change to redeploy job specs

2018-05-15 Thread Steven Jacobs (Code Review)
Steven Jacobs has uploaded a new change for review.

  https://asterix-gerrit.ics.uci.edu/2644

Change subject: Coordinated change to redeploy job specs
..

Coordinated change to redeploy job specs

Change-Id: I9baa1cd172d7ed8605b8eccbfe838c85f377f9e4
---
M asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
1 file changed, 1 insertion(+), 1 deletion(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/44/2644/1

diff --git 
a/asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java 
b/asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
index e326ce6..e587072 100644
--- a/asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
+++ b/asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
@@ -230,7 +230,7 @@
 jobSpec = compileProcedureJob(badStatementExecutor, 
metadataProvider, hcc, hdc, stats, fStatements.get(1));
 
 }
-hcc.upsertDeployedJobSpec(listener.getDeployedJobSpecId(), jobSpec);
+hcc.redeployJobSpec(listener.getDeployedJobSpecId(), jobSpec);
 
 listener.resume();
 

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2644
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I9baa1cd172d7ed8605b8eccbfe838c85f377f9e4
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 


Change in asterixdb-bad[master]: Redeploy channels and procedures during recovery

2018-05-15 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2641

to look at the new patch set (#6).

Change subject: Redeploy channels and procedures during recovery
..

Redeploy channels and procedures during recovery

Use the GlobalRecoveryManager extension to redeploy channels/procedures
Restart execution of channels during recovery
Some code cleanup

Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
---
M asterix-bad/pom.xml
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
M asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ExecuteProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/BADMetadataRecordTypes.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Procedure.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/ProcedureTupleTranslator.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADGlobalRecoveryManager.java
A 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADRecoveryExtension.java
M asterix-bad/src/main/resources/cc.conf
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADListenerTest.java
M 
asterix-bad/src/test/resources/runtimets/results/procedure/create_procedure_check_metadata/create_procedure_check_metadata.1.adm
16 files changed, 348 insertions(+), 143 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/41/2641/6
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2641
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I6897ccf9cddb9ec8d10256e252ee893afe6db145
Gerrit-PatchSet: 6
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb[master]: [COMP][ASTERIXDB-2400] Fix UNION handling in InlineAllNtsInS...

2018-06-11 Thread Steven Jacobs (Code Review)
Steven Jacobs has submitted this change and it was merged.

Change subject: [COMP][ASTERIXDB-2400] Fix UNION handling in 
InlineAllNtsInSubplanVisitor
..


[COMP][ASTERIXDB-2400] Fix UNION handling in InlineAllNtsInSubplanVisitor

Makes the visitor correctly allow substitution of the input ops
for the output op in future operators
Added test

Change-Id: I8b7e3e24749ed88e27d6cd38be5584ea748f39fc
Reviewed-on: https://asterix-gerrit.ics.uci.edu/2703
Sonar-Qube: Jenkins 
Tested-by: Jenkins 
Contrib: Jenkins 
Integration-Tests: Jenkins 
Reviewed-by: Dmitry Lychagin 
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/subplan/InlineAllNtsInSubplanVisitor.java
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/upsert-case-returning/upsert-case-returning.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/upsert-case-returning/upsert-case-returning.2.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/upsert-case-returning/upsert-case-returning.3.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/upsert-case-returning/upsert-case-returning.4.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/upsert/upsert-case-returning/upsert-case-returning.3.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/upsert/upsert-case-returning/upsert-case-returning.4.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
8 files changed, 184 insertions(+), 2 deletions(-)

Approvals:
  Anon. E. Moose #1000171: 
  Jenkins: Verified; No violations found; ; Verified
  Dmitry Lychagin: Looks good to me, approved



diff --git 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/subplan/InlineAllNtsInSubplanVisitor.java
 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/subplan/InlineAllNtsInSubplanVisitor.java
index a98a9f4..4d646f3 100644
--- 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/subplan/InlineAllNtsInSubplanVisitor.java
+++ 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/subplan/InlineAllNtsInSubplanVisitor.java
@@ -562,8 +562,8 @@
 // Update the variable mappings
 List> 
varTriples = op.getVariableMappings();
 for (Triple triple 
: varTriples) {
-updateInputToOutputVarMapping(triple.third, triple.first, false);
-updateInputToOutputVarMapping(triple.second, triple.first, false);
+updateInputToOutputVarMapping(triple.first, triple.third, false);
+updateInputToOutputVarMapping(triple.second, triple.third, false);
 }
 return op;
 }
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/upsert-case-returning/upsert-case-returning.1.ddl.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/upsert-case-returning/upsert-case-returning.1.ddl.sqlpp
new file mode 100644
index 000..d3162f4
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/upsert-case-returning/upsert-case-returning.1.ddl.sqlpp
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+/*
+ * Description  : Test for issue ASTERIXDB-2400
+ * Expected Res : Success
+ * Date : Jun 2018
+ */
+
+drop dataverse test if exists;
+create dataverse test;
+use test;
+
+create type sub as {
+  subscriptionId: uuid
+};
+
+create dataset subscriptions(sub) primary key subscriptionId;
\ No newline at end of file
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/upsert-case-returning/upsert-case-returning.2.update.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/upsert-case-returning/upsert-case-returning.2.update.sqlpp
new file mode 100644
index 000..c4ba876
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/upsert-case-returning/upsert-case-returning.2.update.sqlpp
@@ -0,0 +1,72 @@
+/*
+ * Licensed to the 

Change in asterixdb[master]: [ASTERIXDB-2394][COMP] Align VarCounter in query rewritting

2018-06-07 Thread Steven Jacobs (Code Review)
Steven Jacobs has submitted this change and it was merged.

Change subject: [ASTERIXDB-2394][COMP] Align VarCounter in query rewritting
..


[ASTERIXDB-2394][COMP] Align VarCounter in query rewritting

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
Currently, before we do certain language rewritings, we take a snapshot
of the var counter in the context and pass it to the rewriter. This
works fine in most of the cases, but it can fail when the rewriter
introduces new variables. This will cause different variables map to the
same variable id. Although this error may be fixed by another
ScopingVisitor, the compiler could fail if there is no more visitor down
in the rewriting workflow.

Change-Id: I8ea1ee7de140d6556af03f07a5ec7bc278b011ba
Reviewed-on: https://asterix-gerrit.ics.uci.edu/2673
Sonar-Qube: Jenkins 
Tested-by: Jenkins 
Integration-Tests: Jenkins 
Contrib: Jenkins 
Reviewed-by: Dmitry Lychagin 
---
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/aggregate/constant-gby-agg.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/btree-index-join/secondary-equi-join_06.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/denorm-cust-order.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/filter/inverted-btree-search-return-optional-field.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/gby_partitioning_property_01.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/query-ASTERIXDB-1806.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/query-issue601.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/rtree-index/rtree-sidx-idxonly-01-disable-idxonly.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/split-materialization.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/subquery/exists.plan
M asterixdb/asterix-app/src/test/resources/optimizerts/results/subquery/in.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/subquery/in_correlated.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/subquery/not_exists.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/subquery/query-ASTERIXDB-1572.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/tpcds/query-ASTERIXDB-1580.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/tpcds/query-ASTERIXDB-1581-correlated.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/tpcds/query-ASTERIXDB-1581.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/tpch/q12_shipping.plan
M 
asterixdb/asterix-app/src/test/resources/optimizerts/results/tpch/q12_shipping_broadcast.plan
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/function/issue-2394/issue-2394.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/function/issue-2394/issue-2394.2.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/function/issue-2394/issue-2394.3.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/function/issue-2394/issue-2394.4.ddl.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/explain/explain_field_access/explain_field_access.1.adm
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/explain/explain_field_access_closed/explain_field_access_closed.1.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/function/issue-2394/issue-2394.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
M 
asterixdb/asterix-lang-aql/src/main/java/org/apache/asterix/lang/aql/rewrites/AqlQueryRewriter.java
M 
asterixdb/asterix-lang-common/src/main/java/org/apache/asterix/lang/common/rewrites/LangRewritingContext.java
M 
asterixdb/asterix-lang-sqlpp/src/main/java/org/apache/asterix/lang/sqlpp/rewrites/SqlppQueryRewriter.java
M 
asterixdb/asterix-lang-sqlpp/src/main/java/org/apache/asterix/lang/sqlpp/visitor/base/AbstractSqlppExpressionScopingVisitor.java
31 files changed, 344 insertions(+), 196 deletions(-)

Approvals:
  Anon. E. Moose #1000171: 
  Jenkins: Verified; No violations found; ; Verified
  Dmitry Lychagin: Looks good to me, approved



diff --git 
a/asterixdb/asterix-app/src/test/resources/optimizerts/results/aggregate/constant-gby-agg.plan
 
b/asterixdb/asterix-app/src/test/resources/optimizerts/results/aggregate/constant-gby-agg.plan
index c83a85c..59ddab8 100644
--- 
a/asterixdb/asterix-app/src/test/resources/optimizerts/results/aggregate/constant-gby-agg.plan
+++ 
b/asterixdb/asterix-app/src/test/resources/optimizerts/results/aggregate/constant-gby-agg.plan
@@ -3,13 +3,13 @@
 -- STREAM_PROJECT  |PARTITIONED|
   -- ASSIGN  |PARTITIONED|
 -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
-  -- SORT_GROUP_BY[$$38]  |PARTITIONED|
+  

Change in asterixdb-bad[master]: Coordinated Change for Align VarCounter in query rewritting

2018-06-07 Thread Steven Jacobs (Code Review)
Steven Jacobs has submitted this change and it was merged.

Change subject: Coordinated Change for Align VarCounter in query rewritting
..


Coordinated Change for Align VarCounter in query rewritting

Change-Id: I20701e5119a65e06d33e379bc3520dff1e2d6c2e
---
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-advanced-index-only.plan
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-advanced.plan
M asterix-bad/src/test/resources/optimizerts/results/channel/channel-create.plan
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-subscribe.plan
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-unsubscribe.plan
5 files changed, 65 insertions(+), 65 deletions(-)

Approvals:
  Jenkins: Verified
  Dmitry Lychagin: Looks good to me, approved



diff --git 
a/asterix-bad/src/test/resources/optimizerts/results/channel/channel-advanced-index-only.plan
 
b/asterix-bad/src/test/resources/optimizerts/results/channel/channel-advanced-index-only.plan
index d0b3087..308c8b1 100644
--- 
a/asterix-bad/src/test/resources/optimizerts/results/channel/channel-advanced-index-only.plan
+++ 
b/asterix-bad/src/test/resources/optimizerts/results/channel/channel-advanced-index-only.plan
@@ -1,17 +1,17 @@
 -- NOTIFY_BROKERS  |PARTITIONED|
   -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
--- PRE_CLUSTERED_GROUP_BY[$$134, $$channelExecutionTime]  |PARTITIONED|
+-- PRE_CLUSTERED_GROUP_BY[$$141, $$channelExecutionTime]  |PARTITIONED|
 {
   -- AGGREGATE  |LOCAL|
 -- NESTED_TUPLE_SOURCE  |LOCAL|
 }
   -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
--- STABLE_SORT [$$134(ASC), $$channelExecutionTime(ASC)]  |PARTITIONED|
-  -- HASH_PARTITION_EXCHANGE [$$134, $$channelExecutionTime]  
|PARTITIONED|
+-- STABLE_SORT [$$141(ASC), $$channelExecutionTime(ASC)]  |PARTITIONED|
+  -- HASH_PARTITION_EXCHANGE [$$141, $$channelExecutionTime]  
|PARTITIONED|
 -- PRE_SORTED_DISTINCT_BY  |PARTITIONED|
   -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
--- STABLE_SORT [$$109(ASC)]  |PARTITIONED|
-  -- HASH_PARTITION_EXCHANGE [$$109]  |PARTITIONED|
+-- STABLE_SORT [$$116(ASC)]  |PARTITIONED|
+  -- HASH_PARTITION_EXCHANGE [$$116]  |PARTITIONED|
 -- STREAM_PROJECT  |PARTITIONED|
   -- COMMIT  |PARTITIONED|
 -- STREAM_PROJECT  |PARTITIONED|
@@ -21,7 +21,7 @@
 -- STREAM_PROJECT  |PARTITIONED|
   -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
 -- INSERT_DELETE  |PARTITIONED|
-  -- HASH_PARTITION_EXCHANGE [$$104]  
|PARTITIONED|
+  -- HASH_PARTITION_EXCHANGE [$$111]  
|PARTITIONED|
 -- ASSIGN  |PARTITIONED|
   -- STREAM_PROJECT  |PARTITIONED|
 -- ASSIGN  |PARTITIONED|
@@ -33,12 +33,12 @@
 -- STREAM_SELECT  
|PARTITIONED|
   -- STREAM_PROJECT  
|PARTITIONED|
 -- 
ONE_TO_ONE_EXCHANGE  |PARTITIONED|
-  -- 
HYBRID_HASH_JOIN [$$119][$$118]  |PARTITIONED|
--- 
HASH_PARTITION_EXCHANGE [$$119]  |PARTITIONED|
+  -- 
HYBRID_HASH_JOIN [$$126][$$125]  |PARTITIONED|
+-- 
HASH_PARTITION_EXCHANGE [$$126]  |PARTITIONED|
   -- 
STREAM_PROJECT  |PARTITIONED|
 -- 
ONE_TO_ONE_EXCHANGE  |PARTITIONED|
-  -- 
HYBRID_HASH_JOIN [$$117, $$115][$$110, $$111]  |PARTITIONED|
--- 
HASH_PARTITION_EXCHANGE [$$117, $$115]  |PARTITIONED|
+  -- 
HYBRID_HASH_JOIN [$$124, $$122][$$117, $$118]  |PARTITIONED|
+-- 
HASH_PARTITION_EXCHANGE [$$124, $$122]  |PARTITIONED|
   -- 
STREAM_PROJECT  |PARTITIONED|
 -- 
ASSIGN  |PARTITIONED|
   

Change in asterixdb-bad[master]: Coordinated change to support parameterized queries

2018-06-15 Thread Steven Jacobs (Code Review)
Steven Jacobs has posted comments on this change.

Change subject: Coordinated change to support parameterized queries
..


Patch Set 6: Code-Review+2

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2712
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Icce06a1548a4f4150545c1fda7e5be3608472af5
Gerrit-PatchSet: 6
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Till Westmann 
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: No


Change in asterixdb-bad[master]: Coordinated change to support parameterized queries

2018-06-15 Thread Steven Jacobs (Code Review)
Steven Jacobs has submitted this change and it was merged.

Change subject: Coordinated change to support parameterized queries
..


Coordinated change to support parameterized queries

Change-Id: Icce06a1548a4f4150545c1fda7e5be3608472af5
---
M asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADCompilationProvider.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ChannelSubscribeStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ChannelUnsubscribeStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateProcedureStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADGlobalRecoveryManager.java
8 files changed, 23 insertions(+), 44 deletions(-)

Approvals:
  Steven Jacobs: Looks good to me, approved
  Till Westmann: Looks good to me, but someone else must approve
  Jenkins: Verified



diff --git 
a/asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java 
b/asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
index 69145d9..c48ec54 100644
--- a/asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
+++ b/asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
@@ -108,9 +108,8 @@
 public static boolean runDeployedJobSpecCheckPeriod(DeployedJobSpecId 
distributedId, IHyracksClientConnection hcc,
 Map jobParameters, long period, EntityId entityId, 
ITxnIdFactory txnIdFactory,
 DeployedJobSpecEventListener listener) throws Exception {
-long executionMilliseconds =
-runDeployedJobSpec(distributedId, hcc, null, jobParameters, 
entityId, txnIdFactory, null, listener,
-null);
+long executionMilliseconds = runDeployedJobSpec(distributedId, hcc, 
null, jobParameters, entityId, txnIdFactory,
+null, listener, null);
 if (executionMilliseconds > period) {
 LOGGER.log(Level.SEVERE,
 "Periodic job for " + entityId.getExtensionName() + " " + 
entityId.getDataverse() + "."
@@ -153,7 +152,6 @@
 
 }
 
-
 public static long findPeriod(String duration) {
 //TODO: Allow Repetitive Channels to use YMD durations
 String hoursMinutesSeconds = "";
@@ -189,7 +187,8 @@
 metadataProvider.setMetadataTxnContext(mdTxnCtx);
 JobSpecification jobSpec = null;
 try {
-jobSpec = ((QueryTranslator) 
statementExecutor).rewriteCompileQuery(hcc, metadataProvider, q, null);
+jobSpec = ((QueryTranslator) 
statementExecutor).rewriteCompileQuery(hcc, metadataProvider, q, null, null,
+null);
 MetadataManager.INSTANCE.commitTransaction(mdTxnCtx);
 bActiveTxn = false;
 } catch (Exception e) {
@@ -230,7 +229,7 @@
 jobSpec = compilePushChannel(badStatementExecutor, 
metadataProvider, hcc, (Query) fStatements.get(1));
 } else {
 jobSpec = 
badStatementExecutor.handleInsertUpsertStatement(metadataProvider, 
fStatements.get(1), hcc,
-null, null, null, null, true, null);
+null, null, null, null, true, null, null, null);
 }
 } else {
 //Procedures
@@ -263,7 +262,7 @@
 metadataProvider.setMetadataTxnContext(mdTxnCtx);
 JobSpecification jobSpec;
 try {
-jobSpec = statementExecutor.rewriteCompileQuery(hcc, 
metadataProvider, q, null);
+jobSpec = statementExecutor.rewriteCompileQuery(hcc, 
metadataProvider, q, null, null, null);
 MetadataManager.INSTANCE.commitTransaction(mdTxnCtx);
 } catch (Exception e) {
 ((QueryTranslator) statementExecutor).abort(e, e, mdTxnCtx);
@@ -277,14 +276,15 @@
 IStatementExecutor.Stats stats, Statement procedureStatement) 
throws Exception {
 if (procedureStatement.getKind() == Statement.Kind.INSERT) {
 return ((QueryTranslator) 
statementExecutor).handleInsertUpsertStatement(metadataProvider,
-procedureStatement, hcc, hdc, 
IStatementExecutor.ResultDelivery.ASYNC, null, stats, true, null);
+procedureStatement, hcc, hdc, 
IStatementExecutor.ResultDelivery.ASYNC, null, stats, true, null,
+null, null);
 } else if (procedureStatement.getKind() == Statement.Kind.QUERY) {
 return compileQueryJob(statementExecutor, metadataProvider, hcc, 
(Query) procedureStatement);
 } else {
 SqlppDeleteRewriteVisitor visitor = new 
SqlppDeleteRewriteVisitor();
 

Change in asterixdb[master]: [COMP][ASTERIXDB-2400] Fix UNION handling in InlineAllNtsInS...

2018-06-11 Thread Steven Jacobs (Code Review)
Steven Jacobs has uploaded a new change for review.

  https://asterix-gerrit.ics.uci.edu/2703

Change subject: [COMP][ASTERIXDB-2400] Fix UNION handling in 
InlineAllNtsInSubplanVisitor
..

[COMP][ASTERIXDB-2400] Fix UNION handling in InlineAllNtsInSubplanVisitor

Makes the visitor correctly allow substitution of the input ops
for the output op in future operators
Added test

Change-Id: I8b7e3e24749ed88e27d6cd38be5584ea748f39fc
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/subplan/InlineAllNtsInSubplanVisitor.java
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/upsert-case-returning/upsert-case-returning.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/upsert-case-returning/upsert-case-returning.2.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/upsert-case-returning/upsert-case-returning.3.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/upsert-case-returning/upsert-case-returning.4.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/upsert/upsert-case-returning/upsert-case-returning.3.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/upsert/upsert-case-returning/upsert-case-returning.4.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
8 files changed, 184 insertions(+), 2 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/03/2703/1

diff --git 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/subplan/InlineAllNtsInSubplanVisitor.java
 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/subplan/InlineAllNtsInSubplanVisitor.java
index a98a9f4..4d646f3 100644
--- 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/subplan/InlineAllNtsInSubplanVisitor.java
+++ 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/subplan/InlineAllNtsInSubplanVisitor.java
@@ -562,8 +562,8 @@
 // Update the variable mappings
 List> 
varTriples = op.getVariableMappings();
 for (Triple triple 
: varTriples) {
-updateInputToOutputVarMapping(triple.third, triple.first, false);
-updateInputToOutputVarMapping(triple.second, triple.first, false);
+updateInputToOutputVarMapping(triple.first, triple.third, false);
+updateInputToOutputVarMapping(triple.second, triple.third, false);
 }
 return op;
 }
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/upsert-case-returning/upsert-case-returning.1.ddl.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/upsert-case-returning/upsert-case-returning.1.ddl.sqlpp
new file mode 100644
index 000..d3162f4
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/upsert-case-returning/upsert-case-returning.1.ddl.sqlpp
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+/*
+ * Description  : Test for issue ASTERIXDB-2400
+ * Expected Res : Success
+ * Date : Jun 2018
+ */
+
+drop dataverse test if exists;
+create dataverse test;
+use test;
+
+create type sub as {
+  subscriptionId: uuid
+};
+
+create dataset subscriptions(sub) primary key subscriptionId;
\ No newline at end of file
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/upsert-case-returning/upsert-case-returning.2.update.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/upsert-case-returning/upsert-case-returning.2.update.sqlpp
new file mode 100644
index 000..c4ba876
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/upsert/upsert-case-returning/upsert-case-returning.2.update.sqlpp
@@ -0,0 +1,72 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright 

Change in asterixdb-bad[master]: Improve performance of NotifyBrokerRuntime code

2018-06-19 Thread Steven Jacobs (Code Review)
Steven Jacobs has uploaded a new change for review.

  https://asterix-gerrit.ics.uci.edu/2717

Change subject: Improve performance of NotifyBrokerRuntime code
..

Improve performance of NotifyBrokerRuntime code

Change-Id: Ia4ecd381d102c67f7c66cfa965312bfb885aa281
---
M 
asterix-bad/src/main/java/org/apache/asterix/bad/runtime/NotifyBrokerRuntime.java
1 file changed, 57 insertions(+), 52 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/17/2717/1

diff --git 
a/asterix-bad/src/main/java/org/apache/asterix/bad/runtime/NotifyBrokerRuntime.java
 
b/asterix-bad/src/main/java/org/apache/asterix/bad/runtime/NotifyBrokerRuntime.java
index 6ffb244..97615b1 100644
--- 
a/asterix-bad/src/main/java/org/apache/asterix/bad/runtime/NotifyBrokerRuntime.java
+++ 
b/asterix-bad/src/main/java/org/apache/asterix/bad/runtime/NotifyBrokerRuntime.java
@@ -19,34 +19,33 @@
 
 package org.apache.asterix.bad.runtime;
 
+import java.io.ByteArrayOutputStream;
 import java.io.DataInputStream;
 import java.io.DataOutputStream;
 import java.io.IOException;
+import java.io.PrintStream;
+import java.io.UnsupportedEncodingException;
 import java.net.HttpURLConnection;
 import java.net.URL;
 import java.nio.ByteBuffer;
+import java.nio.charset.StandardCharsets;
 import java.util.HashMap;
-import java.util.HashSet;
 import java.util.Map;
 import java.util.logging.Level;
 import java.util.logging.Logger;
 
-import org.apache.asterix.active.ActiveManager;
 import org.apache.asterix.active.EntityId;
 import org.apache.asterix.bad.BADConstants;
-import org.apache.asterix.common.api.INcApplicationContext;
+import 
org.apache.asterix.dataflow.data.nontagged.printers.json.clean.AOrderedlistPrinterFactory;
+import 
org.apache.asterix.dataflow.data.nontagged.printers.json.clean.ARecordPrinterFactory;
 import 
org.apache.asterix.dataflow.data.nontagged.serde.ADateTimeSerializerDeserializer;
-import 
org.apache.asterix.dataflow.data.nontagged.serde.AOrderedListSerializerDeserializer;
-import 
org.apache.asterix.dataflow.data.nontagged.serde.ARecordSerializerDeserializer;
 import 
org.apache.asterix.dataflow.data.nontagged.serde.AStringSerializerDeserializer;
 import org.apache.asterix.om.base.ADateTime;
-import org.apache.asterix.om.base.AOrderedList;
-import org.apache.asterix.om.base.ARecord;
-import org.apache.asterix.om.base.AUUID;
 import org.apache.asterix.om.types.AOrderedListType;
 import org.apache.asterix.om.types.ARecordType;
 import org.apache.asterix.om.types.BuiltinType;
 import org.apache.asterix.om.types.IAType;
+import org.apache.hyracks.algebricks.data.IPrinter;
 import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator;
 import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory;
 import 
org.apache.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime;
@@ -58,15 +57,19 @@
 import org.apache.hyracks.dataflow.common.comm.io.FrameTupleAccessor;
 import org.apache.hyracks.dataflow.common.comm.util.ByteBufferInputStream;
 import org.apache.hyracks.dataflow.common.data.accessors.FrameTupleReference;
+import org.apache.hyracks.util.string.UTF8StringReader;
+import org.apache.hyracks.util.string.UTF8StringWriter;
 
 public class NotifyBrokerRuntime extends 
AbstractOneInputOneOutputOneFramePushRuntime {
 private static final Logger LOGGER = 
Logger.getLogger(NotifyBrokerRuntime.class.getName());
 
 private final ByteBufferInputStream bbis = new ByteBufferInputStream();
 private final DataInputStream di = new DataInputStream(bbis);
-private final AOrderedListSerializerDeserializer subSerDes =
-new AOrderedListSerializerDeserializer(new 
AOrderedListType(BuiltinType.AUUID, null));
-private final ARecordSerializerDeserializer recordSerDes;
+private static final AStringSerializerDeserializer stringSerDes =
+new AStringSerializerDeserializer(new UTF8StringWriter(), new 
UTF8StringReader());
+
+private final IPrinter recordPrinterFactory;
+private final IPrinter listPrinterFactory;
 
 private IPointable inputArg0 = new VoidPointable();
 private IPointable inputArg1 = new VoidPointable();
@@ -74,14 +77,14 @@
 private IScalarEvaluator eval0;
 private IScalarEvaluator eval1;
 private IScalarEvaluator eval2;
-private final ActiveManager activeManager;
 private final EntityId entityId;
 private final boolean push;
-private AOrderedList pushList;
-private ARecord pushRecord;
-private final IAType recordType;
-private final Map> sendData = new HashMap<>();
+private final Map sendData = new HashMap<>();
+private final Map sendbaos = new 
HashMap<>();
+private final Map sendStreams = new HashMap<>();
 private String executionTimeString;
+private boolean firstResult = true;
+String endpoint;
 
 public NotifyBrokerRuntime(IHyracksTaskContext ctx, 

Change in asterixdb-bad[master]: Improve performance of NotifyBrokerRuntime code

2018-06-19 Thread Steven Jacobs (Code Review)
Steven Jacobs has posted comments on this change.

Change subject: Improve performance of NotifyBrokerRuntime code
..


Patch Set 1:

(6 comments)

https://asterix-gerrit.ics.uci.edu/#/c/2717/1/asterix-bad/src/main/java/org/apache/asterix/bad/runtime/NotifyBrokerRuntime.java
File 
asterix-bad/src/main/java/org/apache/asterix/bad/runtime/NotifyBrokerRuntime.java:

Line 99: listPrinterFactory =
> -> subscriptionIdPrinter ?
Done


Line 114: String JSON = "{ \"dataverseName\":\"" + 
entityId.getDataverse() + "\", \"channelName\":\""
> let's take this chance to rename this variable to jsonStr. JSON is an actua
Done


PS1, Line 177: + 1
> What's this +1 for?
To skip the type tag in the serialized value


Line 178: endpoint = stringSerDes.deserialize(di).getStringValue();
> It seems the endpoint comes from one of the record field value? Do we have 
Done


Line 181: sendStreams.putIfAbsent(endpoint, new 
PrintStream(sendbaos.get(endpoint), true, "UTF-8"));
> use standard charset as well
Not sure what this is referring to.


Line 193: sendStreams.get(endpoint));
> uncheck firstResult?
line 202 (happens in both cases)


-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2717
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ia4ecd381d102c67f7c66cfa965312bfb885aa281
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: Yes


Change in asterixdb-bad[master]: Improve performance of NotifyBrokerRuntime code

2018-06-19 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2717

to look at the new patch set (#2).

Change subject: Improve performance of NotifyBrokerRuntime code
..

Improve performance of NotifyBrokerRuntime code

Change-Id: Ia4ecd381d102c67f7c66cfa965312bfb885aa281
---
M 
asterix-bad/src/main/java/org/apache/asterix/bad/runtime/NotifyBrokerRuntime.java
1 file changed, 66 insertions(+), 55 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/17/2717/2
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2717
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ia4ecd381d102c67f7c66cfa965312bfb885aa281
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb-bad[master]: Improve performance of NotifyBrokerRuntime code

2018-06-19 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2717

to look at the new patch set (#3).

Change subject: Improve performance of NotifyBrokerRuntime code
..

Improve performance of NotifyBrokerRuntime code

Change-Id: Ia4ecd381d102c67f7c66cfa965312bfb885aa281
---
M 
asterix-bad/src/main/java/org/apache/asterix/bad/runtime/NotifyBrokerRuntime.java
1 file changed, 67 insertions(+), 55 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/17/2717/3
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2717
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ia4ecd381d102c67f7c66cfa965312bfb885aa281
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb-bad[master]: Improve performance of NotifyBrokerRuntime code

2018-06-19 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2717

to look at the new patch set (#4).

Change subject: Improve performance of NotifyBrokerRuntime code
..

Improve performance of NotifyBrokerRuntime code

Change-Id: Ia4ecd381d102c67f7c66cfa965312bfb885aa281
---
M asterix-bad/pom.xml
M 
asterix-bad/src/main/java/org/apache/asterix/bad/runtime/NotifyBrokerRuntime.java
2 files changed, 77 insertions(+), 55 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/17/2717/4
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2717
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ia4ecd381d102c67f7c66cfa965312bfb885aa281
Gerrit-PatchSet: 4
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb[master]: [ASTERIXDB-2391][SQL] Move returning expression below insert

2018-05-31 Thread Steven Jacobs (Code Review)
Hello Anon. E. Moose #1000171,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2675

to look at the new patch set (#2).

Change subject: [ASTERIXDB-2391][SQL] Move returning expression below insert
..

[ASTERIXDB-2391][SQL] Move returning expression below insert

This change moves the returning expression for an insert
to be below the insert operator, in order to allow
further rewrites to handle the variables correctly.

Change-Id: Ifdd9f1c7afd3de1ca35934dc07386ea814521894
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/LangExpressionToPlanTranslator.java
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.3.query.sqlpp
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
4 files changed, 72 insertions(+), 2 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/75/2675/2
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2675
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ifdd9f1c7afd3de1ca35934dc07386ea814521894
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Michael Blow 


Change in asterixdb[master]: [ASTERIXDB-2391][SQL] Move returning expression below insert

2018-05-31 Thread Steven Jacobs (Code Review)
Steven Jacobs has uploaded a new change for review.

  https://asterix-gerrit.ics.uci.edu/2675

Change subject: [ASTERIXDB-2391][SQL] Move returning expression below insert
..

[ASTERIXDB-2391][SQL] Move returning expression below insert

This change moves the returning expression for an insert
to be below the insert operator, in order to allow
further rewrites to handle the variables correctly.

Change-Id: Ifdd9f1c7afd3de1ca35934dc07386ea814521894
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/LangExpressionToPlanTranslator.java
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.3.query.sqlpp
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
4 files changed, 72 insertions(+), 2 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/75/2675/1

diff --git 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/LangExpressionToPlanTranslator.java
 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/LangExpressionToPlanTranslator.java
index 9a6870d..1fbeeaf 100644
--- 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/LangExpressionToPlanTranslator.java
+++ 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/LangExpressionToPlanTranslator.java
@@ -577,7 +577,8 @@
 // Adds an assign operator for the returning expression.
 LogicalVariable resultVar = context.newVar();
 AssignOperator assignOperator = new AssignOperator(resultVar, new 
MutableObject<>(p.first));
-assignOperator.getInputs().add(p.second);
+assignOperator.getInputs().add(insertOp.getInputs().get(0));
+insertOp.getInputs().set(0, new MutableObject<>(assignOperator));
 
 // Adds a distribute result operator.
 List> expressions = new ArrayList<>();
@@ -585,7 +586,7 @@
 ResultSetSinkId rssId = new 
ResultSetSinkId(metadataProvider.getResultSetId());
 ResultSetDataSink sink = new ResultSetDataSink(rssId, null);
 rootOperator = new DistributeResultOperator(expressions, sink);
-rootOperator.getInputs().add(new MutableObject<>(assignOperator));
+rootOperator.getInputs().add(new MutableObject<>(inputOperator));
 return rootOperator;
 }
 
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.1.ddl.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.1.ddl.sqlpp
new file mode 100644
index 000..a41976b
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.1.ddl.sqlpp
@@ -0,0 +1,34 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+/*
+ * Test case Name  : insert-returning-fieldname
+ * Description : Check fields returned on insert
+ * Expected Result : Success
+ * Date: Mar 2015
+ */
+
+drop dataverse test if exists;
+create dataverse test;
+use test;
+
+create type sub as
+{ subscriptionId: uuid }
+;
+
+create dataset subscriptions(sub) primary key subscriptionId;
\ No newline at end of file
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.3.query.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.3.query.sqlpp
new file mode 100644
index 000..dad3a82
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.3.query.sqlpp
@@ -0,0 +1,30 @@
+/*
+ * Licensed to 

Change in asterixdb[master]: [ASTERIXDB-2391][COMP] Prevent insert return variables from ...

2018-05-31 Thread Steven Jacobs (Code Review)
Steven Jacobs has abandoned this change.

Change subject: [ASTERIXDB-2391][COMP] Prevent insert return variables from 
being projected away
..


Abandoned

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2656
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: abandon
Gerrit-Change-Id: I9a86668c5c83ec2b73ceec57289211407c4ad07f
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Ildar Absalyamov 
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [ASTERIXDB-2391][SQL] Fix type casting to work with returnin...

2018-06-01 Thread Steven Jacobs (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2675

to look at the new patch set (#6).

Change subject: [ASTERIXDB-2391][SQL] Fix type casting to work with returning 
clause
..

[ASTERIXDB-2391][SQL] Fix type casting to work with returning clause

Allows the typecast variable for an insert to be propogated
into the returning clause operators

Change-Id: Ifdd9f1c7afd3de1ca35934dc07386ea814521894
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastRule.java
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.3.query.sqlpp
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
4 files changed, 132 insertions(+), 48 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/75/2675/6
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2675
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ifdd9f1c7afd3de1ca35934dc07386ea814521894
Gerrit-PatchSet: 6
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Michael Blow 


Change in asterixdb[master]: [ASTERIXDB-2391][SQL] Fix type casting to work with returnin...

2018-06-01 Thread Steven Jacobs (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2675

to look at the new patch set (#5).

Change subject: [ASTERIXDB-2391][SQL] Fix type casting to work with returning 
clause
..

[ASTERIXDB-2391][SQL] Fix type casting to work with returning clause

Allows the typecast variable for an insert to be propogated
into the returning clause operators

Change-Id: Ifdd9f1c7afd3de1ca35934dc07386ea814521894
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastRule.java
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.3.query.sqlpp
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
4 files changed, 133 insertions(+), 48 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/75/2675/5
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2675
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ifdd9f1c7afd3de1ca35934dc07386ea814521894
Gerrit-PatchSet: 5
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Michael Blow 


Change in asterixdb-bad[master]: Coordinated change for ASTERIXDB-2391

2018-06-02 Thread Steven Jacobs (Code Review)
Steven Jacobs has uploaded a new change for review.

  https://asterix-gerrit.ics.uci.edu/2684

Change subject: Coordinated change for ASTERIXDB-2391
..

Coordinated change for ASTERIXDB-2391

Change-Id: Ibfd9513efdb1c03168a8248f4ad62bc306566193
---
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-subscribe.plan
1 file changed, 11 insertions(+), 12 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/84/2684/1

diff --git 
a/asterix-bad/src/test/resources/optimizerts/results/channel/channel-subscribe.plan
 
b/asterix-bad/src/test/resources/optimizerts/results/channel/channel-subscribe.plan
index 8c2ba14..9ffe54e 100644
--- 
a/asterix-bad/src/test/resources/optimizerts/results/channel/channel-subscribe.plan
+++ 
b/asterix-bad/src/test/resources/optimizerts/results/channel/channel-subscribe.plan
@@ -61,16 +61,15 @@
   -- 
EMPTY_TUPLE_SOURCE  |PARTITIONED|
 -- DISTRIBUTE_RESULT  |PARTITIONED|
   -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
--- STREAM_PROJECT  |PARTITIONED|
-  -- COMMIT  |PARTITIONED|
--- STREAM_PROJECT  |PARTITIONED|
-  -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
--- INSERT_DELETE  |PARTITIONED|
-  -- HASH_PARTITION_EXCHANGE [$$4]  |PARTITIONED|
--- ASSIGN  |UNPARTITIONED|
-  -- STREAM_PROJECT  |UNPARTITIONED|
--- ASSIGN  |UNPARTITIONED|
-  -- STREAM_PROJECT  |UNPARTITIONED|
+-- COMMIT  |PARTITIONED|
+  -- STREAM_PROJECT  |PARTITIONED|
+-- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
+  -- INSERT_DELETE  |PARTITIONED|
+-- HASH_PARTITION_EXCHANGE [$$4]  |PARTITIONED|
+  -- ASSIGN  |UNPARTITIONED|
+-- STREAM_PROJECT  |UNPARTITIONED|
+  -- ASSIGN  |UNPARTITIONED|
+-- STREAM_PROJECT  |UNPARTITIONED|
+  -- ASSIGN  |UNPARTITIONED|
 -- ASSIGN  |UNPARTITIONED|
-  -- ASSIGN  |UNPARTITIONED|
--- EMPTY_TUPLE_SOURCE  |UNPARTITIONED|
\ No newline at end of file
+  -- EMPTY_TUPLE_SOURCE  |UNPARTITIONED|
\ No newline at end of file

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2684
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ibfd9513efdb1c03168a8248f4ad62bc306566193
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 


Change in asterixdb-bad[master]: Coordinated change for ASTERIXDB-2391

2018-06-05 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2684

to look at the new patch set (#2).

Change subject: Coordinated change for ASTERIXDB-2391
..

Coordinated change for ASTERIXDB-2391

Change-Id: Ibfd9513efdb1c03168a8248f4ad62bc306566193
---
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-advanced-index-only.plan
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-advanced.plan
M asterix-bad/src/test/resources/optimizerts/results/channel/channel-create.plan
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-subscribe.plan
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-unsubscribe.plan
5 files changed, 66 insertions(+), 67 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/84/2684/2
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2684
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ibfd9513efdb1c03168a8248f4ad62bc306566193
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb-bad[master]: Fix Timing issue on Channel test

2018-06-05 Thread Steven Jacobs (Code Review)
Steven Jacobs has submitted this change and it was merged.

Change subject: Fix Timing issue on Channel test
..


Fix Timing issue on Channel test

Change-Id: I8c53943eec2f4cd28a6b118e7708ee52986577fa
---
R 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.4.pollquery.sqlpp
D 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.4.sleep.sqlpp
2 files changed, 3 insertions(+), 27 deletions(-)

Approvals:
  abdullah alamoudi: Looks good to me, approved
  Jenkins: Verified



diff --git 
a/asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.5.query.sqlpp
 
b/asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.4.pollquery.sqlpp
similarity index 92%
rename from 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.5.query.sqlpp
rename to 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.4.pollquery.sqlpp
index 2fbd21d..0c8ea0c 100644
--- 
a/asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.5.query.sqlpp
+++ 
b/asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.4.pollquery.sqlpp
@@ -22,7 +22,9 @@
 * Date : May 17
 * Author   : Steven Jacobs
 */
+// polltimeoutsecs=15
 
 use channels;
 select value array_count (result.result.shelters)
-from EmergenciesNearMeChannelResults result;
\ No newline at end of file
+from EmergenciesNearMeChannelResults result
+limit 1;
\ No newline at end of file
diff --git 
a/asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.4.sleep.sqlpp
 
b/asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.4.sleep.sqlpp
deleted file mode 100644
index 67c5efa..000
--- 
a/asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.4.sleep.sqlpp
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-/*
-* Description  : Disasters with friends
-* Expected Res : Success
-* Date : May 17
-* Author   : Steven Jacobs
-*/
-
-5000

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2690
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I8c53943eec2f4cd28a6b118e7708ee52986577fa
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: abdullah alamoudi 


Change in asterixdb[master]: [ASTERIXDB-2391][SQL] Insure that var for return clause gets...

2018-06-05 Thread Steven Jacobs (Code Review)
Steven Jacobs has uploaded a new change for review.

  https://asterix-gerrit.ics.uci.edu/2689

Change subject: [ASTERIXDB-2391][SQL] Insure that var for return clause gets 
optimized
..

[ASTERIXDB-2391][SQL] Insure that var for return clause gets optimized

Places the variable created for the return clause below the insert
so future optimizations can work on this variable

Added test

Change-Id: Id285435c4dc8a603c60b177dacd9f09722faac21
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/LangExpressionToPlanTranslator.java
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.3.query.sqlpp
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
4 files changed, 84 insertions(+), 7 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/89/2689/1

diff --git 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/LangExpressionToPlanTranslator.java
 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/LangExpressionToPlanTranslator.java
index 2dbcb36..0c46383 100644
--- 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/LangExpressionToPlanTranslator.java
+++ 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/LangExpressionToPlanTranslator.java
@@ -610,18 +610,26 @@
 }
 SourceLocation sourceLoc = compiledInsert.getSourceLocation();
 
+//Create an assign operator that makes the variable used by the return 
expression
+LogicalVariable insertedVar = context.newVar();
+AssignOperator insertedVarAssignOperator =
+new AssignOperator(insertedVar, new 
MutableObject<>(insertOp.getPayloadExpression().getValue()));
+insertedVarAssignOperator.getInputs().add(insertOp.getInputs().get(0));
+insertedVarAssignOperator.setSourceLocation(sourceLoc);
+insertOp.getInputs().set(0, new 
MutableObject<>(insertedVarAssignOperator));
+
 // Makes the id of the insert var point to the record variable.
 context.newVarFromExpression(compiledInsert.getVar());
-context.setVar(compiledInsert.getVar(),
-((VariableReferenceExpression) 
insertOp.getPayloadExpression().getValue()).getVariableReference());
+context.setVar(compiledInsert.getVar(), insertedVar);
+
 Pair> p =
 langExprToAlgExpression(returnExpression, new 
MutableObject<>(inputOperator));
 
-// Adds an assign operator for the returning expression.
+// Adds an assign operator for the result of the returning expression.
 LogicalVariable resultVar = context.newVar();
-AssignOperator assignOperator = new AssignOperator(resultVar, new 
MutableObject<>(p.first));
-assignOperator.getInputs().add(p.second);
-assignOperator.setSourceLocation(sourceLoc);
+AssignOperator createResultAssignOperator = new 
AssignOperator(resultVar, new MutableObject<>(p.first));
+createResultAssignOperator.getInputs().add(p.second);
+createResultAssignOperator.setSourceLocation(sourceLoc);
 
 // Adds a distribute result operator.
 List> expressions = new ArrayList<>();
@@ -629,7 +637,7 @@
 ResultSetSinkId rssId = new 
ResultSetSinkId(metadataProvider.getResultSetId());
 ResultSetDataSink sink = new ResultSetDataSink(rssId, null);
 DistributeResultOperator distResultOperator = new 
DistributeResultOperator(expressions, sink);
-distResultOperator.getInputs().add(new 
MutableObject<>(assignOperator));
+distResultOperator.getInputs().add(new 
MutableObject<>(createResultAssignOperator));
 
 distResultOperator.setSourceLocation(sourceLoc);
 return distResultOperator;
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.1.ddl.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.1.ddl.sqlpp
new file mode 100644
index 000..a41976b
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.1.ddl.sqlpp
@@ -0,0 +1,34 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use 

Change in asterixdb[master]: [ASTERIXDB-2391][SQL] Fix type casting to work with returnin...

2018-06-05 Thread Steven Jacobs (Code Review)
Steven Jacobs has abandoned this change.

Change subject: [ASTERIXDB-2391][SQL] Fix type casting to work with returning 
clause
..


Abandoned

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2675
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: abandon
Gerrit-Change-Id: Ifdd9f1c7afd3de1ca35934dc07386ea814521894
Gerrit-PatchSet: 7
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Michael Blow 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb-bad[master]: Fix Timing issue on Channel test

2018-06-05 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2690

to look at the new patch set (#2).

Change subject: Fix Timing issue on Channel test
..

Fix Timing issue on Channel test

Change-Id: I8c53943eec2f4cd28a6b118e7708ee52986577fa
---
R 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.4.pollquery.sqlpp
D 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.4.sleep.sqlpp
2 files changed, 3 insertions(+), 27 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/90/2690/2
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2690
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I8c53943eec2f4cd28a6b118e7708ee52986577fa
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: abdullah alamoudi 


Change in asterixdb-bad[master]: Fix Timing issue on Channel test

2018-06-05 Thread Steven Jacobs (Code Review)
Steven Jacobs has posted comments on this change.

Change subject: Fix Timing issue on Channel test
..


Patch Set 2:

That's cool. I didn't realize we had such functionality :) 
Just uploaded the new patchset.

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2690
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I8c53943eec2f4cd28a6b118e7708ee52986577fa
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: abdullah alamoudi 
Gerrit-HasComments: No


Change in asterixdb-bad[master]: Fix Timing issue on Channel test

2018-06-05 Thread Steven Jacobs (Code Review)
Steven Jacobs has uploaded a new change for review.

  https://asterix-gerrit.ics.uci.edu/2690

Change subject: Fix Timing issue on Channel test
..

Fix Timing issue on Channel test

Change-Id: I8c53943eec2f4cd28a6b118e7708ee52986577fa
---
M 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.4.sleep.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.5.query.sqlpp
2 files changed, 3 insertions(+), 2 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/90/2690/1

diff --git 
a/asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.4.sleep.sqlpp
 
b/asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.4.sleep.sqlpp
index 67c5efa..4d85996 100644
--- 
a/asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.4.sleep.sqlpp
+++ 
b/asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.4.sleep.sqlpp
@@ -23,4 +23,4 @@
 * Author   : Steven Jacobs
 */
 
-5000
+1
diff --git 
a/asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.5.query.sqlpp
 
b/asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.5.query.sqlpp
index 2fbd21d..b6a4ab5 100644
--- 
a/asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.5.query.sqlpp
+++ 
b/asterix-bad/src/test/resources/runtimets/queries/channel/disasters_with_friends/disasters_with_friends.5.query.sqlpp
@@ -25,4 +25,5 @@
 
 use channels;
 select value array_count (result.result.shelters)
-from EmergenciesNearMeChannelResults result;
\ No newline at end of file
+from EmergenciesNearMeChannelResults result
+limit 1;
\ No newline at end of file

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2690
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I8c53943eec2f4cd28a6b118e7708ee52986577fa
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 


Change in asterixdb-bad[master]: Coordinated change for ASTERIXDB-2391

2018-06-05 Thread Steven Jacobs (Code Review)
Steven Jacobs has submitted this change and it was merged.

Change subject: Coordinated change for ASTERIXDB-2391
..


Coordinated change for ASTERIXDB-2391

Change-Id: Ibfd9513efdb1c03168a8248f4ad62bc306566193
---
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-advanced-index-only.plan
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-advanced.plan
M asterix-bad/src/test/resources/optimizerts/results/channel/channel-create.plan
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-subscribe.plan
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-unsubscribe.plan
5 files changed, 66 insertions(+), 67 deletions(-)

Approvals:
  Jenkins: Verified
  Dmitry Lychagin: Looks good to me, approved



diff --git 
a/asterix-bad/src/test/resources/optimizerts/results/channel/channel-advanced-index-only.plan
 
b/asterix-bad/src/test/resources/optimizerts/results/channel/channel-advanced-index-only.plan
index dd68a36..d0b3087 100644
--- 
a/asterix-bad/src/test/resources/optimizerts/results/channel/channel-advanced-index-only.plan
+++ 
b/asterix-bad/src/test/resources/optimizerts/results/channel/channel-advanced-index-only.plan
@@ -1,17 +1,17 @@
 -- NOTIFY_BROKERS  |PARTITIONED|
   -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
--- PRE_CLUSTERED_GROUP_BY[$$133, $$channelExecutionTime]  |PARTITIONED|
+-- PRE_CLUSTERED_GROUP_BY[$$134, $$channelExecutionTime]  |PARTITIONED|
 {
   -- AGGREGATE  |LOCAL|
 -- NESTED_TUPLE_SOURCE  |LOCAL|
 }
   -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
--- STABLE_SORT [$$133(ASC), $$channelExecutionTime(ASC)]  |PARTITIONED|
-  -- HASH_PARTITION_EXCHANGE [$$133, $$channelExecutionTime]  
|PARTITIONED|
+-- STABLE_SORT [$$134(ASC), $$channelExecutionTime(ASC)]  |PARTITIONED|
+  -- HASH_PARTITION_EXCHANGE [$$134, $$channelExecutionTime]  
|PARTITIONED|
 -- PRE_SORTED_DISTINCT_BY  |PARTITIONED|
   -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
--- STABLE_SORT [$$108(ASC)]  |PARTITIONED|
-  -- HASH_PARTITION_EXCHANGE [$$108]  |PARTITIONED|
+-- STABLE_SORT [$$109(ASC)]  |PARTITIONED|
+  -- HASH_PARTITION_EXCHANGE [$$109]  |PARTITIONED|
 -- STREAM_PROJECT  |PARTITIONED|
   -- COMMIT  |PARTITIONED|
 -- STREAM_PROJECT  |PARTITIONED|
@@ -33,12 +33,12 @@
 -- STREAM_SELECT  
|PARTITIONED|
   -- STREAM_PROJECT  
|PARTITIONED|
 -- 
ONE_TO_ONE_EXCHANGE  |PARTITIONED|
-  -- 
HYBRID_HASH_JOIN [$$118][$$117]  |PARTITIONED|
--- 
HASH_PARTITION_EXCHANGE [$$118]  |PARTITIONED|
+  -- 
HYBRID_HASH_JOIN [$$119][$$118]  |PARTITIONED|
+-- 
HASH_PARTITION_EXCHANGE [$$119]  |PARTITIONED|
   -- 
STREAM_PROJECT  |PARTITIONED|
 -- 
ONE_TO_ONE_EXCHANGE  |PARTITIONED|
-  -- 
HYBRID_HASH_JOIN [$$116, $$114][$$109, $$110]  |PARTITIONED|
--- 
HASH_PARTITION_EXCHANGE [$$116, $$114]  |PARTITIONED|
+  -- 
HYBRID_HASH_JOIN [$$117, $$115][$$110, $$111]  |PARTITIONED|
+-- 
HASH_PARTITION_EXCHANGE [$$117, $$115]  |PARTITIONED|
   -- 
STREAM_PROJECT  |PARTITIONED|
 -- 
ASSIGN  |PARTITIONED|
   
-- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
@@ -46,24 +46,24 @@

   -- BROADCAST_EXCHANGE  |PARTITIONED|

 -- ASSIGN  |UNPARTITIONED|

   -- EMPTY_TUPLE_SOURCE  |UNPARTITIONED|
--- 
HASH_PARTITION_EXCHANGE [$$109, $$110]  |PARTITIONED|
+-- 
HASH_PARTITION_EXCHANGE 

Change in asterixdb[master]: [ASTERIXDB-2391][SQL] Insure that var for return clause gets...

2018-06-05 Thread Steven Jacobs (Code Review)
Steven Jacobs has submitted this change and it was merged.

Change subject: [ASTERIXDB-2391][SQL] Insure that var for return clause gets 
optimized
..


[ASTERIXDB-2391][SQL] Insure that var for return clause gets optimized

Places the variable created for the return clause below the insert
so future optimizations can work on this variable

Added test

Change-Id: Id285435c4dc8a603c60b177dacd9f09722faac21
Reviewed-on: https://asterix-gerrit.ics.uci.edu/2689
Sonar-Qube: Jenkins 
Tested-by: Jenkins 
Integration-Tests: Jenkins 
Contrib: Jenkins 
Reviewed-by: Dmitry Lychagin 
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/LangExpressionToPlanTranslator.java
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.3.query.sqlpp
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
4 files changed, 84 insertions(+), 7 deletions(-)

Approvals:
  Anon. E. Moose #1000171: 
  Jenkins: Verified; No violations found; ; Verified
  Dmitry Lychagin: Looks good to me, approved



diff --git 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/LangExpressionToPlanTranslator.java
 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/LangExpressionToPlanTranslator.java
index 2dbcb36..0c46383 100644
--- 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/LangExpressionToPlanTranslator.java
+++ 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/LangExpressionToPlanTranslator.java
@@ -610,18 +610,26 @@
 }
 SourceLocation sourceLoc = compiledInsert.getSourceLocation();
 
+//Create an assign operator that makes the variable used by the return 
expression
+LogicalVariable insertedVar = context.newVar();
+AssignOperator insertedVarAssignOperator =
+new AssignOperator(insertedVar, new 
MutableObject<>(insertOp.getPayloadExpression().getValue()));
+insertedVarAssignOperator.getInputs().add(insertOp.getInputs().get(0));
+insertedVarAssignOperator.setSourceLocation(sourceLoc);
+insertOp.getInputs().set(0, new 
MutableObject<>(insertedVarAssignOperator));
+
 // Makes the id of the insert var point to the record variable.
 context.newVarFromExpression(compiledInsert.getVar());
-context.setVar(compiledInsert.getVar(),
-((VariableReferenceExpression) 
insertOp.getPayloadExpression().getValue()).getVariableReference());
+context.setVar(compiledInsert.getVar(), insertedVar);
+
 Pair> p =
 langExprToAlgExpression(returnExpression, new 
MutableObject<>(inputOperator));
 
-// Adds an assign operator for the returning expression.
+// Adds an assign operator for the result of the returning expression.
 LogicalVariable resultVar = context.newVar();
-AssignOperator assignOperator = new AssignOperator(resultVar, new 
MutableObject<>(p.first));
-assignOperator.getInputs().add(p.second);
-assignOperator.setSourceLocation(sourceLoc);
+AssignOperator createResultAssignOperator = new 
AssignOperator(resultVar, new MutableObject<>(p.first));
+createResultAssignOperator.getInputs().add(p.second);
+createResultAssignOperator.setSourceLocation(sourceLoc);
 
 // Adds a distribute result operator.
 List> expressions = new ArrayList<>();
@@ -629,7 +637,7 @@
 ResultSetSinkId rssId = new 
ResultSetSinkId(metadataProvider.getResultSetId());
 ResultSetDataSink sink = new ResultSetDataSink(rssId, null);
 DistributeResultOperator distResultOperator = new 
DistributeResultOperator(expressions, sink);
-distResultOperator.getInputs().add(new 
MutableObject<>(assignOperator));
+distResultOperator.getInputs().add(new 
MutableObject<>(createResultAssignOperator));
 
 distResultOperator.setSourceLocation(sourceLoc);
 return distResultOperator;
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.1.ddl.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.1.ddl.sqlpp
new file mode 100644
index 000..a41976b
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.1.ddl.sqlpp
@@ -0,0 +1,34 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed 

Change in asterixdb-bad[master]: Coordinated change for ASTERIXDB-2393

2018-05-29 Thread Steven Jacobs (Code Review)
Steven Jacobs has uploaded a new change for review.

  https://asterix-gerrit.ics.uci.edu/2666

Change subject: Coordinated change for ASTERIXDB-2393
..

Coordinated change for ASTERIXDB-2393

Change-Id: I1c4da1b4598e7efe2345c85f671f847d5262ac02
---
M asterix-bad/src/main/resources/lang-extension/lang.txt
1 file changed, 1 insertion(+), 0 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/66/2666/1

diff --git a/asterix-bad/src/main/resources/lang-extension/lang.txt 
b/asterix-bad/src/main/resources/lang-extension/lang.txt
index 4c83dc5..7456cef 100644
--- a/asterix-bad/src/main/resources/lang-extension/lang.txt
+++ b/asterix-bad/src/main/resources/lang-extension/lang.txt
@@ -27,6 +27,7 @@
 import org.apache.asterix.bad.lang.statement.ExecuteProcedureStatement;
 import org.apache.asterix.bad.lang.statement.ProcedureDropStatement;
 import org.apache.asterix.lang.sqlpp.parser.ParseException;
+import org.apache.asterix.lang.sqlpp.parser.SqlppParseException;
 import org.apache.asterix.lang.sqlpp.parser.Token;
 
 

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2666
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I1c4da1b4598e7efe2345c85f671f847d5262ac02
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 


Change in asterixdb[master]: [ASTERIXDB-2391][SQL] Fix type casting to work with returnin...

2018-06-01 Thread Steven Jacobs (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2675

to look at the new patch set (#3).

Change subject: [ASTERIXDB-2391][SQL] Fix type casting to work with returning 
clause
..

[ASTERIXDB-2391][SQL] Fix type casting to work with returning clause

Allows the typecast variable for an insert to be propogated
into the returning clause operators

Change-Id: Ifdd9f1c7afd3de1ca35934dc07386ea814521894
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastRule.java
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/dml/insert-returning-fieldname-qualified/insert-returning-fieldname-qualified.3.query.sqlpp
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
4 files changed, 134 insertions(+), 52 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/75/2675/3
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2675
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ifdd9f1c7afd3de1ca35934dc07386ea814521894
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Michael Blow 


Change in asterixdb[master]: [ASTERIXDB-2402,ASTERIXDB-2404,ASTERIXDB-2405][COMP] Fix Ast...

2018-06-29 Thread Steven Jacobs (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2730

to look at the new patch set (#2).

Change subject: [ASTERIXDB-2402,ASTERIXDB-2404,ASTERIXDB-2405][COMP] Fix 
Asterix compiler issues
..

[ASTERIXDB-2402,ASTERIXDB-2404,ASTERIXDB-2405][COMP] Fix Asterix compiler issues

This change fixes the following compilation issues

1. AccessMethodUtils.findLOJIsMissingFuncInGroupBy()
looks for the not(is-missing($VAR)) pattern
in a group by, but fails to detect it if it is part of
an and, e.g. and(not(is-missing($VAR1)),not(is-missing($VAR2)))

2. AbstractGroupingProperty.reduceGroupingColumns()
mishandles empty heads for functional dependencies
If a group by uses variable $VAR,
and there is a functional dependency of the form:
[] -> $VAR
reduceGroupingColumns() will eliminate $VAR from the group by.

3. Currently, we only have two delegates:
commit()
and the BAD delegate, notify-brokers()
They should both be considered by IntroduceJoinAccessMethodUtil
as starting points for optimization.

Change-Id: Id2a6a16a5342e30c246b62a3b5ddbf7249a0d0cc
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/AccessMethodUtils.java
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/IntroduceJoinAccessMethodRule.java
M 
hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/properties/AbstractGroupingProperty.java
3 files changed, 33 insertions(+), 19 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/30/2730/2
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2730
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Id2a6a16a5342e30c246b62a3b5ddbf7249a0d0cc
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Till Westmann 


Change in asterixdb-bad[master]: Move channels to a result sharing framework

2018-06-29 Thread Steven Jacobs (Code Review)
Steven Jacobs has posted comments on this change.

Change subject: Move channels to a result sharing framework
..


Patch Set 1:

(18 comments)

https://asterix-gerrit.ics.uci.edu/#/c/2731/1/asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ChannelSubscribeStatement.java
File 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ChannelSubscribeStatement.java:

Line 181: StringBuilder builder = new StringBuilder();
> One side comment. I think these constructed stmts are one per query. if not
I think the BAD stuff is okay, I only use "SET as a second statement, which he 
mentioned will still work"


Line 182: builder.append("upsert into " + channelSubscriptionsDataset + 
"(\n");
> quick Q. This works without use dataverse?
The names passed are absolute so no "use" is needed.


PS1, Line 183: s
> Change this a constant and give it a better name.
Done


PS1, Line 185: param
> also, is this part of certain meta data schema?
The ChannelSubscriptions dataset automatically names the fields for the param 
values as param0,param1,...


PS1, Line 185: param
> Change it to a constant variable.
Done


PS1, Line 195: param
> same
Done


PS1, Line 229: param
> same
Done


PS1, Line 249: s
> same here
Done


https://asterix-gerrit.ics.uci.edu/#/c/2731/1/asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
File 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java:

PS1, Line 184: partitionFields = new ArrayList<>();
 : keyIndicators = new ArrayList<>();
 : keyIndicators.add(0);
 : keyIndicators.add(0);
 : fieldName = new ArrayList<>();
 : List fieldName2 = new ArrayList<>();
 : fieldName.add(BADConstants.ChannelSubscriptionId);
 : fieldName2.add(BADConstants.BrokerSubscriptionId);
 : partitionFields.add(fieldName);
 : partitionFields.add(fieldName2);
> Do you mind explain this a little bit? also, regular_name+number is very co
I'll clean up the names. Essentially the partitioning fields are each a list 
(for cases of nested keys). We have two fields for the primary key here, the 
channelSubscriptionId and the brokerSubscriptionId. Since neither is nested 
each list is of size one.


PS1, Line 280: a
> I'm ok with constructing query strings. One minor suggestion would be to cr
Done


https://asterix-gerrit.ics.uci.edu/#/c/2731/1/asterix-bad/src/main/java/org/apache/asterix/bad/rules/InsertBrokerNotifierForChannelRule.java
File 
asterix-bad/src/main/java/org/apache/asterix/bad/rules/InsertBrokerNotifierForChannelRule.java:

Line 186: //Maybe we need to add a project???
> ?
Done


Line 245: 
> empty line
Done


Line 343: /*This function is used to find specific operators within the 
plan, either
> You should be able to use the function signature to get a better template f
Done


PS1, Line 352:  String param1, String param2
> these two parameters seem not being used except for in recursive call... sa
This method went through several rewrites, so it was pretty messy. I cleaned it 
up now. Take a look at the new version and see what you think.


Line 352: private AbstractLogicalOperator findOp(AbstractLogicalOperator 
op, int searchId, String param1, String param2) {
> I think you could use LogicalOperatorTag here directly
Done


https://asterix-gerrit.ics.uci.edu/#/c/2731/1/asterix-bad/src/test/resources/runtimets/queries/channel/room_occupants/room_occupants.4.query.sqlpp
File 
asterix-bad/src/test/resources/runtimets/queries/channel/room_occupants/room_occupants.4.query.sqlpp:

PS1, Line 30: param0
> correlation with the createChannel param0? (probably not...)
This would be the first parameter value from the subscribe statement. The 
ChannelSubscriptions dataset stores the field names as param0,param1,...


https://asterix-gerrit.ics.uci.edu/#/c/2731/1/asterix-bad/src/test/resources/runtimets/queries/channel/shared_subscriptions/shared_subscriptions.3.query.sqlpp
File 
asterix-bad/src/test/resources/runtimets/queries/channel/shared_subscriptions/shared_subscriptions.3.query.sqlpp:

PS1, Line 21: param0
> same here?
same


https://asterix-gerrit.ics.uci.edu/#/c/2731/1/asterix-bad/src/test/resources/runtimets/queries/channel/shared_subscriptions/shared_subscriptions.6.pollquery.sqlpp
File 
asterix-bad/src/test/resources/runtimets/queries/channel/shared_subscriptions/shared_subscriptions.6.pollquery.sqlpp:

Line 19:  // polltimeoutsecs=15
> ws
Done


-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2731
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ifbcdf264bcd21caa0d28a9ac392b36577ca60dad
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven 

Change in asterixdb-bad[master]: Move channels to a result sharing framework

2018-06-29 Thread Steven Jacobs (Code Review)
Hello Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2731

to look at the new patch set (#2).

Change subject: Move channels to a result sharing framework
..

Move channels to a result sharing framework

Change-Id: Ifbcdf264bcd21caa0d28a9ac392b36577ca60dad
---
M asterix-bad/src/main/java/org/apache/asterix/bad/BADConstants.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ChannelDropStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ChannelSubscribeStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/ChannelUnsubscribeStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/lang/statement/CreateChannelStatement.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/BADMetadataExtension.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/BADMetadataRecordTypes.java
M asterix-bad/src/main/java/org/apache/asterix/bad/metadata/Channel.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/ChannelTupleTranslator.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/rules/InsertBrokerNotifierForChannelRule.java
M asterix-bad/src/main/resources/lang-extension/lang.txt
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-advanced-index-only.plan
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-advanced.plan
M asterix-bad/src/test/resources/optimizerts/results/channel/channel-create.plan
M asterix-bad/src/test/resources/optimizerts/results/channel/channel-push.plan
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-subscribe.plan
M 
asterix-bad/src/test/resources/optimizerts/results/channel/channel-unsubscribe.plan
M 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.2.update.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/channel/add_index/add_index.5.pollquery.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/create_channel_check_datasets/create_channel_check_datasets.3.query.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/drop_channel_check_datasets/drop_channel_check_datasets.3.query.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/drop_subscriptions/drop_subscriptions.1.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/room_occupants/room_occupants.4.query.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/channel/shared_subscriptions/shared_subscriptions.1.ddl.sqlpp
C 
asterix-bad/src/test/resources/runtimets/queries/channel/shared_subscriptions/shared_subscriptions.2.update.sqlpp
C 
asterix-bad/src/test/resources/runtimets/queries/channel/shared_subscriptions/shared_subscriptions.3.query.sqlpp
R 
asterix-bad/src/test/resources/runtimets/queries/channel/shared_subscriptions/shared_subscriptions.4.query.sqlpp
C 
asterix-bad/src/test/resources/runtimets/queries/channel/shared_subscriptions/shared_subscriptions.5.update.sqlpp
C 
asterix-bad/src/test/resources/runtimets/queries/channel/shared_subscriptions/shared_subscriptions.6.pollquery.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/subscribe_channel_check_subscriptions/subscribe_channel_check_subscriptions.5.query.sqlpp
M 
asterix-bad/src/test/resources/runtimets/results/channel/create_channel_check_datasets/create_channel_check_datasets.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/channel/create_channel_check_metadata/create_channel_check_metadata.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/channel/drop_channel_check_datasets/drop_channel_check_datasets.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/channel/drop_channel_check_metadata/drop_channel_check_metadata.1.adm
M 
asterix-bad/src/test/resources/runtimets/results/channel/room_occupants/room_occupants.1.adm
A 
asterix-bad/src/test/resources/runtimets/results/channel/shared_subscriptions/shared_subscriptions.3.adm
A 
asterix-bad/src/test/resources/runtimets/results/channel/shared_subscriptions/shared_subscriptions.4.adm
A 
asterix-bad/src/test/resources/runtimets/results/channel/shared_subscriptions/shared_subscriptions.6.adm
M asterix-bad/src/test/resources/runtimets/testsuite.xml
39 files changed, 1,443 insertions(+), 821 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/31/2731/2
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2731
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ifbcdf264bcd21caa0d28a9ac392b36577ca60dad
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb[master]: [COMP] Maintain schemas for delegate operators

2018-06-26 Thread Steven Jacobs (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

I'd like you to reexamine a change.  Please visit

https://asterix-gerrit.ics.uci.edu/2726

to look at the new patch set (#2).

Change subject: [COMP] Maintain schemas for delegate operators
..

[COMP] Maintain schemas for delegate operators

Change-Id: Icc8723e686d741bf3098ff44d046cde5239e204b
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/SetupCommitExtensionOpRule.java
M 
hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/logical/AbstractDelegatedLogicalOperator.java
M 
hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/logical/DelegateOperator.java
M 
hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/logical/IOperatorDelegate.java
4 files changed, 2 insertions(+), 9 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/26/2726/2
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2726
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Icc8723e686d741bf3098ff44d046cde5239e204b
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 


<    1   2   3   4   5   6   7   >