[NO ISSUE][OTH] Fix hyracks-api Dependences - user model changes: no - storage format changes: no - interface changes: no
Details: - Ensure hyracks-api module depends only on hyracks-util. This way new APIs can be added to hyracks-api and used on all other modules without facing cyclic dependency issues. Change-Id: I7f4329b3dad99c256fb2e10a7863aaca41990ce0 Reviewed-on: https://asterix-gerrit.ics.uci.edu/3047 Reviewed-by: Murtadha Hubail <[email protected]> Tested-by: Jenkins <[email protected]> Integration-Tests: Jenkins <[email protected]> Reviewed-by: Till Westmann <[email protected]> Contrib: Jenkins <[email protected]> Project: http://git-wip-us.apache.org/repos/asf/asterixdb/repo Commit: http://git-wip-us.apache.org/repos/asf/asterixdb/commit/da7e8a16 Tree: http://git-wip-us.apache.org/repos/asf/asterixdb/tree/da7e8a16 Diff: http://git-wip-us.apache.org/repos/asf/asterixdb/diff/da7e8a16 Branch: refs/heads/master Commit: da7e8a16ddaabd808992847aa0132127db2a7c9a Parents: 51e3812 Author: Murtadha Hubail <[email protected]> Authored: Tue Dec 4 02:29:11 2018 +0300 Committer: Murtadha Hubail <[email protected]> Committed: Tue Dec 4 01:04:46 2018 -0800 ---------------------------------------------------------------------- .../asterix/app/nc/NCAppRuntimeContext.java | 4 +- .../asterix/drivers/AsterixClientDriver.java | 2 +- .../hyracks/bootstrap/CCApplication.java | 2 +- .../common/AsterixHyracksIntegrationUtil.java | 2 +- asterixdb/asterix-runtime/pom.xml | 4 + .../runtime/utils/CcApplicationContext.java | 2 +- .../algebricks/algebricks-tests/pom.xml | 5 + .../util/AlgebricksHyracksIntegrationUtil.java | 2 +- hyracks-fullstack/hyracks/hyracks-api/pom.xml | 13 - .../api/client/ClusterControllerInfo.java | 58 --- .../client/HyracksClientInterfaceFunctions.java | 464 ------------------ .../HyracksClientInterfaceRemoteProxy.java | 199 -------- .../hyracks/api/client/HyracksConnection.java | 480 ------------------ .../api/client/IHyracksClientInterface.java | 1 + .../api/client/impl/ClusterControllerInfo.java | 58 +++ .../apache/hyracks/api/context/ICCContext.java | 2 +- .../result/ResultDirectoryRemoteProxy.java | 6 +- .../hyracks/client/stats/HyracksUtils.java | 2 +- .../hyracks/control/cc/ClientInterfaceIPCI.java | 2 +- .../control/cc/ClusterControllerService.java | 2 +- .../common/controllers/NodeParameters.java | 2 +- .../btree-example/btreeclient/pom.xml | 5 + .../btree/client/InsertPipelineExample.java | 2 +- .../client/PrimaryIndexBulkLoadExample.java | 2 +- .../btree/client/PrimaryIndexSearchExample.java | 2 +- .../client/SecondaryIndexBulkLoadExample.java | 2 +- .../client/SecondaryIndexSearchExample.java | 2 +- .../hyracks-integration-tests/pom.xml | 5 + .../integration/AbstractIntegrationTest.java | 2 +- .../AbstractMultiNCIntegrationTest.java | 2 +- .../tests/integration/DeployedJobSpecsTest.java | 2 +- .../shutdown/test/ClusterShutdownIT.java | 2 +- .../text-example/textclient/pom.xml | 5 + .../examples/text/client/WordCountMain.java | 2 +- .../tpch-example/tpchclient/pom.xml | 5 + .../hyracks/examples/tpch/client/Groupby.java | 2 +- .../hyracks/examples/tpch/client/Join.java | 2 +- .../hyracks/examples/tpch/client/Sort.java | 7 +- hyracks-fullstack/hyracks/hyracks-hdfs/pom.xml | 5 + .../hyracks/hdfs/scheduler/Scheduler.java | 2 +- .../hyracks/hdfs/dataflow/DataflowTest.java | 2 +- .../apache/hyracks/hdfs/utils/HyracksUtils.java | 2 +- .../hyracks/hdfs2/dataflow/DataflowTest.java | 2 +- hyracks-fullstack/hyracks/hyracks-ipc/pom.xml | 13 + .../impl/HyracksClientInterfaceFunctions.java | 464 ++++++++++++++++++ .../impl/HyracksClientInterfaceRemoteProxy.java | 202 ++++++++ .../hyracks/ipc/impl/HyracksConnection.java | 482 +++++++++++++++++++ hyracks-fullstack/hyracks/pom.xml | 2 +- 48 files changed, 1291 insertions(+), 1248 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/nc/NCAppRuntimeContext.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/nc/NCAppRuntimeContext.java b/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/nc/NCAppRuntimeContext.java index 3524474..07d540b 100644 --- a/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/nc/NCAppRuntimeContext.java +++ b/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/nc/NCAppRuntimeContext.java @@ -76,9 +76,8 @@ import org.apache.asterix.runtime.utils.NoOpCoordinationService; import org.apache.asterix.transaction.management.resource.PersistentLocalResourceRepository; import org.apache.asterix.transaction.management.resource.PersistentLocalResourceRepositoryFactory; import org.apache.hyracks.api.application.INCServiceContext; -import org.apache.hyracks.api.client.ClusterControllerInfo; -import org.apache.hyracks.api.client.HyracksConnection; import org.apache.hyracks.api.client.IHyracksClientConnection; +import org.apache.hyracks.api.client.impl.ClusterControllerInfo; import org.apache.hyracks.api.control.CcId; import org.apache.hyracks.api.exceptions.HyracksDataException; import org.apache.hyracks.api.io.IIOManager; @@ -86,6 +85,7 @@ import org.apache.hyracks.api.io.IPersistedResourceRegistry; import org.apache.hyracks.api.lifecycle.ILifeCycleComponent; import org.apache.hyracks.api.lifecycle.ILifeCycleComponentManager; import org.apache.hyracks.control.nc.NodeControllerService; +import org.apache.hyracks.ipc.impl.HyracksConnection; import org.apache.hyracks.storage.am.lsm.common.api.ILSMIOOperationScheduler; import org.apache.hyracks.storage.am.lsm.common.api.ILSMMergePolicyFactory; import org.apache.hyracks.storage.am.lsm.common.impls.AsynchronousScheduler; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/asterixdb/asterix-app/src/main/java/org/apache/asterix/drivers/AsterixClientDriver.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/java/org/apache/asterix/drivers/AsterixClientDriver.java b/asterixdb/asterix-app/src/main/java/org/apache/asterix/drivers/AsterixClientDriver.java index aa6bbdd..558c25d 100644 --- a/asterixdb/asterix-app/src/main/java/org/apache/asterix/drivers/AsterixClientDriver.java +++ b/asterixdb/asterix-app/src/main/java/org/apache/asterix/drivers/AsterixClientDriver.java @@ -26,8 +26,8 @@ import org.apache.asterix.app.translator.DefaultStatementExecutorFactory; import org.apache.asterix.compiler.provider.AqlCompilationProvider; import org.apache.asterix.compiler.provider.ILangCompilationProvider; import org.apache.asterix.file.StorageComponentProvider; -import org.apache.hyracks.api.client.HyracksConnection; import org.apache.hyracks.api.client.IHyracksClientConnection; +import org.apache.hyracks.ipc.impl.HyracksConnection; import org.kohsuke.args4j.CmdLineParser; public class AsterixClientDriver { http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/CCApplication.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/CCApplication.java b/asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/CCApplication.java index a5fd063..482f67f 100644 --- a/asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/CCApplication.java +++ b/asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/CCApplication.java @@ -83,7 +83,6 @@ import org.apache.asterix.util.MetadataBuiltinFunctions; import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; import org.apache.hyracks.api.application.ICCServiceContext; import org.apache.hyracks.api.application.IServiceContext; -import org.apache.hyracks.api.client.HyracksConnection; import org.apache.hyracks.api.client.IHyracksClientConnection; import org.apache.hyracks.api.config.IConfigManager; import org.apache.hyracks.api.control.IGatekeeper; @@ -98,6 +97,7 @@ import org.apache.hyracks.http.server.HttpServer; import org.apache.hyracks.http.server.HttpServerConfig; import org.apache.hyracks.http.server.HttpServerConfigBuilder; import org.apache.hyracks.http.server.WebManager; +import org.apache.hyracks.ipc.impl.HyracksConnection; import org.apache.hyracks.util.LoggingConfigUtil; import org.apache.logging.log4j.Level; import org.apache.logging.log4j.LogManager; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/asterixdb/asterix-app/src/test/java/org/apache/asterix/api/common/AsterixHyracksIntegrationUtil.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/java/org/apache/asterix/api/common/AsterixHyracksIntegrationUtil.java b/asterixdb/asterix-app/src/test/java/org/apache/asterix/api/common/AsterixHyracksIntegrationUtil.java index 1301c01..f510be5 100644 --- a/asterixdb/asterix-app/src/test/java/org/apache/asterix/api/common/AsterixHyracksIntegrationUtil.java +++ b/asterixdb/asterix-app/src/test/java/org/apache/asterix/api/common/AsterixHyracksIntegrationUtil.java @@ -50,7 +50,6 @@ import org.apache.commons.io.FileUtils; import org.apache.commons.lang3.tuple.Pair; import org.apache.hyracks.api.application.ICCApplication; import org.apache.hyracks.api.application.INCApplication; -import org.apache.hyracks.api.client.HyracksConnection; import org.apache.hyracks.api.client.IHyracksClientConnection; import org.apache.hyracks.api.config.IOption; import org.apache.hyracks.control.cc.ClusterControllerService; @@ -59,6 +58,7 @@ import org.apache.hyracks.control.common.controllers.CCConfig; import org.apache.hyracks.control.common.controllers.ControllerConfig; import org.apache.hyracks.control.common.controllers.NCConfig; import org.apache.hyracks.control.nc.NodeControllerService; +import org.apache.hyracks.ipc.impl.HyracksConnection; import org.apache.hyracks.storage.am.lsm.btree.impl.TestLsmBtreeLocalResource; import org.apache.hyracks.test.support.TestUtils; import org.apache.logging.log4j.Level; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/asterixdb/asterix-runtime/pom.xml ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/pom.xml b/asterixdb/asterix-runtime/pom.xml index b54c8c7..f95a1e0 100644 --- a/asterixdb/asterix-runtime/pom.xml +++ b/asterixdb/asterix-runtime/pom.xml @@ -178,6 +178,10 @@ <artifactId>jackson-databind</artifactId> </dependency> <dependency> + <groupId>org.apache.hyracks</groupId> + <artifactId>hyracks-ipc</artifactId> + </dependency> + <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <scope>test</scope> http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/utils/CcApplicationContext.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/utils/CcApplicationContext.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/utils/CcApplicationContext.java index 0d2a1df..48463e8 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/utils/CcApplicationContext.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/utils/CcApplicationContext.java @@ -51,10 +51,10 @@ import org.apache.asterix.runtime.job.listener.NodeJobTracker; import org.apache.asterix.runtime.transaction.ResourceIdManager; import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; import org.apache.hyracks.api.application.ICCServiceContext; -import org.apache.hyracks.api.client.HyracksConnection; import org.apache.hyracks.api.client.IHyracksClientConnection; import org.apache.hyracks.api.exceptions.HyracksDataException; import org.apache.hyracks.api.job.IJobLifecycleListener; +import org.apache.hyracks.ipc.impl.HyracksConnection; import org.apache.hyracks.storage.common.IStorageManager; /* http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/hyracks-fullstack/algebricks/algebricks-tests/pom.xml ---------------------------------------------------------------------- diff --git a/hyracks-fullstack/algebricks/algebricks-tests/pom.xml b/hyracks-fullstack/algebricks/algebricks-tests/pom.xml index 0c27353..3800f62 100644 --- a/hyracks-fullstack/algebricks/algebricks-tests/pom.xml +++ b/hyracks-fullstack/algebricks/algebricks-tests/pom.xml @@ -174,6 +174,11 @@ <version>${project.version}</version> </dependency> <dependency> + <groupId>org.apache.hyracks</groupId> + <artifactId>hyracks-ipc</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> </dependency> http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/hyracks-fullstack/algebricks/algebricks-tests/src/test/java/org/apache/hyracks/algebricks/tests/util/AlgebricksHyracksIntegrationUtil.java ---------------------------------------------------------------------- diff --git a/hyracks-fullstack/algebricks/algebricks-tests/src/test/java/org/apache/hyracks/algebricks/tests/util/AlgebricksHyracksIntegrationUtil.java b/hyracks-fullstack/algebricks/algebricks-tests/src/test/java/org/apache/hyracks/algebricks/tests/util/AlgebricksHyracksIntegrationUtil.java index 9b3817e..701af7c 100644 --- a/hyracks-fullstack/algebricks/algebricks-tests/src/test/java/org/apache/hyracks/algebricks/tests/util/AlgebricksHyracksIntegrationUtil.java +++ b/hyracks-fullstack/algebricks/algebricks-tests/src/test/java/org/apache/hyracks/algebricks/tests/util/AlgebricksHyracksIntegrationUtil.java @@ -25,7 +25,6 @@ import java.util.EnumSet; import org.apache.commons.io.FileUtils; import org.apache.hyracks.algebricks.core.config.AlgebricksConfig; -import org.apache.hyracks.api.client.HyracksConnection; import org.apache.hyracks.api.client.IHyracksClientConnection; import org.apache.hyracks.api.job.JobFlag; import org.apache.hyracks.api.job.JobId; @@ -34,6 +33,7 @@ import org.apache.hyracks.control.cc.ClusterControllerService; import org.apache.hyracks.control.common.controllers.CCConfig; import org.apache.hyracks.control.common.controllers.NCConfig; import org.apache.hyracks.control.nc.NodeControllerService; +import org.apache.hyracks.ipc.impl.HyracksConnection; public class AlgebricksHyracksIntegrationUtil { http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/hyracks-fullstack/hyracks/hyracks-api/pom.xml ---------------------------------------------------------------------- diff --git a/hyracks-fullstack/hyracks/hyracks-api/pom.xml b/hyracks-fullstack/hyracks/hyracks-api/pom.xml index 257110c..037e50e 100644 --- a/hyracks-fullstack/hyracks/hyracks-api/pom.xml +++ b/hyracks-fullstack/hyracks/hyracks-api/pom.xml @@ -56,19 +56,6 @@ </build> <dependencies> <dependency> - <groupId>org.apache.httpcomponents</groupId> - <artifactId>httpcore</artifactId> - </dependency> - <dependency> - <groupId>org.apache.httpcomponents</groupId> - <artifactId>httpclient</artifactId> - </dependency> - <dependency> - <groupId>org.apache.hyracks</groupId> - <artifactId>hyracks-ipc</artifactId> - <version>${project.version}</version> - </dependency> - <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> </dependency> http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/ClusterControllerInfo.java ---------------------------------------------------------------------- diff --git a/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/ClusterControllerInfo.java b/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/ClusterControllerInfo.java deleted file mode 100644 index 0e04dca..0000000 --- a/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/ClusterControllerInfo.java +++ /dev/null @@ -1,58 +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.hyracks.api.client; - -import org.apache.hyracks.api.control.CcId; - -import java.io.Serializable; - -public class ClusterControllerInfo implements Serializable { - private static final long serialVersionUID = 1L; - - private final CcId ccId; - - private final String clientNetAddress; - - private final int clientNetPort; - - private final int webPort; - - public ClusterControllerInfo(CcId ccId, String clientNetAddress, int clientNetPort, int webPort) { - this.ccId = ccId; - this.clientNetAddress = clientNetAddress; - this.clientNetPort = clientNetPort; - this.webPort = webPort; - } - - public CcId getCcId() { - return ccId; - } - - public int getWebPort() { - return webPort; - } - - public String getClientNetAddress() { - return clientNetAddress; - } - - public int getClientNetPort() { - return clientNetPort; - } -} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceFunctions.java ---------------------------------------------------------------------- diff --git a/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceFunctions.java b/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceFunctions.java deleted file mode 100644 index 72bdc3e..0000000 --- a/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceFunctions.java +++ /dev/null @@ -1,464 +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.hyracks.api.client; - -import java.io.Serializable; -import java.net.URL; -import java.util.EnumSet; -import java.util.List; -import java.util.Map; -import java.util.Set; - -import org.apache.hyracks.api.deployment.DeploymentId; -import org.apache.hyracks.api.job.DeployedJobSpecId; -import org.apache.hyracks.api.job.JobFlag; -import org.apache.hyracks.api.job.JobId; -import org.apache.hyracks.api.result.ResultDirectoryRecord; -import org.apache.hyracks.api.result.ResultSetId; - -public class HyracksClientInterfaceFunctions { - public enum FunctionId { - GET_CLUSTER_CONTROLLER_INFO, - GET_CLUSTER_TOPOLOGY, - GET_JOB_STATUS, - GET_JOB_INFO, - START_JOB, - DEPLOY_JOB, - UNDEPLOY_JOB, - REDEPLOY_JOB, - CANCEL_JOB, - GET_RESULT_DIRECTORY_ADDRESS, - GET_RESULT_STATUS, - GET_RESULT_LOCATIONS, - WAIT_FOR_COMPLETION, - GET_NODE_CONTROLLERS_INFO, - CLI_DEPLOY_BINARY, - CLI_UNDEPLOY_BINARY, - CLUSTER_SHUTDOWN, - GET_NODE_DETAILS_JSON, - THREAD_DUMP - } - - public abstract static class Function implements Serializable { - private static final long serialVersionUID = 1L; - - public abstract FunctionId getFunctionId(); - } - - public static class GetClusterControllerInfoFunction extends Function { - private static final long serialVersionUID = 1L; - - @Override - public FunctionId getFunctionId() { - return FunctionId.GET_CLUSTER_CONTROLLER_INFO; - } - } - - public static class GetJobStatusFunction extends Function { - private static final long serialVersionUID = 1L; - - private final JobId jobId; - - public GetJobStatusFunction(JobId jobId) { - this.jobId = jobId; - } - - @Override - public FunctionId getFunctionId() { - return FunctionId.GET_JOB_STATUS; - } - - public JobId getJobId() { - return jobId; - } - } - - public static class GetJobInfoFunction extends Function { - private static final long serialVersionUID = 1L; - - private final JobId jobId; - - public GetJobInfoFunction(JobId jobId) { - this.jobId = jobId; - } - - @Override - public FunctionId getFunctionId() { - return FunctionId.GET_JOB_INFO; - } - - public JobId getJobId() { - return jobId; - } - } - - public static class redeployJobSpecFunction extends Function { - private static final long serialVersionUID = 1L; - - private final byte[] acggfBytes; - - private final DeployedJobSpecId deployedJobSpecId; - - public redeployJobSpecFunction(DeployedJobSpecId deployedJobSpecId, byte[] acggfBytes) { - this.deployedJobSpecId = deployedJobSpecId; - this.acggfBytes = acggfBytes; - } - - @Override - public FunctionId getFunctionId() { - return FunctionId.REDEPLOY_JOB; - } - - public byte[] getACGGFBytes() { - return acggfBytes; - } - - public DeployedJobSpecId getDeployedJobSpecId() { - return deployedJobSpecId; - } - } - - public static class DeployJobSpecFunction extends Function { - private static final long serialVersionUID = 1L; - - private final byte[] acggfBytes; - - public DeployJobSpecFunction(byte[] acggfBytes) { - this.acggfBytes = acggfBytes; - } - - @Override - public FunctionId getFunctionId() { - return FunctionId.DEPLOY_JOB; - } - - public byte[] getACGGFBytes() { - return acggfBytes; - } - } - - public static class CancelJobFunction extends Function { - private static final long serialVersionUID = 1L; - - private final JobId jobId; - - public CancelJobFunction(JobId jobId) { - this.jobId = jobId; - if (jobId == null) { - throw new IllegalArgumentException("jobId"); - } - } - - @Override - public FunctionId getFunctionId() { - return FunctionId.CANCEL_JOB; - } - - public JobId getJobId() { - return jobId; - } - } - - public static class UndeployJobSpecFunction extends Function { - private static final long serialVersionUID = 1L; - - private final DeployedJobSpecId deployedJobSpecId; - - public UndeployJobSpecFunction(DeployedJobSpecId deployedJobSpecId) { - this.deployedJobSpecId = deployedJobSpecId; - } - - @Override - public FunctionId getFunctionId() { - return FunctionId.UNDEPLOY_JOB; - } - - public DeployedJobSpecId getDeployedJobSpecId() { - return deployedJobSpecId; - } - } - - public static class StartJobFunction extends Function { - private static final long serialVersionUID = 1L; - - private final byte[] acggfBytes; - private final Set<JobFlag> jobFlags; - private final DeploymentId deploymentId; - private final DeployedJobSpecId deployedJobSpecId; - private final Map<byte[], byte[]> jobParameters; - - public StartJobFunction(DeploymentId deploymentId, byte[] acggfBytes, Set<JobFlag> jobFlags, - DeployedJobSpecId deployedJobSpecId, Map<byte[], byte[]> jobParameters) { - this.acggfBytes = acggfBytes; - this.jobFlags = jobFlags; - this.deploymentId = deploymentId; - this.deployedJobSpecId = deployedJobSpecId; - this.jobParameters = jobParameters; - } - - public StartJobFunction(DeployedJobSpecId deployedJobSpecId, Map<byte[], byte[]> jobParameters) { - this(null, null, EnumSet.noneOf(JobFlag.class), deployedJobSpecId, jobParameters); - } - - public StartJobFunction(byte[] acggfBytes, Set<JobFlag> jobFlags) { - this(null, acggfBytes, jobFlags, null, null); - } - - public StartJobFunction(DeploymentId deploymentId, byte[] acggfBytes, Set<JobFlag> jobFlags) { - this(deploymentId, acggfBytes, jobFlags, null, null); - } - - @Override - public FunctionId getFunctionId() { - return FunctionId.START_JOB; - } - - public Map<byte[], byte[]> getJobParameters() { - return jobParameters; - } - - public DeployedJobSpecId getDeployedJobSpecId() { - return deployedJobSpecId; - } - - public byte[] getACGGFBytes() { - return acggfBytes; - } - - public Set<JobFlag> getJobFlags() { - return jobFlags; - } - - public DeploymentId getDeploymentId() { - return deploymentId; - } - } - - public static class GetResultDirectoryAddressFunction extends Function { - private static final long serialVersionUID = 1L; - - @Override - public FunctionId getFunctionId() { - return FunctionId.GET_RESULT_DIRECTORY_ADDRESS; - } - } - - public static class GetResultStatusFunction extends Function { - private static final long serialVersionUID = 1L; - - private final JobId jobId; - - private final ResultSetId rsId; - - public GetResultStatusFunction(JobId jobId, ResultSetId rsId) { - this.jobId = jobId; - this.rsId = rsId; - } - - @Override - public FunctionId getFunctionId() { - return FunctionId.GET_RESULT_STATUS; - } - - public JobId getJobId() { - return jobId; - } - - public ResultSetId getResultSetId() { - return rsId; - } - } - - public static class GetResultLocationsFunction extends Function { - private static final long serialVersionUID = 1L; - - private final JobId jobId; - - private final ResultSetId rsId; - - private final ResultDirectoryRecord[] knownRecords; - - public GetResultLocationsFunction(JobId jobId, ResultSetId rsId, ResultDirectoryRecord[] knownRecords) { - this.jobId = jobId; - this.rsId = rsId; - this.knownRecords = knownRecords; - } - - @Override - public FunctionId getFunctionId() { - return FunctionId.GET_RESULT_LOCATIONS; - } - - public JobId getJobId() { - return jobId; - } - - public ResultSetId getResultSetId() { - return rsId; - } - - public ResultDirectoryRecord[] getKnownRecords() { - return knownRecords; - } - } - - public static class WaitForCompletionFunction extends Function { - private static final long serialVersionUID = 1L; - - private final JobId jobId; - - public WaitForCompletionFunction(JobId jobId) { - this.jobId = jobId; - } - - @Override - public FunctionId getFunctionId() { - return FunctionId.WAIT_FOR_COMPLETION; - } - - public JobId getJobId() { - return jobId; - } - } - - public static class GetNodeControllersInfoFunction extends Function { - private static final long serialVersionUID = 1L; - - @Override - public FunctionId getFunctionId() { - return FunctionId.GET_NODE_CONTROLLERS_INFO; - } - } - - public static class GetClusterTopologyFunction extends Function { - private static final long serialVersionUID = 1L; - - @Override - public FunctionId getFunctionId() { - return FunctionId.GET_CLUSTER_TOPOLOGY; - } - } - - public static class CliDeployBinaryFunction extends Function { - private static final long serialVersionUID = 1L; - private final List<URL> binaryURLs; - private final DeploymentId deploymentId; - - public CliDeployBinaryFunction(List<URL> binaryURLs, DeploymentId deploymentId) { - this.binaryURLs = binaryURLs; - this.deploymentId = deploymentId; - } - - @Override - public FunctionId getFunctionId() { - return FunctionId.CLI_DEPLOY_BINARY; - } - - public List<URL> getBinaryURLs() { - return binaryURLs; - } - - public DeploymentId getDeploymentId() { - return deploymentId; - } - } - - public static class CliUnDeployBinaryFunction extends Function { - private static final long serialVersionUID = 1L; - private final DeploymentId deploymentId; - - public CliUnDeployBinaryFunction(DeploymentId deploymentId) { - this.deploymentId = deploymentId; - } - - @Override - public FunctionId getFunctionId() { - return FunctionId.CLI_UNDEPLOY_BINARY; - } - - public DeploymentId getDeploymentId() { - return deploymentId; - } - } - - public static class ClusterShutdownFunction extends Function { - private static final long serialVersionUID = 1L; - private final boolean terminateNCService; - - public ClusterShutdownFunction(boolean terminateNCService) { - this.terminateNCService = terminateNCService; - } - - @Override - public FunctionId getFunctionId() { - return FunctionId.CLUSTER_SHUTDOWN; - } - - public boolean isTerminateNCService() { - return terminateNCService; - } - } - - public static class GetNodeDetailsJSONFunction extends Function { - private static final long serialVersionUID = 1L; - private final String nodeId; - private final boolean includeStats; - private final boolean includeConfig; - - public GetNodeDetailsJSONFunction(String nodeId, boolean includeStats, boolean includeConfig) { - this.nodeId = nodeId; - this.includeStats = includeStats; - this.includeConfig = includeConfig; - } - - public String getNodeId() { - return nodeId; - } - - public boolean isIncludeStats() { - return includeStats; - } - - public boolean isIncludeConfig() { - return includeConfig; - } - - @Override - public FunctionId getFunctionId() { - return FunctionId.GET_NODE_DETAILS_JSON; - } - } - - public static class ThreadDumpFunction extends Function { - private final String node; - - public ThreadDumpFunction(String node) { - this.node = node; - } - - @Override - public FunctionId getFunctionId() { - return FunctionId.THREAD_DUMP; - } - - public String getNode() { - return node; - } - } -} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceRemoteProxy.java ---------------------------------------------------------------------- diff --git a/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceRemoteProxy.java b/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceRemoteProxy.java deleted file mode 100644 index 63a32f7..0000000 --- a/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksClientInterfaceRemoteProxy.java +++ /dev/null @@ -1,199 +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.hyracks.api.client; - -import java.net.URL; -import java.util.EnumSet; -import java.util.List; -import java.util.Map; -import java.util.concurrent.TimeUnit; - -import org.apache.hyracks.api.comm.NetworkAddress; -import org.apache.hyracks.api.deployment.DeploymentId; -import org.apache.hyracks.api.job.DeployedJobSpecId; -import org.apache.hyracks.api.job.JobFlag; -import org.apache.hyracks.api.job.JobId; -import org.apache.hyracks.api.job.JobInfo; -import org.apache.hyracks.api.job.JobStatus; -import org.apache.hyracks.api.topology.ClusterTopology; -import org.apache.hyracks.ipc.api.IIPCHandle; -import org.apache.hyracks.ipc.api.RPCInterface; -import org.apache.hyracks.ipc.exceptions.IPCException; - -public class HyracksClientInterfaceRemoteProxy implements IHyracksClientInterface { - private static final int SHUTDOWN_CONNECTION_TIMEOUT_SECS = 30; - - private final IIPCHandle ipcHandle; - - private final RPCInterface rpci; - - public HyracksClientInterfaceRemoteProxy(IIPCHandle ipcHandle, RPCInterface rpci) { - this.ipcHandle = ipcHandle; - this.rpci = rpci; - } - - @Override - public ClusterControllerInfo getClusterControllerInfo() throws Exception { - HyracksClientInterfaceFunctions.GetClusterControllerInfoFunction gccif = - new HyracksClientInterfaceFunctions.GetClusterControllerInfoFunction(); - return (ClusterControllerInfo) rpci.call(ipcHandle, gccif); - } - - @Override - public JobStatus getJobStatus(JobId jobId) throws Exception { - HyracksClientInterfaceFunctions.GetJobStatusFunction gjsf = - new HyracksClientInterfaceFunctions.GetJobStatusFunction(jobId); - return (JobStatus) rpci.call(ipcHandle, gjsf); - } - - @Override - public JobId startJob(byte[] acggfBytes, EnumSet<JobFlag> jobFlags) throws Exception { - HyracksClientInterfaceFunctions.StartJobFunction sjf = - new HyracksClientInterfaceFunctions.StartJobFunction(acggfBytes, jobFlags); - return (JobId) rpci.call(ipcHandle, sjf); - } - - @Override - public void cancelJob(JobId jobId) throws Exception { - HyracksClientInterfaceFunctions.CancelJobFunction cjf = - new HyracksClientInterfaceFunctions.CancelJobFunction(jobId); - rpci.call(ipcHandle, cjf); - } - - @Override - public JobId startJob(DeployedJobSpecId deployedJobSpecId, Map<byte[], byte[]> jobParameters) throws Exception { - HyracksClientInterfaceFunctions.StartJobFunction sjf = - new HyracksClientInterfaceFunctions.StartJobFunction(deployedJobSpecId, jobParameters); - return (JobId) rpci.call(ipcHandle, sjf); - } - - @Override - public JobId startJob(DeploymentId deploymentId, byte[] acggfBytes, EnumSet<JobFlag> jobFlags) throws Exception { - HyracksClientInterfaceFunctions.StartJobFunction sjf = - new HyracksClientInterfaceFunctions.StartJobFunction(deploymentId, acggfBytes, jobFlags); - return (JobId) rpci.call(ipcHandle, sjf); - } - - @Override - public DeployedJobSpecId deployJobSpec(byte[] acggfBytes) throws Exception { - HyracksClientInterfaceFunctions.DeployJobSpecFunction sjf = - new HyracksClientInterfaceFunctions.DeployJobSpecFunction(acggfBytes); - return (DeployedJobSpecId) rpci.call(ipcHandle, sjf); - } - - @Override - public void redeployJobSpec(DeployedJobSpecId deployedJobSpecId, byte[] acggfBytes) throws Exception { - HyracksClientInterfaceFunctions.redeployJobSpecFunction udjsf = - new HyracksClientInterfaceFunctions.redeployJobSpecFunction(deployedJobSpecId, acggfBytes); - rpci.call(ipcHandle, udjsf); - } - - @Override - public void undeployJobSpec(DeployedJobSpecId deployedJobSpecId) throws Exception { - HyracksClientInterfaceFunctions.UndeployJobSpecFunction sjf = - new HyracksClientInterfaceFunctions.UndeployJobSpecFunction(deployedJobSpecId); - rpci.call(ipcHandle, sjf); - } - - @Override - public NetworkAddress getResultDirectoryAddress() throws Exception { - HyracksClientInterfaceFunctions.GetResultDirectoryAddressFunction gddsf = - new HyracksClientInterfaceFunctions.GetResultDirectoryAddressFunction(); - return (NetworkAddress) rpci.call(ipcHandle, gddsf); - } - - @Override - public void waitForCompletion(JobId jobId) throws Exception { - HyracksClientInterfaceFunctions.WaitForCompletionFunction wfcf = - new HyracksClientInterfaceFunctions.WaitForCompletionFunction(jobId); - rpci.call(ipcHandle, wfcf); - } - - @Override - public Map<String, NodeControllerInfo> getNodeControllersInfo() throws Exception { - HyracksClientInterfaceFunctions.GetNodeControllersInfoFunction gncif = - new HyracksClientInterfaceFunctions.GetNodeControllersInfoFunction(); - return (Map<String, NodeControllerInfo>) rpci.call(ipcHandle, gncif); - } - - @Override - public ClusterTopology getClusterTopology() throws Exception { - HyracksClientInterfaceFunctions.GetClusterTopologyFunction gctf = - new HyracksClientInterfaceFunctions.GetClusterTopologyFunction(); - return (ClusterTopology) rpci.call(ipcHandle, gctf); - } - - @Override - public void deployBinary(List<URL> binaryURLs, DeploymentId deploymentId) throws Exception { - HyracksClientInterfaceFunctions.CliDeployBinaryFunction dbf = - new HyracksClientInterfaceFunctions.CliDeployBinaryFunction(binaryURLs, deploymentId); - rpci.call(ipcHandle, dbf); - } - - @Override - public void unDeployBinary(DeploymentId deploymentId) throws Exception { - HyracksClientInterfaceFunctions.CliUnDeployBinaryFunction dbf = - new HyracksClientInterfaceFunctions.CliUnDeployBinaryFunction(deploymentId); - rpci.call(ipcHandle, dbf); - } - - @Override - public JobInfo getJobInfo(JobId jobId) throws Exception { - HyracksClientInterfaceFunctions.GetJobInfoFunction gjsf = - new HyracksClientInterfaceFunctions.GetJobInfoFunction(jobId); - return (JobInfo) rpci.call(ipcHandle, gjsf); - } - - @Override - public void stopCluster(boolean terminateNCService) throws Exception { - HyracksClientInterfaceFunctions.ClusterShutdownFunction csdf = - new HyracksClientInterfaceFunctions.ClusterShutdownFunction(terminateNCService); - rpci.call(ipcHandle, csdf); - int i = 0; - // give the CC some time to do final settling after it returns our request - while (ipcHandle.isConnected() && i++ < SHUTDOWN_CONNECTION_TIMEOUT_SECS) { - synchronized (this) { - wait(TimeUnit.SECONDS.toMillis(1)); - } - } - if (ipcHandle.isConnected()) { - throw new IPCException( - "CC refused to release connection after " + SHUTDOWN_CONNECTION_TIMEOUT_SECS + " seconds"); - } - } - - @Override - public String getNodeDetailsJSON(String nodeId, boolean includeStats, boolean includeConfig) throws Exception { - HyracksClientInterfaceFunctions.GetNodeDetailsJSONFunction gjsf = - new HyracksClientInterfaceFunctions.GetNodeDetailsJSONFunction(nodeId, includeStats, includeConfig); - return (String) rpci.call(ipcHandle, gjsf); - } - - @Override - public String getThreadDump(String node) throws Exception { - HyracksClientInterfaceFunctions.ThreadDumpFunction tdf = - new HyracksClientInterfaceFunctions.ThreadDumpFunction(node); - return (String) rpci.call(ipcHandle, tdf); - } - - @Override - public boolean isConnected() { - return ipcHandle.isConnected(); - } -} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksConnection.java ---------------------------------------------------------------------- diff --git a/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksConnection.java b/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksConnection.java deleted file mode 100644 index 48c656f..0000000 --- a/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/HyracksConnection.java +++ /dev/null @@ -1,480 +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.hyracks.api.client; - -import java.io.File; -import java.net.InetSocketAddress; -import java.net.URL; -import java.util.ArrayList; -import java.util.EnumSet; -import java.util.List; -import java.util.Map; -import java.util.UUID; -import java.util.concurrent.ArrayBlockingQueue; -import java.util.concurrent.BlockingQueue; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; -import java.util.concurrent.TimeUnit; - -import org.apache.http.HttpResponse; -import org.apache.http.client.methods.HttpPut; -import org.apache.http.entity.FileEntity; -import org.apache.http.impl.client.CloseableHttpClient; -import org.apache.http.impl.client.DefaultHttpClient; -import org.apache.hyracks.api.client.impl.JobSpecificationActivityClusterGraphGeneratorFactory; -import org.apache.hyracks.api.comm.NetworkAddress; -import org.apache.hyracks.api.deployment.DeploymentId; -import org.apache.hyracks.api.exceptions.HyracksException; -import org.apache.hyracks.api.job.DeployedJobSpecId; -import org.apache.hyracks.api.job.IActivityClusterGraphGeneratorFactory; -import org.apache.hyracks.api.job.JobFlag; -import org.apache.hyracks.api.job.JobId; -import org.apache.hyracks.api.job.JobInfo; -import org.apache.hyracks.api.job.JobSpecification; -import org.apache.hyracks.api.job.JobStatus; -import org.apache.hyracks.api.topology.ClusterTopology; -import org.apache.hyracks.api.util.InvokeUtil; -import org.apache.hyracks.api.util.JavaSerializationUtils; -import org.apache.hyracks.ipc.api.RPCInterface; -import org.apache.hyracks.ipc.impl.IPCSystem; -import org.apache.hyracks.ipc.impl.JavaSerializationBasedPayloadSerializerDeserializer; -import org.apache.hyracks.util.ExitUtil; -import org.apache.hyracks.util.InterruptibleAction; -import org.apache.logging.log4j.Level; -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; - -/** - * Connection Class used by a Hyracks Client to interact with a Hyracks Cluster - * Controller. - * - * @author vinayakb - */ -public final class HyracksConnection implements IHyracksClientConnection { - - private static final Logger LOGGER = LogManager.getLogger(); - - private final String ccHost; - - private final int ccPort; - - private final IPCSystem ipc; - - private final IHyracksClientInterface hci; - - private final ClusterControllerInfo ccInfo; - - private volatile boolean running = false; - - private volatile long reqId = 0L; - - private final ExecutorService uninterruptibleExecutor = - Executors.newFixedThreadPool(2, r -> new Thread(r, "HyracksConnection Uninterrubtible thread: ")); - - private final BlockingQueue<UnInterruptibleRequest<?>> uninterruptibles = new ArrayBlockingQueue<>(1); - - /** - * Constructor to create a connection to the Hyracks Cluster Controller. - * - * @param ccHost - * Host name (or IP Address) where the Cluster Controller can be - * reached. - * @param ccPort - * Port to reach the Hyracks Cluster Controller at the specified - * host name. - * @throws Exception - */ - public HyracksConnection(String ccHost, int ccPort) throws Exception { - this.ccHost = ccHost; - this.ccPort = ccPort; - RPCInterface rpci = new RPCInterface(); - ipc = new IPCSystem(new InetSocketAddress(0), rpci, new JavaSerializationBasedPayloadSerializerDeserializer()); - ipc.start(); - hci = new HyracksClientInterfaceRemoteProxy(ipc.getReconnectingHandle(new InetSocketAddress(ccHost, ccPort)), - rpci); - ccInfo = hci.getClusterControllerInfo(); - uninterruptibleExecutor.execute(new UninterrubtileRequestHandler()); - uninterruptibleExecutor.execute(new UninterrubtileHandlerWatcher()); - } - - @Override - public JobStatus getJobStatus(JobId jobId) throws Exception { - return hci.getJobStatus(jobId); - } - - @Override - public void cancelJob(JobId jobId) throws Exception { - CancelJobRequest request = new CancelJobRequest(jobId); - uninterruptiblySubmitAndExecute(request); - } - - @Override - public JobId startJob(JobSpecification jobSpec) throws Exception { - return startJob(jobSpec, EnumSet.noneOf(JobFlag.class)); - } - - @Override - public JobId startJob(JobSpecification jobSpec, EnumSet<JobFlag> jobFlags) throws Exception { - IActivityClusterGraphGeneratorFactory jsacggf = - new JobSpecificationActivityClusterGraphGeneratorFactory(jobSpec); - return startJob(jsacggf, jobFlags); - } - - @Override - public void redeployJobSpec(DeployedJobSpecId deployedJobSpecId, JobSpecification jobSpec) throws Exception { - JobSpecificationActivityClusterGraphGeneratorFactory jsacggf = - new JobSpecificationActivityClusterGraphGeneratorFactory(jobSpec); - hci.redeployJobSpec(deployedJobSpecId, JavaSerializationUtils.serialize(jsacggf)); - } - - @Override - public DeployedJobSpecId deployJobSpec(JobSpecification jobSpec) throws Exception { - JobSpecificationActivityClusterGraphGeneratorFactory jsacggf = - new JobSpecificationActivityClusterGraphGeneratorFactory(jobSpec); - return deployJobSpec(jsacggf); - } - - @Override - public void undeployJobSpec(DeployedJobSpecId deployedJobSpecId) throws Exception { - hci.undeployJobSpec(deployedJobSpecId); - } - - @Override - public JobId startJob(DeployedJobSpecId deployedJobSpecId, Map<byte[], byte[]> jobParameters) throws Exception { - StartDeployedJobRequest request = new StartDeployedJobRequest(deployedJobSpecId, jobParameters); - return interruptiblySubmitAndExecute(request); - } - - @Override - public JobId startJob(IActivityClusterGraphGeneratorFactory acggf, EnumSet<JobFlag> jobFlags) throws Exception { - return startJob(null, acggf, jobFlags); - } - - public DeployedJobSpecId deployJobSpec(IActivityClusterGraphGeneratorFactory acggf) throws Exception { - return hci.deployJobSpec(JavaSerializationUtils.serialize(acggf)); - } - - @Override - public NetworkAddress getResultDirectoryAddress() throws Exception { - return hci.getResultDirectoryAddress(); - } - - @Override - public void waitForCompletion(JobId jobId) throws Exception { - try { - hci.waitForCompletion(jobId); - } catch (InterruptedException e) { - // Cancels an on-going job if the current thread gets interrupted. - cancelJob(jobId); - throw e; - } - } - - @Override - public Map<String, NodeControllerInfo> getNodeControllerInfos() throws HyracksException { - try { - return hci.getNodeControllersInfo(); - } catch (Exception e) { - throw HyracksException.create(e); - } - } - - @Override - public ClusterTopology getClusterTopology() throws HyracksException { - try { - return hci.getClusterTopology(); - } catch (Exception e) { - throw HyracksException.create(e); - } - } - - @Override - public DeploymentId deployBinary(List<String> jars) throws Exception { - /** generate a deployment id */ - DeploymentId deploymentId = new DeploymentId(UUID.randomUUID().toString()); - List<URL> binaryURLs = new ArrayList<>(); - if (jars != null && !jars.isEmpty()) { - CloseableHttpClient hc = new DefaultHttpClient(); - try { - /** upload jars through a http client one-by-one to the CC server */ - for (String jar : jars) { - int slashIndex = jar.lastIndexOf('/'); - String fileName = jar.substring(slashIndex + 1); - String url = "http://" + ccHost + ":" + ccInfo.getWebPort() + "/applications/" - + deploymentId.toString() + "&" + fileName; - HttpPut put = new HttpPut(url); - put.setEntity(new FileEntity(new File(jar), "application/octet-stream")); - HttpResponse response = hc.execute(put); - response.getEntity().consumeContent(); - if (response.getStatusLine().getStatusCode() != 200) { - hci.unDeployBinary(deploymentId); - throw new HyracksException(response.getStatusLine().toString()); - } - /** add the uploaded URL address into the URLs of jars to be deployed at NCs */ - binaryURLs.add(new URL(url)); - } - } finally { - hc.close(); - } - } - /** deploy the URLs to the CC and NCs */ - hci.deployBinary(binaryURLs, deploymentId); - return deploymentId; - } - - @Override - public void unDeployBinary(DeploymentId deploymentId) throws Exception { - hci.unDeployBinary(deploymentId); - } - - @Override - public JobId startJob(DeploymentId deploymentId, JobSpecification jobSpec) throws Exception { - return startJob(deploymentId, jobSpec, EnumSet.noneOf(JobFlag.class)); - } - - @Override - public JobId startJob(DeploymentId deploymentId, JobSpecification jobSpec, EnumSet<JobFlag> jobFlags) - throws Exception { - IActivityClusterGraphGeneratorFactory jsacggf = - new JobSpecificationActivityClusterGraphGeneratorFactory(jobSpec); - return startJob(deploymentId, jsacggf, jobFlags); - } - - @Override - public JobId startJob(DeploymentId deploymentId, IActivityClusterGraphGeneratorFactory acggf, - EnumSet<JobFlag> jobFlags) throws Exception { - StartJobRequest request = new StartJobRequest(deploymentId, acggf, jobFlags); - return interruptiblySubmitAndExecute(request); - } - - @Override - public JobInfo getJobInfo(JobId jobId) throws Exception { - return hci.getJobInfo(jobId); - } - - @Override - public void stopCluster(boolean terminateNCService) throws Exception { - hci.stopCluster(terminateNCService); - } - - @Override - public String getNodeDetailsJSON(String nodeId, boolean includeStats, boolean includeConfig) throws Exception { - return hci.getNodeDetailsJSON(nodeId, includeStats, includeConfig); - } - - @Override - public String getThreadDump(String node) throws Exception { - return hci.getThreadDump(node); - } - - @Override - public String getHost() { - return ccHost; - } - - @Override - public int getPort() { - return ccPort; - } - - @Override - public boolean isConnected() { - return hci.isConnected(); - } - - private <T> T uninterruptiblySubmitAndExecute(UnInterruptibleRequest<T> request) throws Exception { - InvokeUtil.doUninterruptibly(() -> uninterruptibles.put(request)); - return uninterruptiblyExecute(request); - } - - private <T> T uninterruptiblyExecute(UnInterruptibleRequest<T> request) throws Exception { - InvokeUtil.doUninterruptibly(request); - return request.result(); - } - - private <T> T interruptiblySubmitAndExecute(UnInterruptibleRequest<T> request) throws Exception { - uninterruptibles.put(request); - return uninterruptiblyExecute(request); - } - - private abstract class UnInterruptibleRequest<T> implements InterruptibleAction { - boolean completed = false; - boolean failed = false; - Throwable failure = null; - T response = null; - - @SuppressWarnings("squid:S1181") - private final void handle() { - try { - response = doHandle(); - } catch (Throwable th) { - failed = true; - failure = th; - } finally { - synchronized (this) { - completed = true; - notifyAll(); - } - } - } - - protected abstract T doHandle() throws Exception; - - @Override - public final synchronized void run() throws InterruptedException { - while (!completed) { - wait(); - } - } - - public T result() throws Exception { - if (failed) { - if (failure instanceof Error) { - throw (Error) failure; - } - throw (Exception) failure; - } - return response; - } - } - - private class CancelJobRequest extends UnInterruptibleRequest<Void> { - final JobId jobId; - - public CancelJobRequest(JobId jobId) { - this.jobId = jobId; - } - - @Override - protected Void doHandle() throws Exception { - hci.cancelJob(jobId); - return null; - } - - @Override - public String toString() { - return "CancelJobRequest: " + jobId.toString(); - } - - } - - private class StartDeployedJobRequest extends UnInterruptibleRequest<JobId> { - - private final DeployedJobSpecId deployedJobSpecId; - private final Map<byte[], byte[]> jobParameters; - - public StartDeployedJobRequest(DeployedJobSpecId deployedJobSpecId, Map<byte[], byte[]> jobParameters) { - this.deployedJobSpecId = deployedJobSpecId; - this.jobParameters = jobParameters; - } - - @Override - protected JobId doHandle() throws Exception { - return hci.startJob(deployedJobSpecId, jobParameters); - } - - } - - private class StartJobRequest extends UnInterruptibleRequest<JobId> { - private final DeploymentId deploymentId; - private final IActivityClusterGraphGeneratorFactory acggf; - private final EnumSet<JobFlag> jobFlags; - - public StartJobRequest(DeploymentId deploymentId, IActivityClusterGraphGeneratorFactory acggf, - EnumSet<JobFlag> jobFlags) { - this.deploymentId = deploymentId; - this.acggf = acggf; - this.jobFlags = jobFlags; - } - - @Override - protected JobId doHandle() throws Exception { - if (deploymentId == null) { - return hci.startJob(JavaSerializationUtils.serialize(acggf), jobFlags); - } else { - return hci.startJob(deploymentId, JavaSerializationUtils.serialize(acggf), jobFlags); - } - } - - @Override - public String toString() { - return "StartJobRequest"; - } - - } - - private class UninterrubtileRequestHandler implements Runnable { - @SuppressWarnings({ "squid:S2189", "squid:S2142" }) - @Override - public void run() { - String nameBefore = Thread.currentThread().getName(); - Thread.currentThread().setName(nameBefore + getClass().getSimpleName()); - try { - while (true) { - try { - UnInterruptibleRequest<?> current = uninterruptibles.take(); - reqId++; - running = true; - current.handle(); - } catch (InterruptedException e) { - LOGGER.log(Level.WARN, "Ignoring interrupt. This thread should never be interrupted."); - continue; - } finally { - running = false; - } - } - } finally { - Thread.currentThread().setName(nameBefore); - } - } - } - - public class UninterrubtileHandlerWatcher implements Runnable { - @Override - @SuppressWarnings({ "squid:S2189", "squid:S2142" }) - public void run() { - String nameBefore = Thread.currentThread().getName(); - Thread.currentThread().setName(nameBefore + getClass().getSimpleName()); - try { - long currentReqId = 0L; - long currentTime = System.nanoTime(); - while (true) { - try { - TimeUnit.MINUTES.sleep(1); - } catch (InterruptedException e) { - LOGGER.log(Level.WARN, "Ignoring interrupt. This thread should never be interrupted."); - continue; - } - if (running) { - if (reqId == currentReqId) { - if (TimeUnit.NANOSECONDS.toMinutes(System.nanoTime() - currentTime) > 0) { - ExitUtil.halt(ExitUtil.EC_FAILED_TO_PROCESS_UN_INTERRUPTIBLE_REQUEST); - } - } else { - currentReqId = reqId; - currentTime = System.nanoTime(); - } - } - } - } finally { - Thread.currentThread().setName(nameBefore); - } - } - } -} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientInterface.java ---------------------------------------------------------------------- diff --git a/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientInterface.java b/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientInterface.java index 4cc47d2..e92db5e 100644 --- a/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientInterface.java +++ b/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/IHyracksClientInterface.java @@ -23,6 +23,7 @@ import java.util.EnumSet; import java.util.List; import java.util.Map; +import org.apache.hyracks.api.client.impl.ClusterControllerInfo; import org.apache.hyracks.api.comm.NetworkAddress; import org.apache.hyracks.api.deployment.DeploymentId; import org.apache.hyracks.api.job.DeployedJobSpecId; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/impl/ClusterControllerInfo.java ---------------------------------------------------------------------- diff --git a/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/impl/ClusterControllerInfo.java b/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/impl/ClusterControllerInfo.java new file mode 100644 index 0000000..7d0dd61 --- /dev/null +++ b/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/client/impl/ClusterControllerInfo.java @@ -0,0 +1,58 @@ +/* + * 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.hyracks.api.client.impl; + +import java.io.Serializable; + +import org.apache.hyracks.api.control.CcId; + +public class ClusterControllerInfo implements Serializable { + private static final long serialVersionUID = 1L; + + private final CcId ccId; + + private final String clientNetAddress; + + private final int clientNetPort; + + private final int webPort; + + public ClusterControllerInfo(CcId ccId, String clientNetAddress, int clientNetPort, int webPort) { + this.ccId = ccId; + this.clientNetAddress = clientNetAddress; + this.clientNetPort = clientNetPort; + this.webPort = webPort; + } + + public CcId getCcId() { + return ccId; + } + + public int getWebPort() { + return webPort; + } + + public String getClientNetAddress() { + return clientNetAddress; + } + + public int getClientNetPort() { + return clientNetPort; + } +} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/context/ICCContext.java ---------------------------------------------------------------------- diff --git a/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/context/ICCContext.java b/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/context/ICCContext.java index 83e0482..c3da155 100644 --- a/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/context/ICCContext.java +++ b/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/context/ICCContext.java @@ -22,7 +22,7 @@ import java.net.InetAddress; import java.util.Map; import java.util.Set; -import org.apache.hyracks.api.client.ClusterControllerInfo; +import org.apache.hyracks.api.client.impl.ClusterControllerInfo; import org.apache.hyracks.api.exceptions.HyracksDataException; import org.apache.hyracks.api.topology.ClusterTopology; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/hyracks-fullstack/hyracks/hyracks-client/src/main/java/org/apache/hyracks/client/result/ResultDirectoryRemoteProxy.java ---------------------------------------------------------------------- diff --git a/hyracks-fullstack/hyracks/hyracks-client/src/main/java/org/apache/hyracks/client/result/ResultDirectoryRemoteProxy.java b/hyracks-fullstack/hyracks/hyracks-client/src/main/java/org/apache/hyracks/client/result/ResultDirectoryRemoteProxy.java index 77c6e4b..e802ef9 100644 --- a/hyracks-fullstack/hyracks/hyracks-client/src/main/java/org/apache/hyracks/client/result/ResultDirectoryRemoteProxy.java +++ b/hyracks-fullstack/hyracks/hyracks-client/src/main/java/org/apache/hyracks/client/result/ResultDirectoryRemoteProxy.java @@ -18,14 +18,14 @@ */ package org.apache.hyracks.client.result; -import org.apache.hyracks.api.client.HyracksClientInterfaceFunctions; -import org.apache.hyracks.api.result.ResultJobRecord.Status; +import org.apache.hyracks.api.job.JobId; import org.apache.hyracks.api.result.IResultDirectory; import org.apache.hyracks.api.result.ResultDirectoryRecord; +import org.apache.hyracks.api.result.ResultJobRecord.Status; import org.apache.hyracks.api.result.ResultSetId; -import org.apache.hyracks.api.job.JobId; import org.apache.hyracks.ipc.api.IIPCHandle; import org.apache.hyracks.ipc.api.RPCInterface; +import org.apache.hyracks.ipc.impl.HyracksClientInterfaceFunctions; //TODO(madhusudancs): Should this implementation be moved to org.apache.hyracks.client? public class ResultDirectoryRemoteProxy implements IResultDirectory { http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/hyracks-fullstack/hyracks/hyracks-client/src/test/java/org/apache/hyracks/client/stats/HyracksUtils.java ---------------------------------------------------------------------- diff --git a/hyracks-fullstack/hyracks/hyracks-client/src/test/java/org/apache/hyracks/client/stats/HyracksUtils.java b/hyracks-fullstack/hyracks/hyracks-client/src/test/java/org/apache/hyracks/client/stats/HyracksUtils.java index 3eff037..cf77c72 100644 --- a/hyracks-fullstack/hyracks/hyracks-client/src/test/java/org/apache/hyracks/client/stats/HyracksUtils.java +++ b/hyracks-fullstack/hyracks/hyracks-client/src/test/java/org/apache/hyracks/client/stats/HyracksUtils.java @@ -21,7 +21,6 @@ package org.apache.hyracks.client.stats; import java.util.EnumSet; -import org.apache.hyracks.api.client.HyracksConnection; import org.apache.hyracks.api.client.IHyracksClientConnection; import org.apache.hyracks.api.job.JobFlag; import org.apache.hyracks.api.job.JobId; @@ -30,6 +29,7 @@ import org.apache.hyracks.control.cc.ClusterControllerService; import org.apache.hyracks.control.common.controllers.CCConfig; import org.apache.hyracks.control.common.controllers.NCConfig; import org.apache.hyracks.control.nc.NodeControllerService; +import org.apache.hyracks.ipc.impl.HyracksConnection; public class HyracksUtils { http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/ClientInterfaceIPCI.java ---------------------------------------------------------------------- diff --git a/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/ClientInterfaceIPCI.java b/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/ClientInterfaceIPCI.java index 2edbab8..f2ea988 100644 --- a/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/ClientInterfaceIPCI.java +++ b/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/ClientInterfaceIPCI.java @@ -18,7 +18,6 @@ */ package org.apache.hyracks.control.cc; -import org.apache.hyracks.api.client.HyracksClientInterfaceFunctions; import org.apache.hyracks.api.comm.NetworkAddress; import org.apache.hyracks.api.job.DeployedJobSpecId; import org.apache.hyracks.api.job.DeployedJobSpecIdFactory; @@ -45,6 +44,7 @@ import org.apache.hyracks.control.common.work.IPCResponder; import org.apache.hyracks.ipc.api.IIPCHandle; import org.apache.hyracks.ipc.api.IIPCI; import org.apache.hyracks.ipc.exceptions.IPCException; +import org.apache.hyracks.ipc.impl.HyracksClientInterfaceFunctions; import org.apache.logging.log4j.Level; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/ClusterControllerService.java ---------------------------------------------------------------------- diff --git a/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/ClusterControllerService.java b/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/ClusterControllerService.java index b2e4a5e..e751589 100644 --- a/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/ClusterControllerService.java +++ b/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/ClusterControllerService.java @@ -36,7 +36,7 @@ import java.util.TreeMap; import java.util.concurrent.ExecutorService; import org.apache.hyracks.api.application.ICCApplication; -import org.apache.hyracks.api.client.ClusterControllerInfo; +import org.apache.hyracks.api.client.impl.ClusterControllerInfo; import org.apache.hyracks.api.comm.NetworkAddress; import org.apache.hyracks.api.config.IApplicationConfig; import org.apache.hyracks.api.context.ICCContext; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-common/src/main/java/org/apache/hyracks/control/common/controllers/NodeParameters.java ---------------------------------------------------------------------- diff --git a/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-common/src/main/java/org/apache/hyracks/control/common/controllers/NodeParameters.java b/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-common/src/main/java/org/apache/hyracks/control/common/controllers/NodeParameters.java index e78a423..d9165e1 100644 --- a/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-common/src/main/java/org/apache/hyracks/control/common/controllers/NodeParameters.java +++ b/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-common/src/main/java/org/apache/hyracks/control/common/controllers/NodeParameters.java @@ -20,7 +20,7 @@ package org.apache.hyracks.control.common.controllers; import java.io.Serializable; -import org.apache.hyracks.api.client.ClusterControllerInfo; +import org.apache.hyracks.api.client.impl.ClusterControllerInfo; public class NodeParameters implements Serializable { private static final long serialVersionUID = 1L; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/pom.xml ---------------------------------------------------------------------- diff --git a/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/pom.xml b/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/pom.xml index 4dae07a..69a80c7 100644 --- a/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/pom.xml +++ b/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/pom.xml @@ -77,6 +77,11 @@ <artifactId>hyracks-data-std</artifactId> <version>${project.version}</version> </dependency> + <dependency> + <groupId>org.apache.hyracks</groupId> + <artifactId>hyracks-ipc</artifactId> + <version>${project.version}</version> + </dependency> </dependencies> <build> <plugins> http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/src/main/java/org/apache/hyracks/examples/btree/client/InsertPipelineExample.java ---------------------------------------------------------------------- diff --git a/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/src/main/java/org/apache/hyracks/examples/btree/client/InsertPipelineExample.java b/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/src/main/java/org/apache/hyracks/examples/btree/client/InsertPipelineExample.java index 8ac34d8..872fd35 100644 --- a/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/src/main/java/org/apache/hyracks/examples/btree/client/InsertPipelineExample.java +++ b/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/src/main/java/org/apache/hyracks/examples/btree/client/InsertPipelineExample.java @@ -19,7 +19,6 @@ package org.apache.hyracks.examples.btree.client; -import org.apache.hyracks.api.client.HyracksConnection; import org.apache.hyracks.api.client.IHyracksClientConnection; import org.apache.hyracks.api.constraints.PartitionConstraintHelper; import org.apache.hyracks.api.dataflow.IConnectorDescriptor; @@ -43,6 +42,7 @@ import org.apache.hyracks.dataflow.std.file.IFileSplitProvider; import org.apache.hyracks.dataflow.std.misc.NullSinkOperatorDescriptor; import org.apache.hyracks.examples.btree.helper.BTreeHelperStorageManager; import org.apache.hyracks.examples.btree.helper.DataGenOperatorDescriptor; +import org.apache.hyracks.ipc.impl.HyracksConnection; import org.apache.hyracks.storage.am.common.dataflow.IIndexDataflowHelperFactory; import org.apache.hyracks.storage.am.common.dataflow.IndexDataflowHelperFactory; import org.apache.hyracks.storage.am.common.dataflow.TreeIndexInsertUpdateDeleteOperatorDescriptor; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/src/main/java/org/apache/hyracks/examples/btree/client/PrimaryIndexBulkLoadExample.java ---------------------------------------------------------------------- diff --git a/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/src/main/java/org/apache/hyracks/examples/btree/client/PrimaryIndexBulkLoadExample.java b/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/src/main/java/org/apache/hyracks/examples/btree/client/PrimaryIndexBulkLoadExample.java index 2fb1cee..5ba53d5 100644 --- a/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/src/main/java/org/apache/hyracks/examples/btree/client/PrimaryIndexBulkLoadExample.java +++ b/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/src/main/java/org/apache/hyracks/examples/btree/client/PrimaryIndexBulkLoadExample.java @@ -18,7 +18,6 @@ */ package org.apache.hyracks.examples.btree.client; -import org.apache.hyracks.api.client.HyracksConnection; import org.apache.hyracks.api.client.IHyracksClientConnection; import org.apache.hyracks.api.constraints.PartitionConstraintHelper; import org.apache.hyracks.api.dataflow.IConnectorDescriptor; @@ -43,6 +42,7 @@ import org.apache.hyracks.dataflow.std.misc.NullSinkOperatorDescriptor; import org.apache.hyracks.dataflow.std.sort.ExternalSortOperatorDescriptor; import org.apache.hyracks.examples.btree.helper.BTreeHelperStorageManager; import org.apache.hyracks.examples.btree.helper.DataGenOperatorDescriptor; +import org.apache.hyracks.ipc.impl.HyracksConnection; import org.apache.hyracks.storage.am.common.dataflow.IIndexDataflowHelperFactory; import org.apache.hyracks.storage.am.common.dataflow.IndexDataflowHelperFactory; import org.apache.hyracks.storage.am.common.dataflow.TreeIndexBulkLoadOperatorDescriptor; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/src/main/java/org/apache/hyracks/examples/btree/client/PrimaryIndexSearchExample.java ---------------------------------------------------------------------- diff --git a/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/src/main/java/org/apache/hyracks/examples/btree/client/PrimaryIndexSearchExample.java b/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/src/main/java/org/apache/hyracks/examples/btree/client/PrimaryIndexSearchExample.java index c32b72c..a6b9af5 100644 --- a/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/src/main/java/org/apache/hyracks/examples/btree/client/PrimaryIndexSearchExample.java +++ b/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/src/main/java/org/apache/hyracks/examples/btree/client/PrimaryIndexSearchExample.java @@ -20,7 +20,6 @@ package org.apache.hyracks.examples.btree.client; import java.io.DataOutput; -import org.apache.hyracks.api.client.HyracksConnection; import org.apache.hyracks.api.client.IHyracksClientConnection; import org.apache.hyracks.api.dataflow.value.IBinaryComparatorFactory; import org.apache.hyracks.api.dataflow.value.ISerializerDeserializer; @@ -40,6 +39,7 @@ import org.apache.hyracks.dataflow.std.file.IFileSplitProvider; import org.apache.hyracks.dataflow.std.misc.ConstantTupleSourceOperatorDescriptor; import org.apache.hyracks.dataflow.std.misc.PrinterOperatorDescriptor; import org.apache.hyracks.examples.btree.helper.BTreeHelperStorageManager; +import org.apache.hyracks.ipc.impl.HyracksConnection; import org.apache.hyracks.storage.am.btree.dataflow.BTreeSearchOperatorDescriptor; import org.apache.hyracks.storage.am.common.dataflow.IIndexDataflowHelperFactory; import org.apache.hyracks.storage.am.common.dataflow.IndexDataflowHelperFactory; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/src/main/java/org/apache/hyracks/examples/btree/client/SecondaryIndexBulkLoadExample.java ---------------------------------------------------------------------- diff --git a/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/src/main/java/org/apache/hyracks/examples/btree/client/SecondaryIndexBulkLoadExample.java b/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/src/main/java/org/apache/hyracks/examples/btree/client/SecondaryIndexBulkLoadExample.java index a8bea08..f266fa8 100644 --- a/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/src/main/java/org/apache/hyracks/examples/btree/client/SecondaryIndexBulkLoadExample.java +++ b/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/src/main/java/org/apache/hyracks/examples/btree/client/SecondaryIndexBulkLoadExample.java @@ -18,7 +18,6 @@ */ package org.apache.hyracks.examples.btree.client; -import org.apache.hyracks.api.client.HyracksConnection; import org.apache.hyracks.api.client.IHyracksClientConnection; import org.apache.hyracks.api.dataflow.value.IBinaryComparatorFactory; import org.apache.hyracks.api.dataflow.value.ISerializerDeserializer; @@ -36,6 +35,7 @@ import org.apache.hyracks.dataflow.std.file.IFileSplitProvider; import org.apache.hyracks.dataflow.std.misc.NullSinkOperatorDescriptor; import org.apache.hyracks.dataflow.std.sort.ExternalSortOperatorDescriptor; import org.apache.hyracks.examples.btree.helper.BTreeHelperStorageManager; +import org.apache.hyracks.ipc.impl.HyracksConnection; import org.apache.hyracks.storage.am.common.dataflow.IIndexDataflowHelperFactory; import org.apache.hyracks.storage.am.common.dataflow.IndexDataflowHelperFactory; import org.apache.hyracks.storage.am.common.dataflow.TreeIndexBulkLoadOperatorDescriptor; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/src/main/java/org/apache/hyracks/examples/btree/client/SecondaryIndexSearchExample.java ---------------------------------------------------------------------- diff --git a/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/src/main/java/org/apache/hyracks/examples/btree/client/SecondaryIndexSearchExample.java b/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/src/main/java/org/apache/hyracks/examples/btree/client/SecondaryIndexSearchExample.java index ccf20fe..2f0ad23 100644 --- a/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/src/main/java/org/apache/hyracks/examples/btree/client/SecondaryIndexSearchExample.java +++ b/hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreeclient/src/main/java/org/apache/hyracks/examples/btree/client/SecondaryIndexSearchExample.java @@ -20,7 +20,6 @@ package org.apache.hyracks.examples.btree.client; import java.io.DataOutput; -import org.apache.hyracks.api.client.HyracksConnection; import org.apache.hyracks.api.client.IHyracksClientConnection; import org.apache.hyracks.api.dataflow.value.IBinaryComparatorFactory; import org.apache.hyracks.api.dataflow.value.ISerializerDeserializer; @@ -40,6 +39,7 @@ import org.apache.hyracks.dataflow.std.file.IFileSplitProvider; import org.apache.hyracks.dataflow.std.misc.ConstantTupleSourceOperatorDescriptor; import org.apache.hyracks.dataflow.std.misc.PrinterOperatorDescriptor; import org.apache.hyracks.examples.btree.helper.BTreeHelperStorageManager; +import org.apache.hyracks.ipc.impl.HyracksConnection; import org.apache.hyracks.storage.am.btree.dataflow.BTreeSearchOperatorDescriptor; import org.apache.hyracks.storage.am.common.dataflow.IIndexDataflowHelperFactory; import org.apache.hyracks.storage.am.common.dataflow.IndexDataflowHelperFactory; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/pom.xml ---------------------------------------------------------------------- diff --git a/hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/pom.xml b/hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/pom.xml index 98cdea8..a6c7aca 100644 --- a/hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/pom.xml +++ b/hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/pom.xml @@ -146,6 +146,11 @@ <version>${project.version}</version> </dependency> <dependency> + <groupId>org.apache.hyracks</groupId> + <artifactId>hyracks-ipc</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <scope>test</scope> http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/AbstractIntegrationTest.java ---------------------------------------------------------------------- diff --git a/hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/AbstractIntegrationTest.java b/hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/AbstractIntegrationTest.java index 5dcc99a..a4a00ce 100644 --- a/hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/AbstractIntegrationTest.java +++ b/hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/AbstractIntegrationTest.java @@ -32,7 +32,6 @@ import java.util.List; import java.util.concurrent.atomic.AtomicInteger; import org.apache.commons.io.FileUtils; -import org.apache.hyracks.api.client.HyracksConnection; import org.apache.hyracks.api.client.IHyracksClientConnection; import org.apache.hyracks.api.comm.IFrameTupleAccessor; import org.apache.hyracks.api.comm.VSizeFrame; @@ -53,6 +52,7 @@ import org.apache.hyracks.control.nc.NodeControllerService; import org.apache.hyracks.control.nc.resources.memory.FrameManager; import org.apache.hyracks.dataflow.common.comm.io.ResultFrameTupleAccessor; import org.apache.hyracks.dataflow.common.comm.util.ByteBufferInputStream; +import org.apache.hyracks.ipc.impl.HyracksConnection; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.junit.AfterClass; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/AbstractMultiNCIntegrationTest.java ---------------------------------------------------------------------- diff --git a/hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/AbstractMultiNCIntegrationTest.java b/hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/AbstractMultiNCIntegrationTest.java index 55fd9a0..4bee7ee 100644 --- a/hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/AbstractMultiNCIntegrationTest.java +++ b/hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/AbstractMultiNCIntegrationTest.java @@ -25,7 +25,6 @@ import java.util.EnumSet; import java.util.List; import org.apache.commons.io.FileUtils; -import org.apache.hyracks.api.client.HyracksConnection; import org.apache.hyracks.api.client.IHyracksClientConnection; import org.apache.hyracks.api.comm.IFrameTupleAccessor; import org.apache.hyracks.api.comm.VSizeFrame; @@ -48,6 +47,7 @@ import org.apache.hyracks.control.nc.NodeControllerService; import org.apache.hyracks.control.nc.resources.memory.FrameManager; import org.apache.hyracks.dataflow.common.comm.io.ResultFrameTupleAccessor; import org.apache.hyracks.dataflow.common.comm.util.ByteBufferInputStream; +import org.apache.hyracks.ipc.impl.HyracksConnection; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.junit.AfterClass; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/da7e8a16/hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/DeployedJobSpecsTest.java ---------------------------------------------------------------------- diff --git a/hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/DeployedJobSpecsTest.java b/hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/DeployedJobSpecsTest.java index d8f4064..8e84b89 100644 --- a/hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/DeployedJobSpecsTest.java +++ b/hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/DeployedJobSpecsTest.java @@ -27,7 +27,6 @@ import java.lang.reflect.Field; import java.util.HashMap; import org.apache.commons.io.FileUtils; -import org.apache.hyracks.api.client.HyracksConnection; import org.apache.hyracks.api.client.IHyracksClientConnection; import org.apache.hyracks.api.job.DeployedJobSpecId; import org.apache.hyracks.api.job.JobId; @@ -38,6 +37,7 @@ import org.apache.hyracks.control.cc.cluster.NodeManager; import org.apache.hyracks.control.common.controllers.CCConfig; import org.apache.hyracks.control.common.controllers.NCConfig; import org.apache.hyracks.control.nc.NodeControllerService; +import org.apache.hyracks.ipc.impl.HyracksConnection; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.junit.AfterClass;
