Jeroen Hoffman pushed to branch bugfix/HSTTWO-3805 at cms-community / 
hippo-site-toolkit


Commits:
c94845c5 by Ard Schrijvers at 2016-11-21T14:46:59+01:00
HSTTWO-3864 Set caching-psp1 development version

- - - - -
043abd67 by Ard Schrijvers at 2016-11-24T14:30:00+01:00
HSTTWO-3863 support for second level and stale page caching

Note that by default the HST does not provide second level or stale page 
caching instances :
these can be provided separately, for example by some enterprise addon

Furthermore not much information in this commit message since all details are
provided by comments next to the code

I've tested the correct working of the second level and stale page cache. 
Integration tests
will be added later on

- - - - -
3487544c by Ard Schrijvers at 2016-11-24T15:19:09+01:00
HSTTWO-3875 keep track of uncacheable keys

for example when some url results in that an HstComponent sets a cookie, which
takes place *after* the page caching valve, the response is uncacheable. In 
that case, not a
second level lookup has to be done for such keys. Hence, we keep track of the 
last 1000 (lru map)
uncacheable keys for performance reasons

- - - - -
3f74aee8 by Ard Schrijvers at 2016-11-24T17:06:17+01:00
HSTTWO-3863 Account for the fact the getTimeToLive() on EhCache Element means 
eternal

- - - - -
22b65f4e by Ard Schrijvers at 2016-11-30T12:22:10+01:00
HSTTWO-3863 Support for setting the second level and stale page cache with 
Optional

This way, we can use Spring method invoking factory with Optional : Otherwise, 
we can't invoke
the setters with null value

- - - - -
b645a3d1 by Ard Schrijvers at 2016-12-01T15:35:53+01:00
HSTTWO-3877 clone the ehcache element when putting it in  second level cache

This way, a second level cache impl can modify the element to cache, for example
changing its TTL

- - - - -
4229c0b8 by Ard Schrijvers at 2016-12-01T15:37:59+01:00
HSTTWO-3877 extra comment with explanation wrt TTL of the second level cache hit

- - - - -
7b9017d2 by Ard Schrijvers at 2016-12-06T17:18:31+01:00
HSTTWO-3882 When restoring primary cache entry from second level cache, use new 
creation time

When using the creation time of the second level cache entry, it can happen 
that the primary cache entry
is directly expired: Assume the second level cache entry got a creation time 2 
minutes ago, and the newTTL
of the primary cache entry is 60 seconds (aka the second level cache entries 
live for 3 minutes). Then the
primary cache entry is directly expired. Instead, the primary cache entry 
should be stored with the
original key instance *and* with a TTL of 60 seconds and a creation time of NOW

- - - - -
14a3a75f by Ard Schrijvers at 2016-12-14T20:31:04+01:00
HSTTWO-3879 Support for combined, first, second and stale cache stats over jmx

Note that also for the binaries cache and webfiles cache we now expose
cache stats. For now, the binaries cache and webfiles cache will never have a 
second
level cache or stale cache but this could be wired via Spring if we want to 
support that.

Next to the stats for first, second and stale cache, we also expose stats for 
the
misses and hits of the three combined. This is interesting to see because that 
is in the
end the effective cache hits/misses 'experienced' for the requests.

- - - - -
a4ab1954 by Ard Schrijvers at 2016-12-20T13:22:10+01:00
HSTTWO-3881 if webfiles are available, include the anti-cache-value in the 
cachekey

 Otherwise the problem can occur that a cached page from second level cache is 
fetched, which
 has a webfile URL with an outdated anti-cache-value : In that case, for the 
cached page, the webfiles
 cannot be loaded any more

- - - - -
98ab2396 by Ard Schrijvers at 2017-01-23T13:38:27+01:00
HSTTWO-3881 improve logging in case of a repo exception

- - - - -
4092522b by Ard Schrijvers at 2017-01-30T16:34:57+01:00
HSTTWO-3909 deprecate HstCacheEhCacheImpl and replace it with 
CompositeHstCacheImpl

CompositeHstCacheImpl much better reflects its current behavior

- - - - -
fdb54735 by Ard Schrijvers at 2017-01-30T16:46:33+01:00
HSTTWO-3908 replace the HstCacheIT test with more generic 
CompositeHstCacheSpringWiringIT

The CompositeHstCacheSpringWiringIT makes sure that caches that must be present 
in spring configuration
with a certain bean id will be there and won't be possible to change in 
name (because then this test
will start to fail)

- - - - -
967de0c2 by Ard Schrijvers at 2017-01-30T16:48:50+01:00
HSTTWO-3909 trivial: rename CompositeHstCacheImpl to CompositeHstCache

- - - - -
4402da79 by Ard Schrijvers at 2017-01-31T10:14:27+01:00
HSTTWO-3908 Assert that pageCache, binariesCache and webFilesCache are blocking 
caches

The pageCache, binariesCache and webFilesCache  have stampeding herd protection 
by using
blocking caches. This unit test is to guarantee they are really blocking

- - - - -
a905309d by Ard Schrijvers at 2017-01-31T10:34:41+01:00
HSTTWO-3908 More assertions on blocking cache

For example that a #get for present key is not blocking, but for missing key is 
blocking.
Added check that isKeyInCache is not blocking

- - - - -
574a9765 by Ard Schrijvers at 2017-01-31T12:36:21+01:00
HSTTWO-3879 also expose timetolive and timetoidle values for first level cache

- - - - -
71f44228 by Ard Schrijvers at 2017-02-01T18:01:31+01:00
HSTTWO-3908 Add integration tests for second level cache and stale page cache

Did not yet add unit tests that combine stale and second level together

- - - - -
be37c188 by Ard Schrijvers at 2017-02-02T17:29:30+01:00
HSTTWO-3908 Add integration tests for second level cache and stale page cache 
combined

- - - - -
b57f0241 by Woonsan Ko at 2017-02-03T17:40:04-05:00
HSTTWO-3913: remove '/jcr:content' if existing for cache key.

- - - - -
ba5b7dd1 by Woonsan Ko at 2017-02-03T23:05:08-05:00
HSTTWO-3913: handle property events on child node. e.g, /jcr:content/jcr:data

- - - - -
247f5530 by Ard Schrijvers at 2017-02-06T12:45:30+01:00
HSTTWO-3908 Correct the expectations

- - - - -
31218d7a by Ard Schrijvers at 2017-02-06T13:05:47+01:00
HSTTWO-3914 Make sure to set the TTL correctly of the cloned Element

Next to that, some trivial added logging

- - - - -
28440356 by Ard Schrijvers at 2017-02-06T16:27:51+01:00
HSTTWO-3407 Support for disabling the pageCache event listener

By setting the hst config property

pageCache.clearOnContentChange = false

on content changes the page cache won't be flushed any more

- - - - -
53c6ad23 by Ard Schrijvers at 2017-02-06T16:28:55+01:00
HSTTWO-3804 Support to not clear the page cache on a hst config change

When setting the hst config property

pageCache.clearOnHstConfigChange = false

a change in hst config won't clear the page cache any more

- - - - -
c13d55e7 by Woonsan Ko at 2017-02-06T11:44:21-05:00
HSTTWO-3912: Allow to set a custom HTTP Forwarded-For header names by 
configuring a context init param (http-forwarded-for-header).

- - - - -
ee8fbefa by Ard Schrijvers at 2017-02-06T20:40:42+01:00
HSTTWO-3912 organize imports  according Hippo coding standards

- - - - -
ec1b8f0f by Woonsan Ko at 2017-02-06T14:44:14-05:00
HSTTWO-3912: allow only single custom forwarded-for header instead of comma 
separated one.

- - - - -
e83aba79 by Woonsan Ko at 2017-02-06T14:44:51-05:00
Merge branch 'feature/HSTTWO-3912-2' of 
https://code.onehippo.org/cms-community/hippo-site-toolkit into 
feature/HSTTWO-3912-2

- - - - -
50bb8a30 by Woonsan Ko at 2017-02-06T14:47:48-05:00
HSTTWO-3912: correcting method name as singulr.

- - - - -
55fd6969 by Woonsan Ko at 2017-02-06T14:57:50-05:00
HSTTWO-3912: refining if control statements as same as in CMS RequestUtils for 
maintenance.

- - - - -
c5662305 by Ard Schrijvers at 2017-02-06T21:30:29+01:00
HSTTWO-3912 Avoid List creation

Note that the difference is that if a value is empty (after trim() ) it is now 
used
but this is in line with how it always used to be

- - - - -
3df7d856 by Woonsan Ko at 2017-02-06T21:41:24+01:00
Merge branch 'feature/HSTTWO-3912-2' into 'master'

HSTTWO-3912: Allow to set a custom HTTP Forwarded-For header names by 
configurin…

See merge request !15
- - - - -
6bf34355 by Ard Schrijvers at 2017-02-07T17:10:53+01:00
HSTTWO-3864 Reintegrate feature/caching-psp1

- - - - -
1259b7b7 by Ard Schrijvers at 2017-02-07T17:40:01+01:00
HSTTWO-1003 fix copyright typo

- - - - -
0a42d458 by Ard Schrijvers at 2017-02-08T13:16:06+01:00
HSTTWO-3916 Make sure CacheStat is never null

If CacheStat object does not get wired by Spring, make sure it is not null

- - - - -
0ad12bf7 by Arent-Jan Banck at 2017-02-16T15:19:20+01:00
HSTTWO-3921 prepare for next development iteration (v12.0)

- - - - -
516d5367 by Arent-Jan Banck at 2017-02-21T12:31:18+01:00
HSTTWO-3921 Bump dependency versions to match 12.0 updates

- - - - -
47ac8d6e by Arent-Jan Banck at 2017-02-22T11:46:07+01:00
HSTTWO-3921 Update parent version to 29-SNAPSHOT

- - - - -
f7c8c558 by Jeroen Hoffman at 2017-02-23T14:17:26+01:00
HSTTWO-3805 Merge branch 'master' into bugfix/HSTTWO-3805

- - - - -


30 changed files:

- api/pom.xml
- api/src/main/java/org/hippoecm/hst/core/container/PageCacheKey.java
- 
api/src/main/java/org/hippoecm/hst/core/container/RequestInfoCacheKeyFragmentCreator.java
- client-modules/cms-rest/pom.xml
- client-modules/google-analytics/hst/pom.xml
- client-modules/google-analytics/pom.xml
- client-modules/google-analytics/repository/pom.xml
- client-modules/page-composer/pom.xml
- client-modules/pom.xml
- client/pom.xml
- client/src/test/java/org/hippoecm/hst/servlet/util/BinariesCacheTest.java
- cms-restapi/pom.xml
- commons/pom.xml
- + 
commons/src/main/java/org/hippoecm/hst/core/jcr/OptionalEventListenerItemImpl.java
- commons/src/main/java/org/hippoecm/hst/util/HstRequestUtils.java
- commons/src/test/java/org/hippoecm/hst/util/TestHstRequestUtils.java
- components/core/pom.xml
- + components/core/src/main/java/org/hippoecm/hst/cache/CompositeHstCache.java
- 
components/core/src/main/java/org/hippoecm/hst/cache/PageCacheEventListener.java
- 
components/core/src/main/java/org/hippoecm/hst/cache/ehcache/CacheElementEhCacheImpl.java
- 
components/core/src/main/java/org/hippoecm/hst/cache/ehcache/HstCacheEhCacheImpl.java
- + components/core/src/main/java/org/hippoecm/hst/cache/jmx/CacheStats.java
- + 
components/core/src/main/java/org/hippoecm/hst/cache/jmx/CacheStatsMXBean.java
- 
components/core/src/main/java/org/hippoecm/hst/cache/webfiles/WebFilesEventListener.java
- 
components/core/src/main/java/org/hippoecm/hst/configuration/environment/OptionalEnvironmentEventListenerItemImpl.java
- 
components/core/src/main/java/org/hippoecm/hst/configuration/model/HstManagerImpl.java
- 
components/core/src/main/java/org/hippoecm/hst/core/container/DefaultRequestInfoCacheKeyFragmentCreator.java
- 
components/core/src/main/java/org/hippoecm/hst/core/container/HstSitePipeline.java
- 
components/core/src/main/java/org/hippoecm/hst/core/container/PageCachingValve.java
- 
components/core/src/main/java/org/hippoecm/hst/core/container/WebFileValve.java


The diff was not included because it is too large.


View it on GitLab: 
https://code.onehippo.org/cms-community/hippo-site-toolkit/compare/9db1ca0d388d2115614b9b6ed7d70549bb55d2f9...f7c8c5582020bf49f2df428ca72bc547aa57da57
_______________________________________________
Hippocms-svn mailing list
Hippocms-svn@lists.onehippo.org
https://lists.onehippo.org/mailman/listinfo/hippocms-svn

Reply via email to