You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@atlas.apache.org by Jeff Hagelberg <jn...@us.ibm.com> on 2017/01/20 20:30:04 UTC

Re: Review Request 55443: ATLAS-1387 : Compiled Query Cache

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/55443/
-----------------------------------------------------------

(Updated Jan. 20, 2017, 8:30 p.m.)


Review request for atlas, David Kantor and Neeru Gupta.


Bugs: ATLAS-1387
    https://issues.apache.org/jira/browse/ATLAS-1387


Repository: atlas


Description
-------

Adds a compiled query cache to Atlas.  This avoids the overhead of parsing and translating DSL queries that have been previously executed.


Diffs
-----

  common/pom.xml 0226541b2dd73e8a01f050982cb8b37f5fed9cab 
  common/src/main/java/org/apache/atlas/utils/LruCache.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/utils/LruMap.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/utils/LruMapEntryUsageTracker.java PRE-CREATION 
  common/src/test/java/org/apache/atlas/utils/LruCacheTest.java PRE-CREATION 
  common/src/test/java/org/apache/atlas/utils/LruMapEntryUsageTrackerTest.java PRE-CREATION 
  distro/src/conf/atlas-application.properties 6fa066b666d7948088f57805a8e2d22bf904aade 
  repository/src/main/java/org/apache/atlas/discovery/graph/GraphBackedDiscoveryService.java b637f90967850319910c17f9017e62f68d14f546 
  repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java 6655085ee11c94addca1564cf77bbdb001c4586f 
  repository/src/main/java/org/apache/atlas/util/CompiledQueryCacheKey.java PRE-CREATION 
  repository/src/main/java/org/apache/atlas/util/NoopGremlinQuery.java PRE-CREATION 
  repository/src/main/scala/org/apache/atlas/query/QueryProcessor.scala 5693c9ecc1a96154a8b0ac48256e5074dc041c5f 
  repository/src/test/java/org/apache/atlas/util/CompiledQueryCacheKeyTest.java PRE-CREATION 

Diff: https://reviews.apache.org/r/55443/diff/


Testing
-------

Ran all atlas tests, no regressions found.  There were some tests that failed both with and without these changes.


Thanks,

Jeff Hagelberg


Re: Review Request 55443: ATLAS-1387 : Compiled Query Cache

Posted by Jeff Hagelberg <jn...@us.ibm.com>.

> On Jan. 23, 2017, 7:29 p.m., Neeru Gupta wrote:
> > common/src/main/java/org/apache/atlas/utils/LruCache.java, line 127
> > <https://reviews.apache.org/r/55443/diff/3/?file=1610867#file1610867line127>
> >
> >     Do we need to reap the values for Get operation? Reaping needs to acquire a write lock. If lock gets acquired by another thread while isReapNeeded check is performd, then getting value from cache may get blocked.
> >     I think we should not reap values while reading from map to avoid delay in providing the cached value. If we do, then write lock should be held until reaping is done.

I don't think reaping should be avoided during get() -- if the user wants to have reap enabled, then we need to do the reaping when it is required.  If the get() does not trigger the reaping, something else will, and things will block until it is done.  The time it takes to do the reap is proportional to the number of things that need to be reaped.  Once it is finished, the reaping won't happen until the reap time has elapsed again.  The reap time should be set pretty high so that this is not a frequent operation.  We know there is overhead associated with reaping, and that is why it is disabled by default.

Also, the isReapNeeded check will never block.  However, reapIfNeeded() will block if isReapNeeded() returns true and another thread has the write lock.

That's a good point about the write lock, I'll fix it.


- Jeff


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/55443/#review162676
-----------------------------------------------------------


On Jan. 23, 2017, 9:41 p.m., Jeff Hagelberg wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/55443/
> -----------------------------------------------------------
> 
> (Updated Jan. 23, 2017, 9:41 p.m.)
> 
> 
> Review request for atlas, David Kantor and Neeru Gupta.
> 
> 
> Bugs: ATLAS-1387
>     https://issues.apache.org/jira/browse/ATLAS-1387
> 
> 
> Repository: atlas
> 
> 
> Description
> -------
> 
> Adds a compiled query cache to Atlas.  This avoids the overhead of parsing and translating DSL queries that have been previously executed.
> 
> 
> Diffs
> -----
> 
>   common/pom.xml 0226541b2dd73e8a01f050982cb8b37f5fed9cab 
>   common/src/main/java/org/apache/atlas/utils/LruCache.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/utils/LruMap.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/utils/LruMapEntryUsageTracker.java PRE-CREATION 
>   common/src/test/java/org/apache/atlas/utils/LruCacheTest.java PRE-CREATION 
>   common/src/test/java/org/apache/atlas/utils/LruMapEntryUsageTrackerTest.java PRE-CREATION 
>   distro/src/conf/atlas-application.properties 6fa066b666d7948088f57805a8e2d22bf904aade 
>   repository/src/main/java/org/apache/atlas/discovery/graph/GraphBackedDiscoveryService.java b637f90967850319910c17f9017e62f68d14f546 
>   repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java 6655085ee11c94addca1564cf77bbdb001c4586f 
>   repository/src/main/java/org/apache/atlas/util/CompiledQueryCacheKey.java PRE-CREATION 
>   repository/src/main/java/org/apache/atlas/util/NoopGremlinQuery.java PRE-CREATION 
>   repository/src/main/scala/org/apache/atlas/query/QueryProcessor.scala 5693c9ecc1a96154a8b0ac48256e5074dc041c5f 
>   repository/src/test/java/org/apache/atlas/util/CompiledQueryCacheKeyTest.java PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/55443/diff/
> 
> 
> Testing
> -------
> 
> Ran all atlas tests, no regressions found.  There were some tests that failed both with and without these changes.
> 
> 
> Thanks,
> 
> Jeff Hagelberg
> 
>


Re: Review Request 55443: ATLAS-1387 : Compiled Query Cache

Posted by Neeru Gupta <gu...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/55443/#review162676
-----------------------------------------------------------




common/src/main/java/org/apache/atlas/utils/LruCache.java (line 127)
<https://reviews.apache.org/r/55443/#comment233997>

    Do we need to reap the values for Get operation? Reaping needs to acquire a write lock. If lock gets acquired by another thread while isReapNeeded check is performd, then getting value from cache may get blocked.
    I think we should not reap values while reading from map to avoid delay in providing the cached value. If we do, then write lock should be held until reaping is done.


- Neeru Gupta


On Jan. 20, 2017, 8:30 p.m., Jeff Hagelberg wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/55443/
> -----------------------------------------------------------
> 
> (Updated Jan. 20, 2017, 8:30 p.m.)
> 
> 
> Review request for atlas, David Kantor and Neeru Gupta.
> 
> 
> Bugs: ATLAS-1387
>     https://issues.apache.org/jira/browse/ATLAS-1387
> 
> 
> Repository: atlas
> 
> 
> Description
> -------
> 
> Adds a compiled query cache to Atlas.  This avoids the overhead of parsing and translating DSL queries that have been previously executed.
> 
> 
> Diffs
> -----
> 
>   common/pom.xml 0226541b2dd73e8a01f050982cb8b37f5fed9cab 
>   common/src/main/java/org/apache/atlas/utils/LruCache.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/utils/LruMap.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/utils/LruMapEntryUsageTracker.java PRE-CREATION 
>   common/src/test/java/org/apache/atlas/utils/LruCacheTest.java PRE-CREATION 
>   common/src/test/java/org/apache/atlas/utils/LruMapEntryUsageTrackerTest.java PRE-CREATION 
>   distro/src/conf/atlas-application.properties 6fa066b666d7948088f57805a8e2d22bf904aade 
>   repository/src/main/java/org/apache/atlas/discovery/graph/GraphBackedDiscoveryService.java b637f90967850319910c17f9017e62f68d14f546 
>   repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java 6655085ee11c94addca1564cf77bbdb001c4586f 
>   repository/src/main/java/org/apache/atlas/util/CompiledQueryCacheKey.java PRE-CREATION 
>   repository/src/main/java/org/apache/atlas/util/NoopGremlinQuery.java PRE-CREATION 
>   repository/src/main/scala/org/apache/atlas/query/QueryProcessor.scala 5693c9ecc1a96154a8b0ac48256e5074dc041c5f 
>   repository/src/test/java/org/apache/atlas/util/CompiledQueryCacheKeyTest.java PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/55443/diff/
> 
> 
> Testing
> -------
> 
> Ran all atlas tests, no regressions found.  There were some tests that failed both with and without these changes.
> 
> 
> Thanks,
> 
> Jeff Hagelberg
> 
>


Re: Review Request 55443: ATLAS-1387 : Compiled Query Cache

Posted by Jeff Hagelberg <jn...@us.ibm.com>.

> On Jan. 26, 2017, 9:53 p.m., Madhan Neethiraj wrote:
> > common/src/main/java/org/apache/atlas/utils/LruCache.java, line 33
> > <https://reviews.apache.org/r/55443/diff/7/?file=1616739#file1616739line33>
> >
> >     Consider using LinkedHashMap<K, V> to implement LruCache:
> >     
> >     public class LruCache<K, V> extends LinkedHashMap<K, V> {
> >       static final float LRU_LOAD_FACTOR = 0.75f;
> >     
> >       private final int maxCapacity;
> >     
> >       public LruCache(int maxCapacity) {
> >         super(maxCapacity, LRU_LOAD_FACTOR, true);
> >     
> >         this.maxCapacity = maxCapacity;
> >       }
> >     
> >       @Override
> >       protected boolean removeEldestEntry(Map.Entry eldest) {
> >          return size() > maxCapacity;
> >       }
> >     }
> >     
> >     More details at: http://docs.oracle.com/javase/7/docs/api/java/util/LinkedHashMap.html#removeEldestEntry(java.util.Map.Entry)
> 
> Jeff Hagelberg wrote:
>     I've changed the implementation of LruMap to use LinkedHashMap as the backing store.  It would take a lot of work to make LruMap extend LinkedHashMap directly.  The main obstacle is that some of the the methods require the last accesss time, and LinkedHashMap does not provide that.  This at least avoids having to maintain our own linked list implementation.
> 
> Madhan Neethiraj wrote:
>     Jeff - I suggested using LinkedHashMap to avoid having to deal with complicated/error-prone lock/unlock in our code. Is access to lastAccessTime important here, given that LinkedHashMap automatically purges least recently accessed entries?
>     
>     The implemtation in LruCache and LruMap are not needed if LruCache extends from LinkedHashMap as suggested in my earlier comment.
> 
> Jeff Hagelberg wrote:
>     Well, the access times are only needed for the reaping functionality.  If that is not needed, than we could probably replace LruMap with a LinkedHashMap.  LinkedHashMap does not look like it is thread safe.  We could simplify the logging by wrapping it with a SynchronizedMap though.  Yeah, probably the reaping is not needed, that is disabled by default anyways and really does not add much.

... simpify the *locking*


- Jeff


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/55443/#review163176
-----------------------------------------------------------


On Jan. 27, 2017, 5:44 p.m., Jeff Hagelberg wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/55443/
> -----------------------------------------------------------
> 
> (Updated Jan. 27, 2017, 5:44 p.m.)
> 
> 
> Review request for atlas, David Kantor and Neeru Gupta.
> 
> 
> Bugs: ATLAS-1387
>     https://issues.apache.org/jira/browse/ATLAS-1387
> 
> 
> Repository: atlas
> 
> 
> Description
> -------
> 
> Adds a compiled query cache to Atlas.  This avoids the overhead of parsing and translating DSL queries that have been previously executed.
> 
> 
> Diffs
> -----
> 
>   common/pom.xml 0226541b2dd73e8a01f050982cb8b37f5fed9cab 
>   common/src/main/java/org/apache/atlas/utils/LruCache.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/utils/LruMap.java PRE-CREATION 
>   common/src/test/java/org/apache/atlas/utils/LruCacheTest.java PRE-CREATION 
>   distro/src/conf/atlas-application.properties 303ce7b00c93f2499e7b18c5f3a131b50c150b69 
>   repository/src/main/java/org/apache/atlas/discovery/graph/GraphBackedDiscoveryService.java fb488cdfc7cef195ffc5221afb9a9109a6e92fc9 
>   repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java 6655085ee11c94addca1564cf77bbdb001c4586f 
>   repository/src/main/java/org/apache/atlas/util/CompiledQueryCacheKey.java PRE-CREATION 
>   repository/src/main/java/org/apache/atlas/util/NoopGremlinQuery.java PRE-CREATION 
>   repository/src/main/scala/org/apache/atlas/query/QueryProcessor.scala 5693c9ecc1a96154a8b0ac48256e5074dc041c5f 
>   repository/src/test/java/org/apache/atlas/util/CompiledQueryCacheKeyTest.java PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/55443/diff/
> 
> 
> Testing
> -------
> 
> Ran all atlas tests, no regressions found.  There were some tests that failed both with and without these changes.
> 
> 
> Thanks,
> 
> Jeff Hagelberg
> 
>


Re: Review Request 55443: ATLAS-1387 : Compiled Query Cache

Posted by Jeff Hagelberg <jn...@us.ibm.com>.

> On Jan. 26, 2017, 9:53 p.m., Madhan Neethiraj wrote:
> > common/src/main/java/org/apache/atlas/utils/LruCache.java, line 33
> > <https://reviews.apache.org/r/55443/diff/7/?file=1616739#file1616739line33>
> >
> >     Consider using LinkedHashMap<K, V> to implement LruCache:
> >     
> >     public class LruCache<K, V> extends LinkedHashMap<K, V> {
> >       static final float LRU_LOAD_FACTOR = 0.75f;
> >     
> >       private final int maxCapacity;
> >     
> >       public LruCache(int maxCapacity) {
> >         super(maxCapacity, LRU_LOAD_FACTOR, true);
> >     
> >         this.maxCapacity = maxCapacity;
> >       }
> >     
> >       @Override
> >       protected boolean removeEldestEntry(Map.Entry eldest) {
> >          return size() > maxCapacity;
> >       }
> >     }
> >     
> >     More details at: http://docs.oracle.com/javase/7/docs/api/java/util/LinkedHashMap.html#removeEldestEntry(java.util.Map.Entry)

I've changed the implementation of LruMap to use LinkedHashMap as the backing store.  It would take a lot of work to make LruMap extend LinkedHashMap directly.  The main obstacle is that some of the the methods require the last accesss time, and LinkedHashMap does not provide that.  This at least avoids having to maintain our own linked list implementation.


- Jeff


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/55443/#review163176
-----------------------------------------------------------


On Jan. 27, 2017, 5:44 p.m., Jeff Hagelberg wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/55443/
> -----------------------------------------------------------
> 
> (Updated Jan. 27, 2017, 5:44 p.m.)
> 
> 
> Review request for atlas, David Kantor and Neeru Gupta.
> 
> 
> Bugs: ATLAS-1387
>     https://issues.apache.org/jira/browse/ATLAS-1387
> 
> 
> Repository: atlas
> 
> 
> Description
> -------
> 
> Adds a compiled query cache to Atlas.  This avoids the overhead of parsing and translating DSL queries that have been previously executed.
> 
> 
> Diffs
> -----
> 
>   common/pom.xml 0226541b2dd73e8a01f050982cb8b37f5fed9cab 
>   common/src/main/java/org/apache/atlas/utils/LruCache.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/utils/LruMap.java PRE-CREATION 
>   common/src/test/java/org/apache/atlas/utils/LruCacheTest.java PRE-CREATION 
>   distro/src/conf/atlas-application.properties 303ce7b00c93f2499e7b18c5f3a131b50c150b69 
>   repository/src/main/java/org/apache/atlas/discovery/graph/GraphBackedDiscoveryService.java fb488cdfc7cef195ffc5221afb9a9109a6e92fc9 
>   repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java 6655085ee11c94addca1564cf77bbdb001c4586f 
>   repository/src/main/java/org/apache/atlas/util/CompiledQueryCacheKey.java PRE-CREATION 
>   repository/src/main/java/org/apache/atlas/util/NoopGremlinQuery.java PRE-CREATION 
>   repository/src/main/scala/org/apache/atlas/query/QueryProcessor.scala 5693c9ecc1a96154a8b0ac48256e5074dc041c5f 
>   repository/src/test/java/org/apache/atlas/util/CompiledQueryCacheKeyTest.java PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/55443/diff/
> 
> 
> Testing
> -------
> 
> Ran all atlas tests, no regressions found.  There were some tests that failed both with and without these changes.
> 
> 
> Thanks,
> 
> Jeff Hagelberg
> 
>


Re: Review Request 55443: ATLAS-1387 : Compiled Query Cache

Posted by Jeff Hagelberg <jn...@us.ibm.com>.

> On Jan. 26, 2017, 9:53 p.m., Madhan Neethiraj wrote:
> > common/src/main/java/org/apache/atlas/utils/LruCache.java, line 33
> > <https://reviews.apache.org/r/55443/diff/7/?file=1616739#file1616739line33>
> >
> >     Consider using LinkedHashMap<K, V> to implement LruCache:
> >     
> >     public class LruCache<K, V> extends LinkedHashMap<K, V> {
> >       static final float LRU_LOAD_FACTOR = 0.75f;
> >     
> >       private final int maxCapacity;
> >     
> >       public LruCache(int maxCapacity) {
> >         super(maxCapacity, LRU_LOAD_FACTOR, true);
> >     
> >         this.maxCapacity = maxCapacity;
> >       }
> >     
> >       @Override
> >       protected boolean removeEldestEntry(Map.Entry eldest) {
> >          return size() > maxCapacity;
> >       }
> >     }
> >     
> >     More details at: http://docs.oracle.com/javase/7/docs/api/java/util/LinkedHashMap.html#removeEldestEntry(java.util.Map.Entry)
> 
> Jeff Hagelberg wrote:
>     I've changed the implementation of LruMap to use LinkedHashMap as the backing store.  It would take a lot of work to make LruMap extend LinkedHashMap directly.  The main obstacle is that some of the the methods require the last accesss time, and LinkedHashMap does not provide that.  This at least avoids having to maintain our own linked list implementation.
> 
> Madhan Neethiraj wrote:
>     Jeff - I suggested using LinkedHashMap to avoid having to deal with complicated/error-prone lock/unlock in our code. Is access to lastAccessTime important here, given that LinkedHashMap automatically purges least recently accessed entries?
>     
>     The implemtation in LruCache and LruMap are not needed if LruCache extends from LinkedHashMap as suggested in my earlier comment.

Well, the access times are only needed for the reaping functionality.  If that is not needed, than we could probably replace LruMap with a LinkedHashMap.  LinkedHashMap does not look like it is thread safe.  We could simplify the logging by wrapping it with a SynchronizedMap though.  Yeah, probably the reaping is not needed, that is disabled by default anyways and really does not add much.


- Jeff


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/55443/#review163176
-----------------------------------------------------------


On Jan. 27, 2017, 5:44 p.m., Jeff Hagelberg wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/55443/
> -----------------------------------------------------------
> 
> (Updated Jan. 27, 2017, 5:44 p.m.)
> 
> 
> Review request for atlas, David Kantor and Neeru Gupta.
> 
> 
> Bugs: ATLAS-1387
>     https://issues.apache.org/jira/browse/ATLAS-1387
> 
> 
> Repository: atlas
> 
> 
> Description
> -------
> 
> Adds a compiled query cache to Atlas.  This avoids the overhead of parsing and translating DSL queries that have been previously executed.
> 
> 
> Diffs
> -----
> 
>   common/pom.xml 0226541b2dd73e8a01f050982cb8b37f5fed9cab 
>   common/src/main/java/org/apache/atlas/utils/LruCache.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/utils/LruMap.java PRE-CREATION 
>   common/src/test/java/org/apache/atlas/utils/LruCacheTest.java PRE-CREATION 
>   distro/src/conf/atlas-application.properties 303ce7b00c93f2499e7b18c5f3a131b50c150b69 
>   repository/src/main/java/org/apache/atlas/discovery/graph/GraphBackedDiscoveryService.java fb488cdfc7cef195ffc5221afb9a9109a6e92fc9 
>   repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java 6655085ee11c94addca1564cf77bbdb001c4586f 
>   repository/src/main/java/org/apache/atlas/util/CompiledQueryCacheKey.java PRE-CREATION 
>   repository/src/main/java/org/apache/atlas/util/NoopGremlinQuery.java PRE-CREATION 
>   repository/src/main/scala/org/apache/atlas/query/QueryProcessor.scala 5693c9ecc1a96154a8b0ac48256e5074dc041c5f 
>   repository/src/test/java/org/apache/atlas/util/CompiledQueryCacheKeyTest.java PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/55443/diff/
> 
> 
> Testing
> -------
> 
> Ran all atlas tests, no regressions found.  There were some tests that failed both with and without these changes.
> 
> 
> Thanks,
> 
> Jeff Hagelberg
> 
>


Re: Review Request 55443: ATLAS-1387 : Compiled Query Cache

Posted by Madhan Neethiraj <ma...@apache.org>.

> On Jan. 26, 2017, 9:53 p.m., Madhan Neethiraj wrote:
> > common/src/main/java/org/apache/atlas/utils/LruCache.java, line 33
> > <https://reviews.apache.org/r/55443/diff/7/?file=1616739#file1616739line33>
> >
> >     Consider using LinkedHashMap<K, V> to implement LruCache:
> >     
> >     public class LruCache<K, V> extends LinkedHashMap<K, V> {
> >       static final float LRU_LOAD_FACTOR = 0.75f;
> >     
> >       private final int maxCapacity;
> >     
> >       public LruCache(int maxCapacity) {
> >         super(maxCapacity, LRU_LOAD_FACTOR, true);
> >     
> >         this.maxCapacity = maxCapacity;
> >       }
> >     
> >       @Override
> >       protected boolean removeEldestEntry(Map.Entry eldest) {
> >          return size() > maxCapacity;
> >       }
> >     }
> >     
> >     More details at: http://docs.oracle.com/javase/7/docs/api/java/util/LinkedHashMap.html#removeEldestEntry(java.util.Map.Entry)
> 
> Jeff Hagelberg wrote:
>     I've changed the implementation of LruMap to use LinkedHashMap as the backing store.  It would take a lot of work to make LruMap extend LinkedHashMap directly.  The main obstacle is that some of the the methods require the last accesss time, and LinkedHashMap does not provide that.  This at least avoids having to maintain our own linked list implementation.

Jeff - I suggested using LinkedHashMap to avoid having to deal with complicated/error-prone lock/unlock in our code. Is access to lastAccessTime important here, given that LinkedHashMap automatically purges least recently accessed entries?

The implemtation in LruCache and LruMap are not needed if LruCache extends from LinkedHashMap as suggested in my earlier comment.


- Madhan


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/55443/#review163176
-----------------------------------------------------------


On Jan. 27, 2017, 5:44 p.m., Jeff Hagelberg wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/55443/
> -----------------------------------------------------------
> 
> (Updated Jan. 27, 2017, 5:44 p.m.)
> 
> 
> Review request for atlas, David Kantor and Neeru Gupta.
> 
> 
> Bugs: ATLAS-1387
>     https://issues.apache.org/jira/browse/ATLAS-1387
> 
> 
> Repository: atlas
> 
> 
> Description
> -------
> 
> Adds a compiled query cache to Atlas.  This avoids the overhead of parsing and translating DSL queries that have been previously executed.
> 
> 
> Diffs
> -----
> 
>   common/pom.xml 0226541b2dd73e8a01f050982cb8b37f5fed9cab 
>   common/src/main/java/org/apache/atlas/utils/LruCache.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/utils/LruMap.java PRE-CREATION 
>   common/src/test/java/org/apache/atlas/utils/LruCacheTest.java PRE-CREATION 
>   distro/src/conf/atlas-application.properties 303ce7b00c93f2499e7b18c5f3a131b50c150b69 
>   repository/src/main/java/org/apache/atlas/discovery/graph/GraphBackedDiscoveryService.java fb488cdfc7cef195ffc5221afb9a9109a6e92fc9 
>   repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java 6655085ee11c94addca1564cf77bbdb001c4586f 
>   repository/src/main/java/org/apache/atlas/util/CompiledQueryCacheKey.java PRE-CREATION 
>   repository/src/main/java/org/apache/atlas/util/NoopGremlinQuery.java PRE-CREATION 
>   repository/src/main/scala/org/apache/atlas/query/QueryProcessor.scala 5693c9ecc1a96154a8b0ac48256e5074dc041c5f 
>   repository/src/test/java/org/apache/atlas/util/CompiledQueryCacheKeyTest.java PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/55443/diff/
> 
> 
> Testing
> -------
> 
> Ran all atlas tests, no regressions found.  There were some tests that failed both with and without these changes.
> 
> 
> Thanks,
> 
> Jeff Hagelberg
> 
>


Re: Review Request 55443: ATLAS-1387 : Compiled Query Cache

Posted by Madhan Neethiraj <ma...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/55443/#review163176
-----------------------------------------------------------




common/src/main/java/org/apache/atlas/utils/LruCache.java (line 33)
<https://reviews.apache.org/r/55443/#comment234612>

    Consider using LinkedHashMap<K, V> to implement LruCache:
    
    public class LruCache<K, V> extends LinkedHashMap<K, V> {
      static final float LRU_LOAD_FACTOR = 0.75f;
    
      private final int maxCapacity;
    
      public LruCache(int maxCapacity) {
        super(maxCapacity, LRU_LOAD_FACTOR, true);
    
        this.maxCapacity = maxCapacity;
      }
    
      @Override
      protected boolean removeEldestEntry(Map.Entry eldest) {
         return size() > maxCapacity;
      }
    }
    
    More details at: http://docs.oracle.com/javase/7/docs/api/java/util/LinkedHashMap.html#removeEldestEntry(java.util.Map.Entry)


- Madhan Neethiraj


On Jan. 26, 2017, 9:24 p.m., Jeff Hagelberg wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/55443/
> -----------------------------------------------------------
> 
> (Updated Jan. 26, 2017, 9:24 p.m.)
> 
> 
> Review request for atlas, David Kantor and Neeru Gupta.
> 
> 
> Bugs: ATLAS-1387
>     https://issues.apache.org/jira/browse/ATLAS-1387
> 
> 
> Repository: atlas
> 
> 
> Description
> -------
> 
> Adds a compiled query cache to Atlas.  This avoids the overhead of parsing and translating DSL queries that have been previously executed.
> 
> 
> Diffs
> -----
> 
>   common/pom.xml 0226541b2dd73e8a01f050982cb8b37f5fed9cab 
>   common/src/main/java/org/apache/atlas/utils/LruCache.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/utils/LruMap.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/utils/LruMapEntryUsageTracker.java PRE-CREATION 
>   common/src/test/java/org/apache/atlas/utils/LruCacheTest.java PRE-CREATION 
>   common/src/test/java/org/apache/atlas/utils/LruMapEntryUsageTrackerTest.java PRE-CREATION 
>   distro/src/conf/atlas-application.properties 303ce7b00c93f2499e7b18c5f3a131b50c150b69 
>   repository/src/main/java/org/apache/atlas/discovery/graph/GraphBackedDiscoveryService.java fb488cdfc7cef195ffc5221afb9a9109a6e92fc9 
>   repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java 6655085ee11c94addca1564cf77bbdb001c4586f 
>   repository/src/main/java/org/apache/atlas/util/CompiledQueryCacheKey.java PRE-CREATION 
>   repository/src/main/java/org/apache/atlas/util/NoopGremlinQuery.java PRE-CREATION 
>   repository/src/main/scala/org/apache/atlas/query/QueryProcessor.scala 5693c9ecc1a96154a8b0ac48256e5074dc041c5f 
>   repository/src/test/java/org/apache/atlas/util/CompiledQueryCacheKeyTest.java PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/55443/diff/
> 
> 
> Testing
> -------
> 
> Ran all atlas tests, no regressions found.  There were some tests that failed both with and without these changes.
> 
> 
> Thanks,
> 
> Jeff Hagelberg
> 
>


Re: Review Request 55443: ATLAS-1387 : Compiled Query Cache

Posted by Madhan Neethiraj <ma...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/55443/#review163439
-----------------------------------------------------------


Ship it!




Query caching looks good!


repository/src/main/java/org/apache/atlas/discovery/graph/GraphBackedDiscoveryService.java (line 131)
<https://reviews.apache.org/r/55443/#comment234893>

    FYI - I remember build failures when no space is present between "if" and "(" - due to checkstyle rules. Perhaps this is not enforced for all modules. I don't agree with many such rules; but it is good to not change existing code.
    
    Just wanted to bring to your attention.


- Madhan Neethiraj


On Jan. 29, 2017, 12:18 a.m., Jeff Hagelberg wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/55443/
> -----------------------------------------------------------
> 
> (Updated Jan. 29, 2017, 12:18 a.m.)
> 
> 
> Review request for atlas, David Kantor and Neeru Gupta.
> 
> 
> Bugs: ATLAS-1387
>     https://issues.apache.org/jira/browse/ATLAS-1387
> 
> 
> Repository: atlas
> 
> 
> Description
> -------
> 
> Adds a compiled query cache to Atlas.  This avoids the overhead of parsing and translating DSL queries that have been previously executed.
> 
> 
> Diffs
> -----
> 
>   common/pom.xml 0226541b2dd73e8a01f050982cb8b37f5fed9cab 
>   common/src/main/java/org/apache/atlas/utils/LruCache.java PRE-CREATION 
>   common/src/test/java/org/apache/atlas/utils/LruCacheTest.java PRE-CREATION 
>   distro/src/conf/atlas-application.properties 303ce7b00c93f2499e7b18c5f3a131b50c150b69 
>   repository/src/main/java/org/apache/atlas/discovery/graph/GraphBackedDiscoveryService.java fb488cdfc7cef195ffc5221afb9a9109a6e92fc9 
>   repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java 6655085ee11c94addca1564cf77bbdb001c4586f 
>   repository/src/main/java/org/apache/atlas/util/CompiledQueryCacheKey.java PRE-CREATION 
>   repository/src/main/java/org/apache/atlas/util/NoopGremlinQuery.java PRE-CREATION 
>   repository/src/main/scala/org/apache/atlas/query/QueryProcessor.scala 5693c9ecc1a96154a8b0ac48256e5074dc041c5f 
>   repository/src/test/java/org/apache/atlas/util/CompiledQueryCacheKeyTest.java PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/55443/diff/
> 
> 
> Testing
> -------
> 
> Ran all atlas tests, no regressions found.  There were some tests that failed both with and without these changes.
> 
> 
> Thanks,
> 
> Jeff Hagelberg
> 
>


Re: Review Request 55443: ATLAS-1387 : Compiled Query Cache

Posted by Vimal Sharma <vi...@hortonworks.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/55443/#review163480
-----------------------------------------------------------



This is a great improvement. Thanks Jeffrey for implementing

- Vimal Sharma


On Jan. 29, 2017, 12:18 a.m., Jeff Hagelberg wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/55443/
> -----------------------------------------------------------
> 
> (Updated Jan. 29, 2017, 12:18 a.m.)
> 
> 
> Review request for atlas, David Kantor and Neeru Gupta.
> 
> 
> Bugs: ATLAS-1387
>     https://issues.apache.org/jira/browse/ATLAS-1387
> 
> 
> Repository: atlas
> 
> 
> Description
> -------
> 
> Adds a compiled query cache to Atlas.  This avoids the overhead of parsing and translating DSL queries that have been previously executed.
> 
> 
> Diffs
> -----
> 
>   common/pom.xml 0226541b2dd73e8a01f050982cb8b37f5fed9cab 
>   common/src/main/java/org/apache/atlas/utils/LruCache.java PRE-CREATION 
>   common/src/test/java/org/apache/atlas/utils/LruCacheTest.java PRE-CREATION 
>   distro/src/conf/atlas-application.properties 303ce7b00c93f2499e7b18c5f3a131b50c150b69 
>   repository/src/main/java/org/apache/atlas/discovery/graph/GraphBackedDiscoveryService.java fb488cdfc7cef195ffc5221afb9a9109a6e92fc9 
>   repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java 6655085ee11c94addca1564cf77bbdb001c4586f 
>   repository/src/main/java/org/apache/atlas/util/CompiledQueryCacheKey.java PRE-CREATION 
>   repository/src/main/java/org/apache/atlas/util/NoopGremlinQuery.java PRE-CREATION 
>   repository/src/main/scala/org/apache/atlas/query/QueryProcessor.scala 5693c9ecc1a96154a8b0ac48256e5074dc041c5f 
>   repository/src/test/java/org/apache/atlas/util/CompiledQueryCacheKeyTest.java PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/55443/diff/
> 
> 
> Testing
> -------
> 
> Ran all atlas tests, no regressions found.  There were some tests that failed both with and without these changes.
> 
> 
> Thanks,
> 
> Jeff Hagelberg
> 
>


RE: Review Request 55443: ATLAS-1387 : Compiled Query Cache

Posted by Jeffrey N Hagelberg <jn...@us.ibm.com>.
Ok, thanks!

 

From: Madhan Neethiraj [mailto:madhan@apache.org] 
Sent: Monday, January 30, 2017 10:55 PM
To: Jeffrey N Hagelberg <jn...@us.ibm.com>; Fnu Neerju <gu...@us.ibm.com>; Dave Kantor <dk...@us.ibm.com>
Cc: Sarath Subramanian <sa...@gmail.com>; Madhan Neethiraj <ma...@apache.org>; atlas <de...@atlas.incubator.apache.org>; Vimal Sharma <vi...@hortonworks.com>
Subject: Re: Review Request 55443: ATLAS-1387 : Compiled Query Cache

 

Jeff – I am about to commit the fix for unit test failure (introduced in my earlier commit); I will update CompiledQueryCacheKeyTest.java with the license header text.

 

Sarath – thanks for investigating at the unit test failure and the fix!

 

Thanks,

Madhan

 

 

From: Jeff Hagelberg <noreply@reviews.apache.org <ma...@reviews.apache.org> > on behalf of Jeff Hagelberg <jnhagelberg@us.ibm.com <ma...@us.ibm.com> >
Reply-To: Jeff Hagelberg <jnhagelberg@us.ibm.com <ma...@us.ibm.com> >
Date: Monday, January 30, 2017 at 2:29 PM
To: Neeru Gupta <guptaneeru@us.ibm.com <ma...@us.ibm.com> >, David Kantor <dkantor@us.ibm.com <ma...@us.ibm.com> >
Cc: Sarath Subramanian <sarath.kum4r@gmail.com <ma...@gmail.com> >, Jeff Hagelberg <jnhagelberg@us.ibm.com <ma...@us.ibm.com> >, Madhan Neethiraj <madhan@apache.org <ma...@apache.org> >, atlas <dev@atlas.incubator.apache.org <ma...@atlas.incubator.apache.org> >, Vimal Sharma <visharma@hortonworks.com <ma...@hortonworks.com> >
Subject: Re: Review Request 55443: ATLAS-1387 : Compiled Query Cache

 


This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/55443/ 

 

On January 30th, 2017, 7:03 p.m. UTC, Sarath Subramanian wrote:


 <https://reviews.apache.org/r/55443/diff/10/?file=1618378#file1618378line1> repository/src/test/java/org/apache/atlas/util/CompiledQueryCacheKeyTest.java (Diff revision 10) 

		
1

package org.apache.atlas.util;

Could you add Apache license header here to avoid rat failures.

Unfortunately, this was already committed.  I'm working on putting together a patch for ATLAS-1388.  I'll fix the RAT issue in there.  I'm expecting to be submitting that for review very soon.

 

- Jeff

 

On January 29th, 2017, 12:18 a.m. UTC, Jeff Hagelberg wrote:


Review request for atlas, David Kantor and Neeru Gupta.

By Jeff Hagelberg.

Updated Jan. 29, 2017, 12:18 a.m.

Bugs: ATLAS-1387 <https://issues.apache.org/jira/browse/ATLAS-1387>  

Repository: atlas 


Description 


Adds a compiled query cache to Atlas.  This avoids the overhead of parsing and translating DSL queries that have been previously executed.


Testing 


Ran all atlas tests, no regressions found.  There were some tests that failed both with and without these changes.


Diffs 


*	common/pom.xml (0226541b2dd73e8a01f050982cb8b37f5fed9cab) 
*	common/src/main/java/org/apache/atlas/utils/LruCache.java (PRE-CREATION) 
*	common/src/test/java/org/apache/atlas/utils/LruCacheTest.java (PRE-CREATION) 
*	distro/src/conf/atlas-application.properties (303ce7b00c93f2499e7b18c5f3a131b50c150b69) 
*	repository/src/main/java/org/apache/atlas/discovery/graph/GraphBackedDiscoveryService.java (fb488cdfc7cef195ffc5221afb9a9109a6e92fc9) 
*	repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java (6655085ee11c94addca1564cf77bbdb001c4586f) 
*	repository/src/main/java/org/apache/atlas/util/CompiledQueryCacheKey.java (PRE-CREATION) 
*	repository/src/main/java/org/apache/atlas/util/NoopGremlinQuery.java (PRE-CREATION) 
*	repository/src/main/scala/org/apache/atlas/query/QueryProcessor.scala (5693c9ecc1a96154a8b0ac48256e5074dc041c5f) 
*	repository/src/test/java/org/apache/atlas/util/CompiledQueryCacheKeyTest.java (PRE-CREATION) 

View Diff <https://reviews.apache.org/r/55443/diff/> 

 



Re: Review Request 55443: ATLAS-1387 : Compiled Query Cache

Posted by Madhan Neethiraj <ma...@apache.org>.
Jeff – I am about to commit the fix for unit test failure (introduced in my earlier commit); I will update CompiledQueryCacheKeyTest.java with the license header text.

 

Sarath – thanks for investigating at the unit test failure and the fix!

 

Thanks,

Madhan

 

 

From: Jeff Hagelberg <no...@reviews.apache.org> on behalf of Jeff Hagelberg <jn...@us.ibm.com>
Reply-To: Jeff Hagelberg <jn...@us.ibm.com>
Date: Monday, January 30, 2017 at 2:29 PM
To: Neeru Gupta <gu...@us.ibm.com>, David Kantor <dk...@us.ibm.com>
Cc: Sarath Subramanian <sa...@gmail.com>, Jeff Hagelberg <jn...@us.ibm.com>, Madhan Neethiraj <ma...@apache.org>, atlas <de...@atlas.incubator.apache.org>, Vimal Sharma <vi...@hortonworks.com>
Subject: Re: Review Request 55443: ATLAS-1387 : Compiled Query Cache

 

This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/55443/ 

 

On January 30th, 2017, 7:03 p.m. UTC, Sarath Subramanian wrote:

repository/src/test/java/org/apache/atlas/util/CompiledQueryCacheKeyTest.java (Diff revision 10) 
1
package org.apache.atlas.util;
Could you add Apache license header here to avoid rat failures.

Unfortunately, this was already committed.  I'm working on putting together a patch for ATLAS-1388.  I'll fix the RAT issue in there.  I'm expecting to be submitting that for review very soon.

 

- Jeff

 

On January 29th, 2017, 12:18 a.m. UTC, Jeff Hagelberg wrote:

Review request for atlas, David Kantor and Neeru Gupta.
By Jeff Hagelberg.
Updated Jan. 29, 2017, 12:18 a.m.Bugs: ATLAS-1387 
Repository: atlas 
Description 
Adds a compiled query cache to Atlas.  This avoids the overhead of parsing and translating DSL queries that have been previously executed.
Testing 
Ran all atlas tests, no regressions found.  There were some tests that failed both with and without these changes.
Diffs 
common/pom.xml (0226541b2dd73e8a01f050982cb8b37f5fed9cab) 
common/src/main/java/org/apache/atlas/utils/LruCache.java (PRE-CREATION) 
common/src/test/java/org/apache/atlas/utils/LruCacheTest.java (PRE-CREATION) 
distro/src/conf/atlas-application.properties (303ce7b00c93f2499e7b18c5f3a131b50c150b69) 
repository/src/main/java/org/apache/atlas/discovery/graph/GraphBackedDiscoveryService.java (fb488cdfc7cef195ffc5221afb9a9109a6e92fc9) 
repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java (6655085ee11c94addca1564cf77bbdb001c4586f) 
repository/src/main/java/org/apache/atlas/util/CompiledQueryCacheKey.java (PRE-CREATION) 
repository/src/main/java/org/apache/atlas/util/NoopGremlinQuery.java (PRE-CREATION) 
repository/src/main/scala/org/apache/atlas/query/QueryProcessor.scala (5693c9ecc1a96154a8b0ac48256e5074dc041c5f) 
repository/src/test/java/org/apache/atlas/util/CompiledQueryCacheKeyTest.java (PRE-CREATION) 
View Diff

 


Re: Review Request 55443: ATLAS-1387 : Compiled Query Cache

Posted by Jeff Hagelberg <jn...@us.ibm.com>.

> On Jan. 30, 2017, 7:03 p.m., Sarath Subramanian wrote:
> > repository/src/test/java/org/apache/atlas/util/CompiledQueryCacheKeyTest.java, line 1
> > <https://reviews.apache.org/r/55443/diff/10/?file=1618378#file1618378line1>
> >
> >     Could you add Apache license header here to avoid rat failures.

Unfortunately, this was already committed.  I'm working on putting together a patch for ATLAS-1388.  I'll fix the RAT issue in there.  I'm expecting to be submitting that for review very soon.


- Jeff


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/55443/#review163547
-----------------------------------------------------------


On Jan. 29, 2017, 12:18 a.m., Jeff Hagelberg wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/55443/
> -----------------------------------------------------------
> 
> (Updated Jan. 29, 2017, 12:18 a.m.)
> 
> 
> Review request for atlas, David Kantor and Neeru Gupta.
> 
> 
> Bugs: ATLAS-1387
>     https://issues.apache.org/jira/browse/ATLAS-1387
> 
> 
> Repository: atlas
> 
> 
> Description
> -------
> 
> Adds a compiled query cache to Atlas.  This avoids the overhead of parsing and translating DSL queries that have been previously executed.
> 
> 
> Diffs
> -----
> 
>   common/pom.xml 0226541b2dd73e8a01f050982cb8b37f5fed9cab 
>   common/src/main/java/org/apache/atlas/utils/LruCache.java PRE-CREATION 
>   common/src/test/java/org/apache/atlas/utils/LruCacheTest.java PRE-CREATION 
>   distro/src/conf/atlas-application.properties 303ce7b00c93f2499e7b18c5f3a131b50c150b69 
>   repository/src/main/java/org/apache/atlas/discovery/graph/GraphBackedDiscoveryService.java fb488cdfc7cef195ffc5221afb9a9109a6e92fc9 
>   repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java 6655085ee11c94addca1564cf77bbdb001c4586f 
>   repository/src/main/java/org/apache/atlas/util/CompiledQueryCacheKey.java PRE-CREATION 
>   repository/src/main/java/org/apache/atlas/util/NoopGremlinQuery.java PRE-CREATION 
>   repository/src/main/scala/org/apache/atlas/query/QueryProcessor.scala 5693c9ecc1a96154a8b0ac48256e5074dc041c5f 
>   repository/src/test/java/org/apache/atlas/util/CompiledQueryCacheKeyTest.java PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/55443/diff/
> 
> 
> Testing
> -------
> 
> Ran all atlas tests, no regressions found.  There were some tests that failed both with and without these changes.
> 
> 
> Thanks,
> 
> Jeff Hagelberg
> 
>


Re: Review Request 55443: ATLAS-1387 : Compiled Query Cache

Posted by Sarath Subramanian <sa...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/55443/#review163547
-----------------------------------------------------------




repository/src/test/java/org/apache/atlas/util/CompiledQueryCacheKeyTest.java (line 1)
<https://reviews.apache.org/r/55443/#comment234992>

    Could you add Apache license header here to avoid rat failures.


- Sarath Subramanian


On Jan. 28, 2017, 4:18 p.m., Jeff Hagelberg wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/55443/
> -----------------------------------------------------------
> 
> (Updated Jan. 28, 2017, 4:18 p.m.)
> 
> 
> Review request for atlas, David Kantor and Neeru Gupta.
> 
> 
> Bugs: ATLAS-1387
>     https://issues.apache.org/jira/browse/ATLAS-1387
> 
> 
> Repository: atlas
> 
> 
> Description
> -------
> 
> Adds a compiled query cache to Atlas.  This avoids the overhead of parsing and translating DSL queries that have been previously executed.
> 
> 
> Diffs
> -----
> 
>   common/pom.xml 0226541b2dd73e8a01f050982cb8b37f5fed9cab 
>   common/src/main/java/org/apache/atlas/utils/LruCache.java PRE-CREATION 
>   common/src/test/java/org/apache/atlas/utils/LruCacheTest.java PRE-CREATION 
>   distro/src/conf/atlas-application.properties 303ce7b00c93f2499e7b18c5f3a131b50c150b69 
>   repository/src/main/java/org/apache/atlas/discovery/graph/GraphBackedDiscoveryService.java fb488cdfc7cef195ffc5221afb9a9109a6e92fc9 
>   repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java 6655085ee11c94addca1564cf77bbdb001c4586f 
>   repository/src/main/java/org/apache/atlas/util/CompiledQueryCacheKey.java PRE-CREATION 
>   repository/src/main/java/org/apache/atlas/util/NoopGremlinQuery.java PRE-CREATION 
>   repository/src/main/scala/org/apache/atlas/query/QueryProcessor.scala 5693c9ecc1a96154a8b0ac48256e5074dc041c5f 
>   repository/src/test/java/org/apache/atlas/util/CompiledQueryCacheKeyTest.java PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/55443/diff/
> 
> 
> Testing
> -------
> 
> Ran all atlas tests, no regressions found.  There were some tests that failed both with and without these changes.
> 
> 
> Thanks,
> 
> Jeff Hagelberg
> 
>


Re: Review Request 55443: ATLAS-1387 : Compiled Query Cache

Posted by Jeff Hagelberg <jn...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/55443/
-----------------------------------------------------------

(Updated Jan. 29, 2017, 12:18 a.m.)


Review request for atlas, David Kantor and Neeru Gupta.


Bugs: ATLAS-1387
    https://issues.apache.org/jira/browse/ATLAS-1387


Repository: atlas


Description
-------

Adds a compiled query cache to Atlas.  This avoids the overhead of parsing and translating DSL queries that have been previously executed.


Diffs (updated)
-----

  common/pom.xml 0226541b2dd73e8a01f050982cb8b37f5fed9cab 
  common/src/main/java/org/apache/atlas/utils/LruCache.java PRE-CREATION 
  common/src/test/java/org/apache/atlas/utils/LruCacheTest.java PRE-CREATION 
  distro/src/conf/atlas-application.properties 303ce7b00c93f2499e7b18c5f3a131b50c150b69 
  repository/src/main/java/org/apache/atlas/discovery/graph/GraphBackedDiscoveryService.java fb488cdfc7cef195ffc5221afb9a9109a6e92fc9 
  repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java 6655085ee11c94addca1564cf77bbdb001c4586f 
  repository/src/main/java/org/apache/atlas/util/CompiledQueryCacheKey.java PRE-CREATION 
  repository/src/main/java/org/apache/atlas/util/NoopGremlinQuery.java PRE-CREATION 
  repository/src/main/scala/org/apache/atlas/query/QueryProcessor.scala 5693c9ecc1a96154a8b0ac48256e5074dc041c5f 
  repository/src/test/java/org/apache/atlas/util/CompiledQueryCacheKeyTest.java PRE-CREATION 

Diff: https://reviews.apache.org/r/55443/diff/


Testing
-------

Ran all atlas tests, no regressions found.  There were some tests that failed both with and without these changes.


Thanks,

Jeff Hagelberg


Re: Review Request 55443: ATLAS-1387 : Compiled Query Cache

Posted by Jeff Hagelberg <jn...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/55443/
-----------------------------------------------------------

(Updated Jan. 29, 2017, 12:15 a.m.)


Review request for atlas, David Kantor and Neeru Gupta.


Changes
-------

Addressed review comments.


Bugs: ATLAS-1387
    https://issues.apache.org/jira/browse/ATLAS-1387


Repository: atlas


Description
-------

Adds a compiled query cache to Atlas.  This avoids the overhead of parsing and translating DSL queries that have been previously executed.


Diffs (updated)
-----

  common/pom.xml 0226541b2dd73e8a01f050982cb8b37f5fed9cab 
  common/src/main/java/org/apache/atlas/utils/LruCache.java PRE-CREATION 
  common/src/test/java/org/apache/atlas/utils/LruCacheTest.java PRE-CREATION 
  distro/src/conf/atlas-application.properties 303ce7b00c93f2499e7b18c5f3a131b50c150b69 
  repository/src/main/java/org/apache/atlas/discovery/graph/GraphBackedDiscoveryService.java fb488cdfc7cef195ffc5221afb9a9109a6e92fc9 
  repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java 6655085ee11c94addca1564cf77bbdb001c4586f 
  repository/src/main/java/org/apache/atlas/util/CompiledQueryCacheKey.java PRE-CREATION 
  repository/src/main/java/org/apache/atlas/util/NoopGremlinQuery.java PRE-CREATION 
  repository/src/main/scala/org/apache/atlas/query/QueryProcessor.scala 5693c9ecc1a96154a8b0ac48256e5074dc041c5f 
  repository/src/test/java/org/apache/atlas/util/CompiledQueryCacheKeyTest.java PRE-CREATION 

Diff: https://reviews.apache.org/r/55443/diff/


Testing
-------

Ran all atlas tests, no regressions found.  There were some tests that failed both with and without these changes.


Thanks,

Jeff Hagelberg


Re: Review Request 55443: ATLAS-1387 : Compiled Query Cache

Posted by Jeff Hagelberg <jn...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/55443/
-----------------------------------------------------------

(Updated Jan. 27, 2017, 5:44 p.m.)


Review request for atlas, David Kantor and Neeru Gupta.


Changes
-------

Changed LruMap to use a LinkedHashMap as its backing store.


Bugs: ATLAS-1387
    https://issues.apache.org/jira/browse/ATLAS-1387


Repository: atlas


Description
-------

Adds a compiled query cache to Atlas.  This avoids the overhead of parsing and translating DSL queries that have been previously executed.


Diffs (updated)
-----

  common/pom.xml 0226541b2dd73e8a01f050982cb8b37f5fed9cab 
  common/src/main/java/org/apache/atlas/utils/LruCache.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/utils/LruMap.java PRE-CREATION 
  common/src/test/java/org/apache/atlas/utils/LruCacheTest.java PRE-CREATION 
  distro/src/conf/atlas-application.properties 303ce7b00c93f2499e7b18c5f3a131b50c150b69 
  repository/src/main/java/org/apache/atlas/discovery/graph/GraphBackedDiscoveryService.java fb488cdfc7cef195ffc5221afb9a9109a6e92fc9 
  repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java 6655085ee11c94addca1564cf77bbdb001c4586f 
  repository/src/main/java/org/apache/atlas/util/CompiledQueryCacheKey.java PRE-CREATION 
  repository/src/main/java/org/apache/atlas/util/NoopGremlinQuery.java PRE-CREATION 
  repository/src/main/scala/org/apache/atlas/query/QueryProcessor.scala 5693c9ecc1a96154a8b0ac48256e5074dc041c5f 
  repository/src/test/java/org/apache/atlas/util/CompiledQueryCacheKeyTest.java PRE-CREATION 

Diff: https://reviews.apache.org/r/55443/diff/


Testing
-------

Ran all atlas tests, no regressions found.  There were some tests that failed both with and without these changes.


Thanks,

Jeff Hagelberg


Re: Review Request 55443: ATLAS-1387 : Compiled Query Cache

Posted by Jeff Hagelberg <jn...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/55443/
-----------------------------------------------------------

(Updated Jan. 26, 2017, 9:24 p.m.)


Review request for atlas, David Kantor and Neeru Gupta.


Bugs: ATLAS-1387
    https://issues.apache.org/jira/browse/ATLAS-1387


Repository: atlas


Description
-------

Adds a compiled query cache to Atlas.  This avoids the overhead of parsing and translating DSL queries that have been previously executed.


Diffs (updated)
-----

  common/pom.xml 0226541b2dd73e8a01f050982cb8b37f5fed9cab 
  common/src/main/java/org/apache/atlas/utils/LruCache.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/utils/LruMap.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/utils/LruMapEntryUsageTracker.java PRE-CREATION 
  common/src/test/java/org/apache/atlas/utils/LruCacheTest.java PRE-CREATION 
  common/src/test/java/org/apache/atlas/utils/LruMapEntryUsageTrackerTest.java PRE-CREATION 
  distro/src/conf/atlas-application.properties 303ce7b00c93f2499e7b18c5f3a131b50c150b69 
  repository/src/main/java/org/apache/atlas/discovery/graph/GraphBackedDiscoveryService.java fb488cdfc7cef195ffc5221afb9a9109a6e92fc9 
  repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java 6655085ee11c94addca1564cf77bbdb001c4586f 
  repository/src/main/java/org/apache/atlas/util/CompiledQueryCacheKey.java PRE-CREATION 
  repository/src/main/java/org/apache/atlas/util/NoopGremlinQuery.java PRE-CREATION 
  repository/src/main/scala/org/apache/atlas/query/QueryProcessor.scala 5693c9ecc1a96154a8b0ac48256e5074dc041c5f 
  repository/src/test/java/org/apache/atlas/util/CompiledQueryCacheKeyTest.java PRE-CREATION 

Diff: https://reviews.apache.org/r/55443/diff/


Testing
-------

Ran all atlas tests, no regressions found.  There were some tests that failed both with and without these changes.


Thanks,

Jeff Hagelberg


Re: Review Request 55443: ATLAS-1387 : Compiled Query Cache

Posted by Jeff Hagelberg <jn...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/55443/
-----------------------------------------------------------

(Updated Jan. 26, 2017, 3:20 p.m.)


Review request for atlas, David Kantor and Neeru Gupta.


Changes
-------

Rebased changes.


Bugs: ATLAS-1387
    https://issues.apache.org/jira/browse/ATLAS-1387


Repository: atlas


Description
-------

Adds a compiled query cache to Atlas.  This avoids the overhead of parsing and translating DSL queries that have been previously executed.


Diffs (updated)
-----

  common/pom.xml 0226541b2dd73e8a01f050982cb8b37f5fed9cab 
  common/src/main/java/org/apache/atlas/utils/LruCache.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/utils/LruMap.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/utils/LruMapEntryUsageTracker.java PRE-CREATION 
  common/src/test/java/org/apache/atlas/utils/LruCacheTest.java PRE-CREATION 
  common/src/test/java/org/apache/atlas/utils/LruMapEntryUsageTrackerTest.java PRE-CREATION 
  dashboardv2/public/css/scss/main.scss 1d10bab3aefa7a2984d8f309807fb7e6c29c77c1 
  dashboardv2/public/css/scss/override.scss b0f5c7f9abb79ab760958bf3341a4533f7cfd59f 
  dashboardv2/public/index.html 36ddef5d8f52ab5b48844834bf1db8c410a4c01d 
  dashboardv2/public/js/collection/VSearchList.js 2ec49526d4eae3e723ca6f8e4eed0c5a5ab77de5 
  dashboardv2/public/js/external_lib/pnotify.custom.min.js 9c5f67edc4789ffbcc4d21bef2290471a7aada42 
  dashboardv2/public/js/external_lib/pnotify/pnotify.buttons.js PRE-CREATION 
  dashboardv2/public/js/external_lib/pnotify/pnotify.confirm.js PRE-CREATION 
  dashboardv2/public/js/external_lib/pnotify/pnotify.custom.min.css  
  dashboardv2/public/js/external_lib/pnotify/pnotify.js PRE-CREATION 
  dashboardv2/public/js/main.js 3b7f2b22130f0df8ca4818ed65c58a48cc5fcbca 
  dashboardv2/public/js/models/VEntity.js ce86c243d7f4d1c1cc4e2c1e9a05bf393a3db5fe 
  dashboardv2/public/js/modules/atlasLogin.js 0fec3e44abcd4add1b5660fe3ecc3f295b2291d9 
  dashboardv2/public/js/utils/CommonViewFunction.js c0203ead522d25e1f54d0473fa687e3d497bfe99 
  dashboardv2/public/js/utils/Messages.js 4bf404ecdeb379f7fbfea46c6bd2db1637f8c58a 
  dashboardv2/public/js/utils/UrlLinks.js 901de5a16d801d96c9e12cae61de16ee27e257e9 
  dashboardv2/public/js/utils/Utils.js 259ea2c8c15fe2c139097c8b5f4bf9c315a2086b 
  dashboardv2/public/js/views/detail_page/DetailPageLayoutView.js 3f197cfeac7f0a9ee57393e232fb5a66682b68b6 
  dashboardv2/public/js/views/graph/LineageLayoutView.js 7dae6d84785ac7d039120d895638925decb050f0 
  dashboardv2/public/js/views/schema/SchemaLayoutView.js 8d7dfe44702fee4e37040f8b80df9b0d9f42d914 
  dashboardv2/public/js/views/search/SearchResultLayoutView.js 23d74a5000b68af9fcd6fd4086deafdf9694e777 
  dashboardv2/public/js/views/tag/TagAttributeDetailLayoutView.js 24e1e24423a9549fce3fbe47e5d0604277aa158c 
  dashboardv2/public/js/views/tag/addTagModalView.js dcefc5a592b31ff776333ff6c000fbf68f888c01 
  distro/src/conf/atlas-application.properties 7f79ad7589c5afdcd7fa12bc7476cc9417520d8a 
  intg/src/main/java/org/apache/atlas/model/metrics/AtlasMetrics.java 602cdb4b6d29addb041eeaf93cae8623496bd768 
  release-log.txt dc7d12e27e6bc3a1f128c591bc72c7d33721cdce 
  repository/src/main/java/org/apache/atlas/discovery/DataSetLineageService.java fd5dba78a9dbb2b38ed0a01c9844c58c91253f75 
  repository/src/main/java/org/apache/atlas/discovery/graph/DefaultGraphPersistenceStrategy.java 266f27c8e388cd8ad1a2f74f7dce14478d93f4ba 
  repository/src/main/java/org/apache/atlas/discovery/graph/GraphBackedDiscoveryService.java b637f90967850319910c17f9017e62f68d14f546 
  repository/src/main/java/org/apache/atlas/gremlin/Gremlin2ExpressionFactory.java 41dc65f5016e45a1fd4a0982e624932275ce31d1 
  repository/src/main/java/org/apache/atlas/gremlin/GremlinExpressionFactory.java 3677544d73183116cd0bea4a1b04be11f19b5c1a 
  repository/src/main/java/org/apache/atlas/repository/graph/GraphHelper.java 889236ca805142a93d9d4e63789fb0cc9aea05aa 
  repository/src/main/java/org/apache/atlas/services/MetricsService.java 855e402193ebf2d4ecd4cdb35129a9550e9a7638 
  repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java 6655085ee11c94addca1564cf77bbdb001c4586f 
  repository/src/main/java/org/apache/atlas/util/CompiledQueryCacheKey.java PRE-CREATION 
  repository/src/main/java/org/apache/atlas/util/NoopGremlinQuery.java PRE-CREATION 
  repository/src/main/scala/org/apache/atlas/query/ClosureQuery.scala daef5827bcfce99d8ffb7bf73bd6a7aa853626b9 
  repository/src/main/scala/org/apache/atlas/query/GraphPersistenceStrategies.scala a9dcdff2fb390e13cd5519d20d95f3c5d2b96669 
  repository/src/main/scala/org/apache/atlas/query/GremlinEvaluator.scala ade4176b02c382920bddc24bb7ada28a52c30596 
  repository/src/main/scala/org/apache/atlas/query/GremlinQuery.scala a61ff982915684b72fe7067eea2fc2ac75d31baf 
  repository/src/main/scala/org/apache/atlas/query/QueryProcessor.scala 5693c9ecc1a96154a8b0ac48256e5074dc041c5f 
  repository/src/test/java/org/apache/atlas/discovery/DataSetLineageServiceTest.java a0ee26c34517a441cfb7513d98852bd8d13ecca9 
  repository/src/test/java/org/apache/atlas/services/MetricsServiceTest.java PRE-CREATION 
  repository/src/test/java/org/apache/atlas/util/CompiledQueryCacheKeyTest.java PRE-CREATION 
  repository/src/test/scala/org/apache/atlas/query/GremlinTest2.scala 33513c5b33beb1a85d83eb65de687b91a1cf2b0f 

Diff: https://reviews.apache.org/r/55443/diff/


Testing
-------

Ran all atlas tests, no regressions found.  There were some tests that failed both with and without these changes.


Thanks,

Jeff Hagelberg


Re: Review Request 55443: ATLAS-1387 : Compiled Query Cache

Posted by Jeff Hagelberg <jn...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/55443/
-----------------------------------------------------------

(Updated Jan. 26, 2017, 3:16 p.m.)


Review request for atlas, David Kantor and Neeru Gupta.


Bugs: ATLAS-1387
    https://issues.apache.org/jira/browse/ATLAS-1387


Repository: atlas


Description
-------

Adds a compiled query cache to Atlas.  This avoids the overhead of parsing and translating DSL queries that have been previously executed.


Diffs (updated)
-----

  authorization/src/main/java/org/apache/atlas/authorize/simple/AtlasAuthorizationUtils.java 9f3311549ba8ba6e32c236006d4b2964b18f1ed5 
  client/src/main/java/org/apache/atlas/AtlasAdminClient.java 19f957583acfa1b21ded2ee550b72802ab264d47 
  client/src/main/java/org/apache/atlas/AtlasBaseClient.java d055b78992e327bd15f6e0389a4537d84205bb02 
  common/pom.xml 0226541b2dd73e8a01f050982cb8b37f5fed9cab 
  common/src/main/java/org/apache/atlas/utils/LruCache.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/utils/LruMap.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/utils/LruMapEntryUsageTracker.java PRE-CREATION 
  common/src/test/java/org/apache/atlas/utils/LruCacheTest.java PRE-CREATION 
  common/src/test/java/org/apache/atlas/utils/LruMapEntryUsageTrackerTest.java PRE-CREATION 
  dashboardv2/public/js/collection/BaseCollection.js 1f3faba6b0edddd37ee74889b9f86d04bb7fa030 
  dashboardv2/public/js/collection/VCatalogList.js a631de1b0fddc5b869b3d6ec5e94969caaa61860 
  dashboardv2/public/js/collection/VCommonList.js 87091ca0a19c3ca09a0f36a8e4d0114efb31985c 
  dashboardv2/public/js/collection/VEntityList.js 99b0f3ba77267f0bbdd1f70639730846de677179 
  dashboardv2/public/js/collection/VLineageList.js a2656df4114cffe6c95ffa078a9e1251a88badd2 
  dashboardv2/public/js/collection/VSchemaList.js 18ffeda59935efdfa856f0b5023fcf6d3856182d 
  dashboardv2/public/js/collection/VSearchList.js 3b02f0582744da4be09cd4cf0c4f59c6f1a891a9 
  dashboardv2/public/js/collection/VTagList.js 92c6436aaeb647bdbb775dddd0f1119e47650381 
  dashboardv2/public/js/main.js fe08754d675f7aaf25865fae8a42a7ccc46f77de 
  dashboardv2/public/js/models/BaseModel.js 27e0332a18ecc0712631e37d06a0526cc724fbd0 
  dashboardv2/public/js/models/VCatalog.js 85160b7baa4439a8b072fa5ad5758a4b2de70da4 
  dashboardv2/public/js/models/VCommon.js 25462fe78db0ed933d5feed4269649e351da8c77 
  dashboardv2/public/js/models/VEntity.js 2173534b6f38d1bdaa230205ab5552c8f9bf01d1 
  dashboardv2/public/js/models/VLineage.js d55bfeb60be8bd70ce6b31e65e705d56ecaa50e8 
  dashboardv2/public/js/models/VSchema.js f7f083cae517c42a6784e1cba69bad921cf275f4 
  dashboardv2/public/js/models/VSearch.js 906b96f0d334ce0905f028694c28b69687fe3121 
  dashboardv2/public/js/models/VTag.js 73cf3c882a19558d7fd165eb6905ebb5f13f32fd 
  dashboardv2/public/js/templates/detail_page/DetailPageLayoutView_tmpl.html e47b0c24cd210cda84f7de56440d8c2a325eaa33 
  dashboardv2/public/js/templates/search/SearchLayoutView_tmpl.html 8d7f87497d97fbd256db845a2ac5b2c7cc8c8939 
  dashboardv2/public/js/utils/CommonViewFunction.js 7d41c1c5a2127254da9ee851fadc9cb738ca8c43 
  dashboardv2/public/js/utils/Messages.js d6acc32199d234930dcd3a4bbcbe4c07e5caba44 
  dashboardv2/public/js/utils/Overrides.js 3945e9f1404c0ea238f514b4bbe694c0af3941db 
  dashboardv2/public/js/utils/Utils.js 4e003d91c6b4a7f06fcbb8c1c60b6595eedb4cc2 
  dashboardv2/public/js/views/business_catalog/BusinessCatalogDetailLayoutView.js edf5decf6bb1d71f328f6de019b5ff8b1d9744d6 
  dashboardv2/public/js/views/business_catalog/TreeLayoutView.js 431a6e78662368fa568bcf14659614d5f6ce6f52 
  dashboardv2/public/js/views/common/aboutAtlas.js 75b009c5f2c87f75db1c7f125a03e1257babc5ad 
  dashboardv2/public/js/views/detail_page/DetailPageLayoutView.js d63bb5ac112c3f60ce44d44e62a8843a5ffb37cc 
  dashboardv2/public/js/views/entity/CreateEntityLayoutView.js c98ea18883ccc6310c0f8bde2cfb7c6f45c0e44d 
  dashboardv2/public/js/views/graph/LineageLayoutView.js c1d860ad7315843e6f9b415527e9fb2303cdcdbe 
  dashboardv2/public/js/views/search/SearchLayoutView.js 38bf6b52154c2bffaafc9eba8947191dbc4fb911 
  dashboardv2/public/js/views/search/SearchResultLayoutView.js f389515fd52856c02c85ee7289a1da8b87725296 
  dashboardv2/public/js/views/tag/CreateTagLayoutView.js 31792762d14a59ad6d997bcefa05d9698bbb81eb 
  dashboardv2/public/js/views/tag/TagAttributeDetailLayoutView.js ac28c0f4faf5b86f53a7c50fd8bbd34a2c29fe60 
  dashboardv2/public/js/views/tag/TagLayoutView.js 9ed7ae9ad3a337633549415dca26bc410191bcb9 
  dashboardv2/public/js/views/tag/addTagModalView.js 9c82d5c8e6003c7276742607bbf7c1b5a1d491d3 
  distro/src/conf/atlas-application.properties 6fa066b666d7948088f57805a8e2d22bf904aade 
  intg/src/main/java/org/apache/atlas/AtlasErrorCode.java f0aae0ce3656379f50e2280c7266c347d4adcf3a 
  intg/src/main/java/org/apache/atlas/model/instance/ClassificationAssociateRequest.java PRE-CREATION 
  intg/src/main/java/org/apache/atlas/model/metrics/AtlasMetrics.java PRE-CREATION 
  release-log.txt 55ac3dac4637b66f4564743591cbbf1a16c34679 
  repository/src/main/java/org/apache/atlas/discovery/graph/GraphBackedDiscoveryService.java b637f90967850319910c17f9017e62f68d14f546 
  repository/src/main/java/org/apache/atlas/repository/MetadataRepository.java 886a8d14c59409ace28c85f086d2479689fcfd50 
  repository/src/main/java/org/apache/atlas/repository/graph/GraphBackedMetadataRepository.java b9671b27530b6abc0c648df34e950fccb9ef61a0 
  repository/src/main/java/org/apache/atlas/services/DefaultMetadataService.java 83078355036163e6f57eb18cbc4e4c87fce2b2f8 
  repository/src/main/java/org/apache/atlas/services/MetricsService.java PRE-CREATION 
  repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java 6655085ee11c94addca1564cf77bbdb001c4586f 
  repository/src/main/java/org/apache/atlas/util/CompiledQueryCacheKey.java PRE-CREATION 
  repository/src/main/java/org/apache/atlas/util/NoopGremlinQuery.java PRE-CREATION 
  repository/src/main/scala/org/apache/atlas/query/QueryProcessor.scala 5693c9ecc1a96154a8b0ac48256e5074dc041c5f 
  repository/src/test/java/org/apache/atlas/util/CompiledQueryCacheKeyTest.java PRE-CREATION 
  server-api/src/main/java/org/apache/atlas/services/MetadataService.java e6531848ea5a52d1184e1afd144d089d57edbda8 
  webapp/src/main/java/org/apache/atlas/web/resources/AdminResource.java 02d748834701accf6848891f9824969f3c47d743 
  webapp/src/main/java/org/apache/atlas/web/rest/EntitiesREST.java 21f8977f30e0c12677f33b35798dfed7d2e73eac 
  webapp/src/main/resources/spring-security.xml 4ed88ece38e7a4349b7951a97f83bcb735ae4143 
  webapp/src/test/java/org/apache/atlas/web/adapters/TestEntitiesREST.java 90a46f88a09ab31a1bcef1ab0e9b61bc83236d46 
  webapp/src/test/java/org/apache/atlas/web/resources/AdminResourceTest.java eb2b2f6db2e7df5ca1255df7fcd87c62fbffd6e2 

Diff: https://reviews.apache.org/r/55443/diff/


Testing
-------

Ran all atlas tests, no regressions found.  There were some tests that failed both with and without these changes.


Thanks,

Jeff Hagelberg


Re: Review Request 55443: ATLAS-1387 : Compiled Query Cache

Posted by Jeff Hagelberg <jn...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/55443/
-----------------------------------------------------------

(Updated Jan. 23, 2017, 9:41 p.m.)


Review request for atlas, David Kantor and Neeru Gupta.


Changes
-------

Addressed review comments


Bugs: ATLAS-1387
    https://issues.apache.org/jira/browse/ATLAS-1387


Repository: atlas


Description
-------

Adds a compiled query cache to Atlas.  This avoids the overhead of parsing and translating DSL queries that have been previously executed.


Diffs (updated)
-----

  common/pom.xml 0226541b2dd73e8a01f050982cb8b37f5fed9cab 
  common/src/main/java/org/apache/atlas/utils/LruCache.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/utils/LruMap.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/utils/LruMapEntryUsageTracker.java PRE-CREATION 
  common/src/test/java/org/apache/atlas/utils/LruCacheTest.java PRE-CREATION 
  common/src/test/java/org/apache/atlas/utils/LruMapEntryUsageTrackerTest.java PRE-CREATION 
  distro/src/conf/atlas-application.properties 6fa066b666d7948088f57805a8e2d22bf904aade 
  repository/src/main/java/org/apache/atlas/discovery/graph/GraphBackedDiscoveryService.java b637f90967850319910c17f9017e62f68d14f546 
  repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java 6655085ee11c94addca1564cf77bbdb001c4586f 
  repository/src/main/java/org/apache/atlas/util/CompiledQueryCacheKey.java PRE-CREATION 
  repository/src/main/java/org/apache/atlas/util/NoopGremlinQuery.java PRE-CREATION 
  repository/src/main/scala/org/apache/atlas/query/QueryProcessor.scala 5693c9ecc1a96154a8b0ac48256e5074dc041c5f 
  repository/src/test/java/org/apache/atlas/util/CompiledQueryCacheKeyTest.java PRE-CREATION 

Diff: https://reviews.apache.org/r/55443/diff/


Testing
-------

Ran all atlas tests, no regressions found.  There were some tests that failed both with and without these changes.


Thanks,

Jeff Hagelberg