$ git clone https://github.com/jay-johnson/docker-schema-prototyping-with-mysql.git
$ ./start_composition.sh
Once in a while, you may need to cleanup resources (containers, volumes, images, networks) ...
// see: https://github.com/chadoe/docker-cleanup-volumes
$ docker volume rm $(docker volume ls -qf dangling=true)
$ docker volume ls -qf dangling=true | xargs -r docker volume rm
java -Xmx4g -jar target/oak-run.jar console --quiet /path/to/segmentstore
import groovy.json.JsonSlurper | |
//Get data from here: /system/sling/monitoring/mbeans/org/apache/jackrabbit/oak/%2522SessionStatistics%2522.2.json | |
def file = '/Users/brobert/Desktop/all_sessions.json' as File | |
def sanitizeStacktrace = {trace-> | |
if (trace.contains("loginAdministrative")) { | |
def lines = trace.split("\n") | |
def startIdx; | |
for (def idx=0; idx < lines.length; idx++) { |
Note that offline compaction requires a long duration of downtime from 30 minutes to 7 hours (and in extreme cases more time).
Offline Oak compaction with debug logging:
MongoDB Storage (aka "MongoMK") and RDBMK:
Revision GC:
12.09.2015 00:00:00.857 *INFO* [pool-7-thread-10] org.apache.jackrabbit.oak.plugins.document.VersionGarbageCollector Starting revision garbage collection. Revisions older than [2015-09-11 00:00:00.857] would be removed
13.09.2015 00:00:15.912 *INFO* [pool-7-thread-9] org.apache.jackrabbit.oak.plugins.document.VersionGarbageCollector Iterated through 10000 documents so far. 9698 found to be deleted
14.09.2015 00:00:49.358 *INFO* [pool-7-thread-12] org.apache.jackrabbit.oak.plugins.document.VersionGarbageCollector Deleted 859050 (58.28%) documents so far
12.09.2015 00:39:43.490 *INFO* [pool-7-thread-10] org.apache.jackrabbit.oak.plugins.document.VersionGarbageCollector Version garbage collected in 39.71 min. VersionGCStats{ignoredGCDueToCheckPoint=false, deletedDocGCCount=180021, splitDocGCCount=4853, intermediateSplitDocGCCount=441, timeToCollectDeletedDocs=14.62 min, timeTakenToDeleteDocs=23.52 min}
# Adding include/exclude rules to CQ/AEM package filters through cURL. | |
# Through a simple search, you will find numerous lists of CQ/AEM cURL commands. | |
# However, I haven't seen an example of adding rules to package filters. The | |
# JSON "rules" key takes an array value. You can leave the array empty if you | |
# don't need to include any rules. The array is of JSON objects with a | |
# "modifier" key and value of "include" or "exclude", and a "pattern" key with | |
# your path or regular expression as the value. | |
# create package |
11 #Bundle Id | |
slinginstall:/path/to/foo.jar #Bundle original location | |
32 #Persistence State (INSTALLED, RESOLVED etc) | |
1 #Start level | |
1358768421064 #Last modified | |
0 #Refresh Count |