You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@asterixdb.apache.org by mb...@apache.org on 2021/10/31 22:05:53 UTC

[asterixdb] branch master updated: [NO ISSUE] Remove unused code from asterix-active

This is an automated email from the ASF dual-hosted git repository.

mblow pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/asterixdb.git


The following commit(s) were added to refs/heads/master by this push:
     new 05ab43d  [NO ISSUE] Remove unused code from asterix-active
05ab43d is described below

commit 05ab43d0cb2021b1e4bf79ecfcf7a9aa805c24cf
Author: Cameron Samak <cs...@apache.org>
AuthorDate: Tue Jun 15 17:28:36 2021 +0000

    [NO ISSUE] Remove unused code from asterix-active
    
    - user model changes: no
    - storage format changes: no
    - interface changes: yes
    
    Details:
    There are more unused methods exist that I don't plan to touch.
    
    Change-Id: I3f0e749dab55c873a6ec2d5fd101afde8a27413d
    Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/11963
    Integration-Tests: Jenkins <je...@fulliautomatix.ics.uci.edu>
    Reviewed-by: Michael Blow <mb...@apache.org>
    Tested-by: Michael Blow <mb...@apache.org>
---
 .../java/org/apache/asterix/active/Activity.java   | 82 ----------------------
 .../asterix/active/CountRetryPolicyFactory.java    | 37 ----------
 .../org/apache/asterix/active/IActiveMessage.java  | 44 ------------
 .../asterix/active/IActiveNotificationHandler.java | 13 ----
 .../apache/asterix/active/InfiniteRetryPolicy.java | 44 ------------
 .../asterix/active/InfiniteRetryPolicyFactory.java | 30 --------
 .../app/active/ActiveNotificationHandler.java      | 14 ----
 .../test/active/ActiveEventsListenerTest.java      | 13 ++--
 8 files changed, 5 insertions(+), 272 deletions(-)

diff --git a/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/Activity.java b/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/Activity.java
deleted file mode 100644
index 7c047c3..0000000
--- a/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/Activity.java
+++ /dev/null
@@ -1,82 +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.util.Map;
-
-import org.apache.asterix.common.metadata.DataverseName;
-
-public class Activity implements Comparable<Activity> {
-
-    protected int activityId;
-    protected final EntityId activeEntityId;
-    protected final Map<String, String> activityDetails;
-
-    public Activity(EntityId activeEntityId, Map<String, String> activityDetails) {
-        this.activeEntityId = activeEntityId;
-        this.activityDetails = activityDetails;
-    }
-
-    public DataverseName getDataverseName() {
-        return activeEntityId.getDataverseName();
-    }
-
-    public String getActiveEntityName() {
-        return activeEntityId.getEntityName();
-    }
-
-    @Override
-    public boolean equals(Object other) {
-        if (this == other) {
-            return true;
-        }
-        if (!(other instanceof Activity)) {
-            return false;
-        }
-        return ((Activity) other).activeEntityId.equals(activeEntityId)
-                && ((Activity) other).getActivityId() != (activityId);
-    }
-
-    @Override
-    public int hashCode() {
-        return toString().hashCode();
-    }
-
-    @Override
-    public String toString() {
-        return activeEntityId + "." + activityId;
-    }
-
-    public int getActivityId() {
-        return activityId;
-    }
-
-    public void setActivityId(int activityId) {
-        this.activityId = activityId;
-    }
-
-    public Map<String, String> getActivityDetails() {
-        return activityDetails;
-    }
-
-    @Override
-    public int compareTo(Activity o) {
-        return o.getActivityId() - this.activityId;
-    }
-
-}
diff --git a/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/CountRetryPolicyFactory.java b/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/CountRetryPolicyFactory.java
deleted file mode 100644
index 477bb5a..0000000
--- a/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/CountRetryPolicyFactory.java
+++ /dev/null
@@ -1,37 +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 org.apache.hyracks.util.CountRetryPolicy;
-import org.apache.hyracks.util.IRetryPolicy;
-
-public class CountRetryPolicyFactory implements IRetryPolicyFactory {
-
-    private final int count;
-
-    public CountRetryPolicyFactory(int count) {
-        this.count = count;
-    }
-
-    @Override
-    public IRetryPolicy create(IActiveEntityEventsListener listener) {
-        return new CountRetryPolicy(count);
-    }
-
-}
diff --git a/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/IActiveMessage.java b/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/IActiveMessage.java
deleted file mode 100644
index e4c7171..0000000
--- a/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/IActiveMessage.java
+++ /dev/null
@@ -1,44 +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.io.Serializable;
-
-import org.apache.hyracks.api.dataflow.value.JSONSerializable;
-
-/**
- * @deprecated
- *             This interface is expected to go away. instead, one should use the IMessageBroker interfaces to exchange
- *             messages
- */
-@Deprecated
-public interface IActiveMessage extends Serializable, JSONSerializable {
-
-    public enum MessageType {
-        END
-    }
-
-    /**
-     * Gets the type associated with this message
-     *
-     * @return MessageType type associated with this message
-     */
-    public MessageType getMessageType();
-
-}
diff --git a/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/IActiveNotificationHandler.java b/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/IActiveNotificationHandler.java
index 1d29828..60bfa69 100644
--- a/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/IActiveNotificationHandler.java
+++ b/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/IActiveNotificationHandler.java
@@ -33,19 +33,6 @@ public interface IActiveNotificationHandler {
     void recover();
 
     /**
-     * Set whether handler initialization has completed or not
-     *
-     * @param initialized
-     * @throws HyracksDataException
-     */
-    void setInitialized(boolean initialized) throws HyracksDataException;
-
-    /**
-     * @return true if initialization has completed, false otherwise
-     */
-    boolean isInitialized();
-
-    /**
      * Register a listener for events of an active entity
      *
      * @param listener
diff --git a/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/InfiniteRetryPolicy.java b/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/InfiniteRetryPolicy.java
deleted file mode 100644
index 6f43c64..0000000
--- a/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/InfiniteRetryPolicy.java
+++ /dev/null
@@ -1,44 +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 org.apache.hyracks.util.IRetryPolicy;
-
-public class InfiniteRetryPolicy implements IRetryPolicy {
-
-    private final IActiveEntityEventsListener listener;
-
-    public InfiniteRetryPolicy(IActiveEntityEventsListener listener) {
-        this.listener = listener;
-    }
-
-    @Override
-    public boolean retry(Throwable failure) {
-        synchronized (listener) {
-            try {
-                listener.wait(5000); //NOSONAR this method is being called in a while loop
-            } catch (InterruptedException e) {
-                Thread.currentThread().interrupt();
-                return false;
-            }
-        }
-        return true;
-    }
-
-}
diff --git a/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/InfiniteRetryPolicyFactory.java b/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/InfiniteRetryPolicyFactory.java
deleted file mode 100644
index d33e1da..0000000
--- a/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/InfiniteRetryPolicyFactory.java
+++ /dev/null
@@ -1,30 +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 org.apache.hyracks.util.IRetryPolicy;
-
-public class InfiniteRetryPolicyFactory implements IRetryPolicyFactory {
-
-    @Override
-    public IRetryPolicy create(IActiveEntityEventsListener listener) {
-        return new InfiniteRetryPolicy(listener);
-    }
-
-}
diff --git a/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/active/ActiveNotificationHandler.java b/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/active/ActiveNotificationHandler.java
index 0d63bca..6b5cae2 100644
--- a/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/active/ActiveNotificationHandler.java
+++ b/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/active/ActiveNotificationHandler.java
@@ -54,7 +54,6 @@ public class ActiveNotificationHandler extends SingleThreadEventProcessor<Active
     public static final String ACTIVE_ENTITY_PROPERTY_NAME = "ActiveJob";
     private final Map<EntityId, IActiveEntityEventsListener> entityEventListeners;
     private final Map<JobId, EntityId> jobId2EntityId;
-    private boolean initialized = false;
     private boolean suspended = false;
 
     public ActiveNotificationHandler() {
@@ -223,19 +222,6 @@ public class ActiveNotificationHandler extends SingleThreadEventProcessor<Active
     }
 
     @Override
-    public boolean isInitialized() {
-        return initialized;
-    }
-
-    @Override
-    public void setInitialized(boolean initialized) throws HyracksDataException {
-        if (this.initialized) {
-            throw new RuntimeDataException(ErrorCode.DOUBLE_INITIALIZATION_OF_ACTIVE_NOTIFICATION_HANDLER);
-        }
-        this.initialized = initialized;
-    }
-
-    @Override
     public void recover() {
         LOGGER.info("Starting active recovery");
         for (IActiveEntityEventsListener listener : getEventListeners()) {
diff --git a/asterixdb/asterix-app/src/test/java/org/apache/asterix/test/active/ActiveEventsListenerTest.java b/asterixdb/asterix-app/src/test/java/org/apache/asterix/test/active/ActiveEventsListenerTest.java
index 3bfea56..c71e602 100644
--- a/asterixdb/asterix-app/src/test/java/org/apache/asterix/test/active/ActiveEventsListenerTest.java
+++ b/asterixdb/asterix-app/src/test/java/org/apache/asterix/test/active/ActiveEventsListenerTest.java
@@ -31,9 +31,7 @@ import java.util.concurrent.TimeUnit;
 import java.util.concurrent.atomic.AtomicInteger;
 
 import org.apache.asterix.active.ActivityState;
-import org.apache.asterix.active.CountRetryPolicyFactory;
 import org.apache.asterix.active.EntityId;
-import org.apache.asterix.active.InfiniteRetryPolicyFactory;
 import org.apache.asterix.active.NoRetryPolicyFactory;
 import org.apache.asterix.app.active.ActiveNotificationHandler;
 import org.apache.asterix.common.api.IClusterManagementWork.ClusterState;
@@ -68,6 +66,7 @@ import org.apache.hyracks.api.job.JobIdFactory;
 import org.apache.hyracks.api.job.JobStatus;
 import org.apache.hyracks.control.cc.ClusterControllerService;
 import org.apache.hyracks.control.cc.application.CCServiceContext;
+import org.apache.hyracks.util.CountRetryPolicy;
 import org.junit.After;
 import org.junit.Assert;
 import org.junit.Before;
@@ -148,7 +147,7 @@ public class ActiveEventsListenerTest {
         nodeControllers[1] = new TestNodeControllerActor(nodes[1], clusterController);
         listener = new TestEventsListener(clusterController, nodeControllers, jobIdFactory, entityId,
                 new ArrayList<>(allDatasets), statementExecutor, appCtx, hcc, locations,
-                new InfiniteRetryPolicyFactory());
+                x -> new CountRetryPolicy(1000));
         users = new TestUserActor[3];
         users[0] = newUser("Till", appCtx);
         users[1] = newUser("Mike", appCtx);
@@ -536,8 +535,7 @@ public class ActiveEventsListenerTest {
     public void testRecoveryFailureAfterOneAttemptCompilationFailure() throws Exception {
         handler.unregisterListener(listener);
         listener = new TestEventsListener(clusterController, nodeControllers, jobIdFactory, entityId,
-                new ArrayList<>(allDatasets), statementExecutor, appCtx, hcc, locations,
-                new CountRetryPolicyFactory(1));
+                new ArrayList<>(allDatasets), statementExecutor, appCtx, hcc, locations, x -> new CountRetryPolicy(1));
         testStartWhenStartSucceed();
         WaitForStateSubscriber tempFailSubscriber =
                 new WaitForStateSubscriber(listener, EnumSet.of(ActivityState.TEMPORARILY_FAILED));
@@ -580,8 +578,7 @@ public class ActiveEventsListenerTest {
     public void testRecoveryFailureAfterOneAttemptRuntimeFailure() throws Exception {
         handler.unregisterListener(listener);
         listener = new TestEventsListener(clusterController, nodeControllers, jobIdFactory, entityId,
-                new ArrayList<>(allDatasets), statementExecutor, appCtx, hcc, locations,
-                new CountRetryPolicyFactory(1));
+                new ArrayList<>(allDatasets), statementExecutor, appCtx, hcc, locations, x -> new CountRetryPolicy(1));
         testStartWhenStartSucceed();
         WaitForStateSubscriber tempFailSubscriber =
                 new WaitForStateSubscriber(listener, EnumSet.of(ActivityState.TEMPORARILY_FAILED));
@@ -1543,7 +1540,7 @@ public class ActiveEventsListenerTest {
             AlgebricksAbsolutePartitionConstraint locations = new AlgebricksAbsolutePartitionConstraint(nodes);
             additionalListeners[i] = listener = new TestEventsListener(clusterController, nodeControllers, jobIdFactory,
                     entityId, new ArrayList<>(allDatasets), statementExecutor, ccAppCtx, hcc, locations,
-                    new InfiniteRetryPolicyFactory());
+                    x -> new CountRetryPolicy(1000));
         }
         Action suspension = users[0].suspendAllActivities(handler);
         suspension.sync();