Change in asterixdb[master]: Enable Feed Changes to work with BAD project

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

Change subject: Enable Feed Changes to work with BAD project
..


Enable Feed Changes to work with BAD project

Extracts the ActiveListener
Enables listeners to survive after job executions

Change-Id: Ib62184b67aff564475ef9b58790ff96409195b77
Reviewed-on: https://asterix-gerrit.ics.uci.edu/1524
Sonar-Qube: Jenkins 
Tested-by: Jenkins 
Integration-Tests: Jenkins 
Reviewed-by: abdullah alamoudi 
---
M 
asterixdb/asterix-active/src/main/java/org/apache/asterix/active/ActiveJobNotificationHandler.java
A 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/feed/management/ActiveEntityEventsListener.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/feed/management/FeedEventsListener.java
3 files changed, 68 insertions(+), 26 deletions(-)

Approvals:
  abdullah alamoudi: Looks good to me, approved
  Jenkins: Verified; No violations found; Verified

Objections:
  Jenkins: Violations found



diff --git 
a/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/ActiveJobNotificationHandler.java
 
b/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/ActiveJobNotificationHandler.java
index e4491bd..d7998f8 100644
--- 
a/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/ActiveJobNotificationHandler.java
+++ 
b/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/ActiveJobNotificationHandler.java
@@ -55,14 +55,15 @@
 if (entityId != null) {
 IActiveEntityEventsListener listener = 
entityEventListeners.get(entityId);
 LOGGER.log(Level.FINER, "Next event is of type " + 
event.getEventKind());
-LOGGER.log(Level.FINER, "Notifying the listener");
-listener.notify(event);
 if (event.getEventKind() == Kind.JOB_FINISHED) {
 LOGGER.log(Level.FINER, "Removing the job");
 jobId2ActiveJobInfos.remove(event.getJobId());
-LOGGER.log(Level.FINER, "Removing the listener since 
it is not active anymore");
-entityEventListeners.remove(listener.getEntityId());
 }
+if (listener != null) {
+LOGGER.log(Level.FINER, "Notifying the listener");
+listener.notify(event);
+}
+
 } else {
 LOGGER.log(Level.SEVERE, "Entity not found for received 
message for job " + event.getJobId());
 }
@@ -75,6 +76,11 @@
 LOGGER.log(Level.INFO, "Stopped " + 
ActiveJobNotificationHandler.class.getSimpleName());
 }
 
+public synchronized void removeListener(IActiveEntityEventsListener 
listener) throws HyracksDataException {
+LOGGER.log(Level.FINER, "Removing the listener since it is not active 
anymore");
+unregisterListener(listener);
+}
+
 public IActiveEntityEventsListener getActiveEntityListener(EntityId 
entityId) {
 if (DEBUG) {
 LOGGER.log(Level.WARNING, "getActiveEntityListener(EntityId 
entityId) was called with entity " + entityId);
diff --git 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/feed/management/ActiveEntityEventsListener.java
 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/feed/management/ActiveEntityEventsListener.java
new file mode 100644
index 000..365c3ce
--- /dev/null
+++ 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/feed/management/ActiveEntityEventsListener.java
@@ -0,0 +1,55 @@
+/*
+ * 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.external.feed.management;
+
+import java.util.List;
+
+import org.apache.asterix.active.ActivityState;
+import org.apache.asterix.active.EntityId;
+import org.apache.asterix.active.IActiveEntityEventsListener;
+import 

Change in asterixdb[master]: Enable Feed Changes to work with BAD project

2017-03-01 Thread abdullah alamoudi (Code Review)
abdullah alamoudi has posted comments on this change.

Change subject: Enable Feed Changes to work with BAD project
..


Patch Set 3: Code-Review+2

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

Gerrit-MessageType: comment
Gerrit-Change-Id: Ib62184b67aff564475ef9b58790ff96409195b77
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Ian Maxon 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 
Gerrit-Reviewer: abdullah alamoudi 
Gerrit-HasComments: No


Change in asterixdb[master]: Enable Feed Changes to work with BAD project

2017-02-24 Thread Jenkins (Code Review)
Jenkins has posted comments on this change.

Change subject: Enable Feed Changes to work with BAD project
..


Patch Set 3: Integration-Tests+1

Integration Tests Successful

https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-integration-tests/1995/ 
: SUCCESS

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

Gerrit-MessageType: comment
Gerrit-Change-Id: Ib62184b67aff564475ef9b58790ff96409195b77
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Ian Maxon 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 
Gerrit-Reviewer: abdullah alamoudi 
Gerrit-HasComments: No


Change in asterixdb[master]: Enable Feed Changes to work with BAD project

2017-02-24 Thread Jenkins (Code Review)
Jenkins has posted comments on this change.

Change subject: Enable Feed Changes to work with BAD project
..


Patch Set 3:

Integration Tests Started 
https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-integration-tests/1995/

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

Gerrit-MessageType: comment
Gerrit-Change-Id: Ib62184b67aff564475ef9b58790ff96409195b77
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 
Gerrit-Reviewer: abdullah alamoudi 
Gerrit-HasComments: No


Change in asterixdb[master]: Enable Feed Changes to work with BAD project

2017-02-24 Thread Jenkins (Code Review)
Jenkins has posted comments on this change.

Change subject: Enable Feed Changes to work with BAD project
..


Patch Set 3: Integration-Tests-1

Integration Tests Timed Out

https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-integration-tests/1986/ 
: ABORTED

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

Gerrit-MessageType: comment
Gerrit-Change-Id: Ib62184b67aff564475ef9b58790ff96409195b77
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 
Gerrit-Reviewer: abdullah alamoudi 
Gerrit-HasComments: No


Change in asterixdb[master]: Enable Feed Changes to work with BAD project

2017-02-23 Thread Jenkins (Code Review)
Jenkins has posted comments on this change.

Change subject: Enable Feed Changes to work with BAD project
..


Patch Set 3: BAD-1

BAD Compatibility Tests Failed

https://asterix-jenkins.ics.uci.edu/job/asterixbad-compat/621/ : FAILURE

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

Gerrit-MessageType: comment
Gerrit-Change-Id: Ib62184b67aff564475ef9b58790ff96409195b77
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 
Gerrit-Reviewer: abdullah alamoudi 
Gerrit-HasComments: No


Change in asterixdb[master]: Enable Feed Changes to work with BAD project

2017-02-23 Thread Jenkins (Code Review)
Jenkins has posted comments on this change.

Change subject: Enable Feed Changes to work with BAD project
..


Patch Set 3:

BAD Compatibility Tests Started 
https://asterix-jenkins.ics.uci.edu/job/asterixbad-compat/621/

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

Gerrit-MessageType: comment
Gerrit-Change-Id: Ib62184b67aff564475ef9b58790ff96409195b77
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 
Gerrit-Reviewer: abdullah alamoudi 
Gerrit-HasComments: No


Change in asterixdb[master]: Enable Feed Changes to work with BAD project

2017-02-23 Thread Jenkins (Code Review)
Jenkins has posted comments on this change.

Change subject: Enable Feed Changes to work with BAD project
..


Patch Set 3:

Integration Tests Started 
https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-integration-tests/1986/

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

Gerrit-MessageType: comment
Gerrit-Change-Id: Ib62184b67aff564475ef9b58790ff96409195b77
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 
Gerrit-Reviewer: abdullah alamoudi 
Gerrit-HasComments: No


Change in asterixdb[master]: Enable Feed Changes to work with BAD project

2017-02-23 Thread Jenkins (Code Review)
Jenkins has posted comments on this change.

Change subject: Enable Feed Changes to work with BAD project
..


Patch Set 3:

Build Started 
https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-notopic/4420/

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

Gerrit-MessageType: comment
Gerrit-Change-Id: Ib62184b67aff564475ef9b58790ff96409195b77
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 
Gerrit-Reviewer: abdullah alamoudi 
Gerrit-HasComments: No


Change in asterixdb[master]: Enable Feed Changes to work with BAD project

2017-02-23 Thread abdullah alamoudi (Code Review)
abdullah alamoudi has posted comments on this change.

Change subject: Enable Feed Changes to work with BAD project
..


Patch Set 3:

Looks good to me. will +2 after tests pass

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

Gerrit-MessageType: comment
Gerrit-Change-Id: Ib62184b67aff564475ef9b58790ff96409195b77
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 
Gerrit-Reviewer: abdullah alamoudi 
Gerrit-HasComments: No


Change in asterixdb[master]: Enable Feed Changes to work with BAD project

2017-02-23 Thread Steven Jacobs (Code Review)
Hello Jenkins,

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

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

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

Change subject: Enable Feed Changes to work with BAD project
..

Enable Feed Changes to work with BAD project

Extracts the ActiveListener
Enables listeners to survive after job executions

Change-Id: Ib62184b67aff564475ef9b58790ff96409195b77
---
M 
asterixdb/asterix-active/src/main/java/org/apache/asterix/active/ActiveJobNotificationHandler.java
A 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/feed/management/ActiveEntityEventsListener.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/feed/management/FeedEventsListener.java
3 files changed, 68 insertions(+), 26 deletions(-)


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

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


Change in asterixdb[master]: Enable Feed Changes to work with BAD project

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

Change subject: Enable Feed Changes to work with BAD project
..


Patch Set 2:

(1 comment)

https://asterix-gerrit.ics.uci.edu/#/c/1524/2/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/IActiveEntityEventsListener.java
File 
asterixdb/asterix-active/src/main/java/org/apache/asterix/active/IActiveEntityEventsListener.java:

PS2, Line 47: boolean isRepeatable();
> Who call this now?
Good point. After your suggestions, this is no longer needed. It's taken out in 
the new patchset.


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

Gerrit-MessageType: comment
Gerrit-Change-Id: Ib62184b67aff564475ef9b58790ff96409195b77
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 
Gerrit-Reviewer: abdullah alamoudi 
Gerrit-HasComments: Yes


Change in asterixdb[master]: Enable Feed Changes to work with BAD project

2017-02-23 Thread abdullah alamoudi (Code Review)
abdullah alamoudi has posted comments on this change.

Change subject: Enable Feed Changes to work with BAD project
..


Patch Set 2:

(1 comment)

https://asterix-gerrit.ics.uci.edu/#/c/1524/2/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/IActiveEntityEventsListener.java
File 
asterixdb/asterix-active/src/main/java/org/apache/asterix/active/IActiveEntityEventsListener.java:

PS2, Line 47: boolean isRepeatable();
Who call this now?
Seems like no one calls it in asterixdb and doesn't seem to fit here. Can we 
remove it? why not?


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

Gerrit-MessageType: comment
Gerrit-Change-Id: Ib62184b67aff564475ef9b58790ff96409195b77
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 
Gerrit-Reviewer: abdullah alamoudi 
Gerrit-HasComments: Yes


Change in asterixdb[master]: Enable Feed Changes to work with BAD project

2017-02-23 Thread Jenkins (Code Review)
Jenkins has posted comments on this change.

Change subject: Enable Feed Changes to work with BAD project
..


Patch Set 2: Integration-Tests-1

Integration Tests Failed

https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-integration-tests/1982/ 
: UNSTABLE

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

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


Change in asterixdb[master]: Enable Feed Changes to work with BAD project

2017-02-23 Thread Jenkins (Code Review)
Jenkins has posted comments on this change.

Change subject: Enable Feed Changes to work with BAD project
..


Patch Set 2: BAD-1

BAD Compatibility Tests Failed

https://asterix-jenkins.ics.uci.edu/job/asterixbad-compat/617/ : FAILURE

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

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


Change in asterixdb[master]: Enable Feed Changes to work with BAD project

2017-02-23 Thread Jenkins (Code Review)
Jenkins has posted comments on this change.

Change subject: Enable Feed Changes to work with BAD project
..


Patch Set 2:

BAD Compatibility Tests Started 
https://asterix-jenkins.ics.uci.edu/job/asterixbad-compat/617/

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

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


Change in asterixdb[master]: Enable Feed Changes to work with BAD project

2017-02-23 Thread Jenkins (Code Review)
Jenkins has posted comments on this change.

Change subject: Enable Feed Changes to work with BAD project
..


Patch Set 2:

Integration Tests Started 
https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-integration-tests/1982/

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

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


Change in asterixdb[master]: Enable Feed Changes to work with BAD project

2017-02-23 Thread Jenkins (Code Review)
Jenkins has posted comments on this change.

Change subject: Enable Feed Changes to work with BAD project
..


Patch Set 2:

Build Started 
https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-notopic/4411/

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

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


Change in asterixdb[master]: Enable Feed Changes to work with BAD project

2017-02-23 Thread Jenkins (Code Review)
Jenkins has posted comments on this change.

Change subject: Enable Feed Changes to work with BAD project
..


Patch Set 1: Integration-Tests-1

Integration Tests Failed

https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-integration-tests/1978/ 
: UNSTABLE

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

Gerrit-MessageType: comment
Gerrit-Change-Id: Ib62184b67aff564475ef9b58790ff96409195b77
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 
Gerrit-Reviewer: abdullah alamoudi 
Gerrit-HasComments: No


Change in asterixdb[master]: Enable Feed Changes to work with BAD project

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

Change subject: Enable Feed Changes to work with BAD project
..


Patch Set 1:

(3 comments)

I reorganized things to meet the suggestions. Take a look at the new patchset.

https://asterix-gerrit.ics.uci.edu/#/c/1524/1/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/ActiveJobNotificationHandler.java
File 
asterixdb/asterix-active/src/main/java/org/apache/asterix/active/ActiveJobNotificationHandler.java:

PS1, Line 56: er listener = e
> what if there was no listener. this will cause a null pointer exception
Done


PS1, Line 60: if (event.getEventKind() == Kind.JOB_FINISHED && 
!listener.isRepeatable()
> Let's remove the block completely and the listener can remove itself when n
Done


PS1, Line 75: removeJob
> maybe rename to remove job and listener?
Done


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

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


Change in asterixdb[master]: Enable Feed Changes to work with BAD project

2017-02-23 Thread abdullah alamoudi (Code Review)
abdullah alamoudi has posted comments on this change.

Change subject: Enable Feed Changes to work with BAD project
..


Patch Set 1:

(3 comments)

Let's think of the case where there are no listeners, Should the job be 
removed? What if it is a repeatable job? can the job be registered another time?

The only reason we register that job through the job lifecycle listener is that 
we don't have the job Id yet when we have the active entity and listener

https://asterix-gerrit.ics.uci.edu/#/c/1524/1/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/ActiveJobNotificationHandler.java
File 
asterixdb/asterix-active/src/main/java/org/apache/asterix/active/ActiveJobNotificationHandler.java:

PS1, Line 56: er listener = e
what if there was no listener. this will cause a null pointer exception


PS1, Line 60: if (event.getEventKind() == Kind.JOB_FINISHED && 
!listener.isRepeatable()
Let's remove the block completely and the listener can remove itself when 
notified


PS1, Line 75: removeJob
maybe rename to remove job and listener?

make synchronized and then call unregisterListener from inside the method. also 
make the two maps concurrent:
this.jobId2ActiveJobInfos = new HashMap<>();
this.entityEventListeners = new HashMap<>()

Can you also create a JIRA issue to create unit tests for this class? seems too 
important to get right and doesn't have unit tests that cover corner cases


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

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


Change in asterixdb[master]: Enable Feed Changes to work with BAD project

2017-02-23 Thread Jenkins (Code Review)
Jenkins has posted comments on this change.

Change subject: Enable Feed Changes to work with BAD project
..


Patch Set 1: BAD-1

BAD Compatibility Tests Failed

https://asterix-jenkins.ics.uci.edu/job/asterixbad-compat/613/ : FAILURE

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

Gerrit-MessageType: comment
Gerrit-Change-Id: Ib62184b67aff564475ef9b58790ff96409195b77
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 
Gerrit-Reviewer: abdullah alamoudi 
Gerrit-HasComments: No


Change in asterixdb[master]: Enable Feed Changes to work with BAD project

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

Change subject: Enable Feed Changes to work with BAD project
..


Patch Set 1:

> This change looks good to me. One general comment about this
 > change. It seems the repeatable flag is not used on the AsterixDB
 > (probably only for now). I guess that serves the BAD side only?

Yes, basically the idea is as follows: There can be active entities that don't 
want their listeners to be automatically deleted just because the job is over 
(e.g. because they want to run another time). Channels and Procedures both fit 
into this category

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

Gerrit-MessageType: comment
Gerrit-Change-Id: Ib62184b67aff564475ef9b58790ff96409195b77
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 
Gerrit-Reviewer: abdullah alamoudi 
Gerrit-HasComments: No


Change in asterixdb[master]: Enable Feed Changes to work with BAD project

2017-02-23 Thread Xikui Wang (Code Review)
Xikui Wang has posted comments on this change.

Change subject: Enable Feed Changes to work with BAD project
..


Patch Set 1:

This change looks good to me. One general comment about this change. It seems 
the repeatable flag is not used on the AsterixDB (probably only for now). I 
guess that serves the BAD side only?

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

Gerrit-MessageType: comment
Gerrit-Change-Id: Ib62184b67aff564475ef9b58790ff96409195b77
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 
Gerrit-Reviewer: abdullah alamoudi 
Gerrit-HasComments: No


Change in asterixdb[master]: Enable Feed Changes to work with BAD project

2017-02-23 Thread Jenkins (Code Review)
Jenkins has posted comments on this change.

Change subject: Enable Feed Changes to work with BAD project
..


Patch Set 1:

Integration Tests Started 
https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-integration-tests/1978/

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

Gerrit-MessageType: comment
Gerrit-Change-Id: Ib62184b67aff564475ef9b58790ff96409195b77
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 
Gerrit-Reviewer: abdullah alamoudi 
Gerrit-HasComments: No


Change in asterixdb[master]: Enable Feed Changes to work with BAD project

2017-02-23 Thread Jenkins (Code Review)
Jenkins has posted comments on this change.

Change subject: Enable Feed Changes to work with BAD project
..


Patch Set 1:

Build Started 
https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-notopic/4401/

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

Gerrit-MessageType: comment
Gerrit-Change-Id: Ib62184b67aff564475ef9b58790ff96409195b77
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 
Gerrit-Reviewer: abdullah alamoudi 
Gerrit-HasComments: No


Change in asterixdb[master]: Enable Feed Changes to work with BAD project

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

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

Change subject: Enable Feed Changes to work with BAD project
..

Enable Feed Changes to work with BAD project

Extracts the ActiveListener
Enables listeners to survive after job executions

Change-Id: Ib62184b67aff564475ef9b58790ff96409195b77
---
M 
asterixdb/asterix-active/src/main/java/org/apache/asterix/active/ActiveJobNotificationHandler.java
M 
asterixdb/asterix-active/src/main/java/org/apache/asterix/active/IActiveEntityEventsListener.java
A 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/feed/management/ActiveEntityEventsListener.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/feed/management/FeedEventsListener.java
4 files changed, 78 insertions(+), 27 deletions(-)


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

diff --git 
a/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/ActiveJobNotificationHandler.java
 
b/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/ActiveJobNotificationHandler.java
index e4491bd..eba0fee 100644
--- 
a/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/ActiveJobNotificationHandler.java
+++ 
b/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/ActiveJobNotificationHandler.java
@@ -57,11 +57,8 @@
 LOGGER.log(Level.FINER, "Next event is of type " + 
event.getEventKind());
 LOGGER.log(Level.FINER, "Notifying the listener");
 listener.notify(event);
-if (event.getEventKind() == Kind.JOB_FINISHED) {
-LOGGER.log(Level.FINER, "Removing the job");
-jobId2ActiveJobInfos.remove(event.getJobId());
-LOGGER.log(Level.FINER, "Removing the listener since 
it is not active anymore");
-entityEventListeners.remove(listener.getEntityId());
+if (event.getEventKind() == Kind.JOB_FINISHED && 
!listener.isRepeatable()) {
+removeJob(event.getJobId(), listener);
 }
 } else {
 LOGGER.log(Level.SEVERE, "Entity not found for received 
message for job " + event.getJobId());
@@ -75,6 +72,13 @@
 LOGGER.log(Level.INFO, "Stopped " + 
ActiveJobNotificationHandler.class.getSimpleName());
 }
 
+public void removeJob(JobId hyracksJobId, IActiveEntityEventsListener 
listener) {
+LOGGER.log(Level.FINER, "Removing the job");
+jobId2ActiveJobInfos.remove(hyracksJobId);
+LOGGER.log(Level.FINER, "Removing the listener since it is not active 
anymore");
+entityEventListeners.remove(listener.getEntityId());
+}
+
 public IActiveEntityEventsListener getActiveEntityListener(EntityId 
entityId) {
 if (DEBUG) {
 LOGGER.log(Level.WARNING, "getActiveEntityListener(EntityId 
entityId) was called with entity " + entityId);
diff --git 
a/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/IActiveEntityEventsListener.java
 
b/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/IActiveEntityEventsListener.java
index ee8e776..7f3554a 100644
--- 
a/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/IActiveEntityEventsListener.java
+++ 
b/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/IActiveEntityEventsListener.java
@@ -41,6 +41,12 @@
 ActivityState getState();
 
 /**
+ * @return whether the listener is for a repeatable job
+ * Repeatable jobs won't delete listeners after job is finished
+ */
+boolean isRepeatable();
+
+/**
  * get a subscriber that waits till state has been reached.
  *
  * @param state
diff --git 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/feed/management/ActiveEntityEventsListener.java
 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/feed/management/ActiveEntityEventsListener.java
new file mode 100644
index 000..9472ea7
--- /dev/null
+++ 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/feed/management/ActiveEntityEventsListener.java
@@ -0,0 +1,61 @@
+/*
+ * 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
+ *