refactored and improved logging

Project: http://git-wip-us.apache.org/repos/asf/gora/repo
Commit: http://git-wip-us.apache.org/repos/asf/gora/commit/fd80478e
Tree: http://git-wip-us.apache.org/repos/asf/gora/tree/fd80478e
Diff: http://git-wip-us.apache.org/repos/asf/gora/diff/fd80478e

Branch: refs/heads/master
Commit: fd80478e376790856b399f472283e58c3969f8fa
Parents: 29a3f61
Author: Kevin Ratnasekera <djkevi...@yahoo.com>
Authored: Sun Jul 31 14:16:00 2016 +0530
Committer: Kevin Ratnasekera <djkevi...@yahoo.com>
Committed: Sun Jul 31 14:16:00 2016 +0530

----------------------------------------------------------------------
 .../gora/persistency/impl/PersistentBase.java   |  1 -
 .../mapreduce/TestPersistentSerialization.java  |  2 --
 .../jcache/store/JCacheCacheEntryListener.java  | 28 ++++++++++++++++++--
 .../store/JCacheCacheEntryListenerFactory.java  |  5 ++--
 .../gora/jcache/store/JCacheCacheLoader.java    |  5 ++--
 .../jcache/store/JCacheCacheLoaderFactory.java  |  4 +--
 .../gora/jcache/store/JCacheCacheWriter.java    |  5 ++--
 .../jcache/store/JCacheCacheWriterFactory.java  |  4 +--
 .../apache/gora/jcache/store/JCacheStore.java   | 24 ++++++++++++++++-
 9 files changed, 60 insertions(+), 18 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/gora/blob/fd80478e/gora-core/src/main/java/org/apache/gora/persistency/impl/PersistentBase.java
----------------------------------------------------------------------
diff --git 
a/gora-core/src/main/java/org/apache/gora/persistency/impl/PersistentBase.java 
b/gora-core/src/main/java/org/apache/gora/persistency/impl/PersistentBase.java
index 3d316b5..691684e 100644
--- 
a/gora-core/src/main/java/org/apache/gora/persistency/impl/PersistentBase.java
+++ 
b/gora-core/src/main/java/org/apache/gora/persistency/impl/PersistentBase.java
@@ -40,7 +40,6 @@ public abstract class PersistentBase extends 
SpecificRecordBase implements
 
   public PersistentBase() {
     __g__dirty = new byte[getFieldsCount()];
-    //__g__dirty = java.nio.ByteBuffer.wrap(new byte[getFieldsCount()]);
   }
 
   public abstract int getFieldsCount();

http://git-wip-us.apache.org/repos/asf/gora/blob/fd80478e/gora-core/src/test/java/org/apache/gora/mapreduce/TestPersistentSerialization.java
----------------------------------------------------------------------
diff --git 
a/gora-core/src/test/java/org/apache/gora/mapreduce/TestPersistentSerialization.java
 
b/gora-core/src/test/java/org/apache/gora/mapreduce/TestPersistentSerialization.java
index fee4460..141e9cf 100644
--- 
a/gora-core/src/test/java/org/apache/gora/mapreduce/TestPersistentSerialization.java
+++ 
b/gora-core/src/test/java/org/apache/gora/mapreduce/TestPersistentSerialization.java
@@ -144,8 +144,6 @@ public class TestPersistentSerialization {
     page2.getParsedContent().add(new StringBuffer("coo2"));
     page3.setParsedContent(new ArrayList<CharSequence>());
     page3.getParsedContent().add(new StringBuffer("coo3"));
-    //page2.setOutlinks(new HashMap<CharSequence, CharSequence>());
-    //page2.getOutlinks().put(new StringBuffer("a"), new StringBuffer("b"));
 
     TestIOUtils.testSerializeDeserialize(page1, page2, page3);
   }

http://git-wip-us.apache.org/repos/asf/gora/blob/fd80478e/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheEntryListener.java
----------------------------------------------------------------------
diff --git 
a/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheEntryListener.java
 
b/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheEntryListener.java
index 9284463..f7c9d36 100644
--- 
a/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheEntryListener.java
+++ 
b/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheEntryListener.java
@@ -18,17 +18,22 @@
 package org.apache.gora.jcache.store;
 
 import org.apache.gora.persistency.impl.PersistentBase;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
+import javax.cache.event.CacheEntryExpiredListener;
+import javax.cache.event.CacheEntryUpdatedListener;
 import javax.cache.event.CacheEntryCreatedListener;
+import javax.cache.event.CacheEntryRemovedListener;
 import javax.cache.event.CacheEntryEvent;
 import javax.cache.event.CacheEntryListenerException;
-import javax.cache.event.CacheEntryRemovedListener;
 import java.util.concurrent.ConcurrentSkipListSet;
 
 public class JCacheCacheEntryListener<K, T extends PersistentBase>
         implements CacheEntryCreatedListener<K, T>,
-        CacheEntryRemovedListener<K, T> {
+        CacheEntryRemovedListener<K, T>, CacheEntryUpdatedListener<K, T>, 
CacheEntryExpiredListener<K, T> {
 
+  private static final Logger LOG = 
LoggerFactory.getLogger(JCacheCacheEntryListener.class);
   private ConcurrentSkipListSet<K> cacheEntryList;
 
   public JCacheCacheEntryListener(ConcurrentSkipListSet cacheEntryList) {
@@ -40,6 +45,7 @@ public class JCacheCacheEntryListener<K, T extends 
PersistentBase>
           throws CacheEntryListenerException {
     for (CacheEntryEvent<? extends K, ? extends T> event : cacheEntryEvents) {
       cacheEntryList.add(event.getKey());
+      LOG.info("Cache entry added on key " + event.getKey().toString());
     }
   }
 
@@ -48,6 +54,24 @@ public class JCacheCacheEntryListener<K, T extends 
PersistentBase>
           throws CacheEntryListenerException {
     for (CacheEntryEvent<? extends K, ? extends T> event : cacheEntryEvents) {
       cacheEntryList.remove(event.getKey());
+      LOG.info("Cache entry removed on key " + event.getKey().toString());
+    }
+  }
+
+  @Override
+  public void onUpdated(Iterable<CacheEntryEvent<? extends K, ? extends T>> 
cacheEntryEvents)
+          throws CacheEntryListenerException {
+    for (CacheEntryEvent<? extends K, ? extends T> event : cacheEntryEvents) {
+      LOG.info("Cache entry updated set on key " + event.getKey().toString());
     }
   }
+
+  @Override
+  public void onExpired(Iterable<CacheEntryEvent<? extends K, ? extends T>> 
cacheEntryEvents)
+          throws CacheEntryListenerException {
+    for (CacheEntryEvent<? extends K, ? extends T> event : cacheEntryEvents) {
+      LOG.warn("Cache entry expired on key " + event.getKey().toString());
+    }
+  }
+
 }

http://git-wip-us.apache.org/repos/asf/gora/blob/fd80478e/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheEntryListenerFactory.java
----------------------------------------------------------------------
diff --git 
a/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheEntryListenerFactory.java
 
b/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheEntryListenerFactory.java
index 8525d2a..42b3c93 100644
--- 
a/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheEntryListenerFactory.java
+++ 
b/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheEntryListenerFactory.java
@@ -26,11 +26,12 @@ import javax.cache.configuration.Factory;
 public class JCacheCacheEntryListenerFactory <K,T extends PersistentBase>
         implements Factory<JCacheCacheEntryListener<K, T>> {
 
-  public static final long serialVersionUID = 201305101634L;
   private static final Logger LOG = 
LoggerFactory.getLogger(JCacheCacheEntryListenerFactory.class);
-  private JCacheCacheEntryListener<K, T> instance;
+  public static final long serialVersionUID = 201305101634L;
+  private transient JCacheCacheEntryListener<K, T> instance;
 
   public JCacheCacheEntryListenerFactory(JCacheCacheEntryListener<K, T> 
instance) {
+    LOG.info("JCache cache entry listener factory initialized successfully.");
     this.instance = instance;
   }
 

http://git-wip-us.apache.org/repos/asf/gora/blob/fd80478e/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheLoader.java
----------------------------------------------------------------------
diff --git 
a/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheLoader.java 
b/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheLoader.java
index 3371a3e..74e910a 100644
--- 
a/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheLoader.java
+++ 
b/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheLoader.java
@@ -19,9 +19,6 @@ package org.apache.gora.jcache.store;
 
 import org.apache.gora.persistency.impl.PersistentBase;
 import org.apache.gora.store.DataStore;
-import org.apache.gora.store.DataStoreFactory;
-import org.apache.gora.util.GoraException;
-import org.apache.hadoop.conf.Configuration;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -45,6 +42,7 @@ public class JCacheCacheLoader<K, T extends PersistentBase> 
implements CacheLoad
     T persistent = null;
     try {
       persistent = dataStore.get(key);
+      LOG.info("Loaded data bean from persistent datastore on key " + 
key.toString());
     } catch (CacheLoaderException ex) {
       throw ex;
     }
@@ -56,6 +54,7 @@ public class JCacheCacheLoader<K, T extends PersistentBase> 
implements CacheLoad
     Map<K, T> loaded = new HashMap<K, T>();
     for (K key : keys) {
       T persistent = dataStore.get(key);
+      LOG.info("Loaded data bean from persistent datastore on key " + 
key.toString());
       if (persistent != null) {
         loaded.put(key, persistent);
       }

http://git-wip-us.apache.org/repos/asf/gora/blob/fd80478e/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheLoaderFactory.java
----------------------------------------------------------------------
diff --git 
a/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheLoaderFactory.java
 
b/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheLoaderFactory.java
index cdbc2f1..b1f59d2 100644
--- 
a/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheLoaderFactory.java
+++ 
b/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheLoaderFactory.java
@@ -22,16 +22,16 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import javax.cache.configuration.Factory;
-import java.lang.reflect.Constructor;
 
 public class JCacheCacheLoaderFactory<K, T extends PersistentBase>
         implements Factory<JCacheCacheLoader<K,T>> {
 
-  public static final long serialVersionUID = 201305101626L;
   private static final Logger LOG = 
LoggerFactory.getLogger(JCacheCacheLoaderFactory.class);
+  public static final long serialVersionUID = 201305101626L;
   private transient JCacheCacheLoader<K, T> instance;
 
   public JCacheCacheLoaderFactory(JCacheCacheLoader<K, T> instance) {
+    LOG.info("JCache cache entry loader factory initialized successfully.");
     this.instance = instance;
   }
 

http://git-wip-us.apache.org/repos/asf/gora/blob/fd80478e/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheWriter.java
----------------------------------------------------------------------
diff --git 
a/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheWriter.java 
b/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheWriter.java
index 7329421..e9c4373 100644
--- 
a/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheWriter.java
+++ 
b/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheWriter.java
@@ -19,9 +19,6 @@ package org.apache.gora.jcache.store;
 
 import org.apache.gora.persistency.impl.PersistentBase;
 import org.apache.gora.store.DataStore;
-import org.apache.gora.store.DataStoreFactory;
-import org.apache.gora.util.GoraException;
-import org.apache.hadoop.conf.Configuration;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -44,6 +41,7 @@ public class JCacheCacheWriter<K, T extends PersistentBase> 
implements CacheWrit
   public void write(Cache.Entry<? extends K,
           ? extends T> entry) throws CacheWriterException {
     dataStore.put(entry.getKey(), entry.getValue());
+    LOG.info("Written data bean to persistent datastore on key " + 
entry.getKey().toString());
   }
 
   @Override
@@ -59,6 +57,7 @@ public class JCacheCacheWriter<K, T extends PersistentBase> 
implements CacheWrit
   @Override
   public void delete(Object key) throws CacheWriterException {
     dataStore.delete((K) key);
+    LOG.info("Deleted data bean from persistent datastore on key " + 
key.toString());
   }
 
   @Override

http://git-wip-us.apache.org/repos/asf/gora/blob/fd80478e/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheWriterFactory.java
----------------------------------------------------------------------
diff --git 
a/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheWriterFactory.java
 
b/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheWriterFactory.java
index 29fa3fc..5743b5a 100644
--- 
a/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheWriterFactory.java
+++ 
b/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheCacheWriterFactory.java
@@ -22,15 +22,15 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import javax.cache.configuration.Factory;
-import java.lang.reflect.Constructor;
 
 public class JCacheCacheWriterFactory<K, T extends PersistentBase> implements 
Factory<JCacheCacheWriter<K,T>> {
 
-  public static final long serialVersionUID = 201205101621L;
   private static final Logger LOG = 
LoggerFactory.getLogger(JCacheCacheWriterFactory.class);
+  public static final long serialVersionUID = 201205101621L;
   private transient JCacheCacheWriter<K,T> instance;
 
   public JCacheCacheWriterFactory(JCacheCacheWriter<K,T> instance) {
+    LOG.info("JCache entry writer factory initialized successfully.");
     this.instance = instance;
   }
 

http://git-wip-us.apache.org/repos/asf/gora/blob/fd80478e/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheStore.java
----------------------------------------------------------------------
diff --git 
a/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheStore.java 
b/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheStore.java
index 1440644..4838cfe 100644
--- a/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheStore.java
+++ b/gora-jcache/src/main/java/org/apache/gora/jcache/store/JCacheStore.java
@@ -32,6 +32,7 @@ import com.hazelcast.cache.ICache;
 import com.hazelcast.config.CacheConfig;
 import com.hazelcast.config.EvictionConfig;
 import com.hazelcast.config.EvictionPolicy;
+import com.hazelcast.config.InMemoryFormat;
 import com.hazelcast.core.Hazelcast;
 import com.hazelcast.core.HazelcastInstance;
 import com.hazelcast.core.Member;
@@ -86,6 +87,10 @@ public class JCacheStore<K,T extends PersistentBase> extends 
DataStoreBase<K,T>
   private static final String JCACHE_CREATED_EXPIRY_IDENTIFIER = "CREATED";
   private static final String JCACHE_MODIFIED_EXPIRY_IDENTIFIER = "MODIFIED";
   private static final String JCACHE_TOUCHED_EXPIRY_IDENTIFIER = "TOUCHED";
+  private static final String HAZELCAST_CACHE_IN_MEMORY_FORMAT_PROPERTY_KEY = 
"jcache.cache.inmemory.format";
+  private static final String 
HAZELCAST_CACHE_BINARY_IN_MEMORY_FORMAT_IDENTIFIER = "BINARY";
+  private static final String 
HAZELCAST_CACHE_OBJECT_IN_MEMORY_FORMAT_IDENTIFIER = "OBJECT";
+  private static final String 
HAZELCAST_CACHE_NATIVE_IN_MEMORY_FORMAT_IDENTIFIER = "NATIVE";
   private String goraCacheNamespace = GORA_DEFAULT_JCACHE_NAMESPACE;
   private static final Logger LOG = LoggerFactory.getLogger(JCacheStore.class);
   private DataStore<K, T> persistentDataStore;
@@ -172,6 +177,14 @@ public class JCacheStore<K,T extends PersistentBase> 
extends DataStoreBase<K,T>
         ));
       }
     }
+    if (properties.getProperty(HAZELCAST_CACHE_IN_MEMORY_FORMAT_PROPERTY_KEY) 
!= null) {
+      String inMemoryFormat = 
properties.getProperty(HAZELCAST_CACHE_IN_MEMORY_FORMAT_PROPERTY_KEY);
+      if 
(inMemoryFormat.equals(HAZELCAST_CACHE_BINARY_IN_MEMORY_FORMAT_IDENTIFIER) ||
+              
inMemoryFormat.equals(HAZELCAST_CACHE_OBJECT_IN_MEMORY_FORMAT_IDENTIFIER) ||
+              
inMemoryFormat.equals(HAZELCAST_CACHE_NATIVE_IN_MEMORY_FORMAT_IDENTIFIER)) {
+        cacheConfig.setInMemoryFormat(InMemoryFormat.valueOf(inMemoryFormat));
+      }
+    }
     cacheConfig.setCacheLoaderFactory(JCacheCacheFactoryBuilder
             .factoryOfCacheLoader(this.persistentDataStore));
     cacheConfig.setCacheWriterFactory(JCacheCacheFactoryBuilder
@@ -185,6 +198,7 @@ public class JCacheStore<K,T extends PersistentBase> 
extends DataStoreBase<K,T>
     );
     cache = manager.createCache(persistentClass.getSimpleName(),
             cacheConfig).unwrap(ICache.class);
+    LOG.info("JCache Gora datastore initialized successfully.");
   }
 
   @Override
@@ -199,12 +213,16 @@ public class JCacheStore<K,T extends PersistentBase> 
extends DataStoreBase<K,T>
               cacheConfig).unwrap(ICache.class);
     }
     persistentDataStore.createSchema();
+    LOG.info("Created schema on persistent store and initialized cache for 
persistent bean "
+            + super.getPersistentClass().getSimpleName());
   }
 
   @Override
   public void deleteSchema() {
     manager.destroyCache(super.getPersistentClass().getSimpleName());
     persistentDataStore.deleteSchema();
+    LOG.info("Deleted schema on persistent store and destroyed cache for 
persistent bean "
+            + super.getPersistentClass().getSimpleName());
   }
 
   @Override
@@ -283,8 +301,10 @@ public class JCacheStore<K,T extends PersistentBase> 
extends DataStoreBase<K,T>
           }
         }
       }
+      LOG.info("JCache Gora datastore deleled " + deletedRows + " rows from 
Persistent datastore");
       return deletedRows;
     } catch (Exception e) {
+      LOG.error("Exception occured while deleting entries from JCache Gora 
datastore. Hence returning 0");
       return 0;
     }
   }
@@ -308,7 +328,7 @@ public class JCacheStore<K,T extends PersistentBase> 
extends DataStoreBase<K,T>
     try {
       cacheEntrySubList = (ConcurrentSkipListSet<K>) 
cacheEntryList.subSet(startKey, true, endKey, true);
     } catch (NullPointerException npe) {
-      LOG.error("NPE occurred while executing the query for JCacheStore");
+      LOG.error("NPE occurred while executing the query for JCacheStore. Hence 
returning empty entry set.");
       return new JCacheResult<>(this, query, new ConcurrentSkipListSet<K>());
     }
     return new JCacheResult<>(this, query, cacheEntrySubList);
@@ -350,6 +370,7 @@ public class JCacheStore<K,T extends PersistentBase> 
extends DataStoreBase<K,T>
   @Override
   public void flush() {
     persistentDataStore.flush();
+    LOG.info("JCache Gora datastore flushed successfully.");
   }
 
   @Override
@@ -362,6 +383,7 @@ public class JCacheStore<K,T extends PersistentBase> 
extends DataStoreBase<K,T>
       manager.close();
     }
     persistentDataStore.close();
+    LOG.info("JCache Gora datastore destroyed successfully.");
   }
 
 }

Reply via email to