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

dschneider pushed a commit to branch feature/GEODE-3781
in repository https://gitbox.apache.org/repos/asf/geode.git


The following commit(s) were added to refs/heads/feature/GEODE-3781 by this 
push:
     new 796e81d  added sync on event counts
796e81d is described below

commit 796e81d4733d744a438b567b780acca18064be20
Author: Darrel Schneider <dschnei...@pivotal.io>
AuthorDate: Mon Oct 30 11:06:42 2017 -0700

    added sync on event counts
---
 .../apache/geode/connectors/jdbc/JDBCAsyncWriter.java    | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)

diff --git 
a/geode-connectors/src/main/java/org/apache/geode/connectors/jdbc/JDBCAsyncWriter.java
 
b/geode-connectors/src/main/java/org/apache/geode/connectors/jdbc/JDBCAsyncWriter.java
index c394d12..5ddeda7 100644
--- 
a/geode-connectors/src/main/java/org/apache/geode/connectors/jdbc/JDBCAsyncWriter.java
+++ 
b/geode-connectors/src/main/java/org/apache/geode/connectors/jdbc/JDBCAsyncWriter.java
@@ -47,7 +47,7 @@ public class JDBCAsyncWriter implements AsyncEventListener {
 
   @Override
   public boolean processEvents(List<AsyncEvent> events) {
-    totalEvents += events.size();
+    changeTotalEvents(events.size());
     // TODO: have a better API that lets you do this
     DefaultQuery.setPdxReadSerialized(true);
     try {
@@ -58,7 +58,8 @@ public class JDBCAsyncWriter implements AsyncEventListener {
           PdxInstance value = (PdxInstance) event.getDeserializedValue();
           logger.info("AsyncEventListener event : " + event);
           this.manager.write(event.getRegion(), event.getOperation(), 
event.getKey(), value);
-          successfulEvents += 1;
+          
+          changeSuccessfulEvents(1);
         } catch (RuntimeException ex) {
           // TODO improve the following logging
           logger.error("Exception processing event " + event, ex);
@@ -76,11 +77,16 @@ public class JDBCAsyncWriter implements AsyncEventListener {
     this.manager = new JDBCManager(config);
   };
 
-  public long getTotalEvents() {
+  private synchronized void changeTotalEvents(long delta) {
+    this.totalEvents += delta;
+  }
+  public synchronized long getTotalEvents() {
     return this.totalEvents;
   }
-
-  public long getSuccessfulEvents() {
+  private synchronized void changeSuccessfulEvents(long delta) {
+    this.successfulEvents += delta;
+  }
+  public synchronized long getSuccessfulEvents() {
     return this.successfulEvents;
   }
 }

-- 
To stop receiving notification emails like this one, please contact
['"commits@geode.apache.org" <commits@geode.apache.org>'].

Reply via email to