This is an automated email from the ASF dual-hosted git repository.
reschke pushed a change to branch OAK-11979
in repository https://gitbox.apache.org/repos/asf/jackrabbit-oak.git
from 444b02cff0 OAK-11979: Clean up *StringValue in JCR XML import
add acb8ef5e46 OAK-11977 Tree store: BufferOverflowException (#2571)
add caff4d4fe6 OAK-11899 - use default value in case config value can not
be parsed (#2509)
add 3c063ba36e OAK-11969 do not check the existence of the tree twice
(#2560)
add 58ff6a6b67 OAK-11934 - segment preloading for PersistentCache (#2569)
add 50fb8c17a4 OAK-11914 : removed usage of Guava's HashBasedTable (#2573)
add db6611ae79 OAK-11911 : exposed DirectExecutor from ExecutorUtils
(#2575)
add 024227bfda OAK-11981: blob-plugins - remove use of
TransientFileFactory (#2576)
add 9fdd0c6d58 OAK-11983: benchmarks: remove jackrabbit-core dependency
(#2577)
add b2891ea5c2 OAK-11980 - improve parallelization of I/O during
segment-azure initialization (#2574)
add 9378356382 OAK-11985 : added MongoServerUnavailableException into
transient errors (#2582)
add 61d5d281ec OAK-11982 move the calculation of the WARN limit out of the
constructor (#2585)
add 5327db1b07 OAK-11913 : created Forwarding executir service (#2580)
add a7d003db58 OAK-11935 : updating aws sdk from 1.x to 2.x (#2558)
add 5b482b50c6 OAK-11987 -
org.apache.jackrabbit.oak.segment.azure.tool.SegmentStoreMigrator.migrateBinaryRef
is missing a null check (#2586)
add 7abd23258b OAK-11984 Support UserId Change for External Users (#2581)
add d6ae90dac4 OAK-11936: Allow updating the inference config via JMX
(#2525)
add 312938bf9f OAK-11949: Sort union queries without "order-by" by score
(#2540)
add e96909ce6f OAK-11912 : created DirectExecutorServiuce in oak-commons
(#2579)
add 8a40452b5f OAK-11936: Allow updating the inference config via JMX -
fix package version
add 25540a8166 OAK-11936: Allow updating the inference config via JMX -
line ends in test case
add e60694347a OAK-11994 remove unused dependency to joda-time (#2593)
add e4b40dd935 OAK-11997: Log slow Mongo queries in DocumentNodeStore
(#2596)
add 0719ffa2a5 Revert "OAK-11936: Allow updating the inference config via
JMX - line ends in test case"
add d3a2cc15ba Revert "OAK-11936: Allow updating the inference config via
JMX - fix package version"
add eb2f3d30b3 Revert "OAK-11936: Allow updating the inference config via
JMX (#2525)"
add 152d62a856 Reapply "OAK-11936: Allow updating the inference config via
JMX (#2525)"
add 06802589f4 Reapply "OAK-11936: Allow updating the inference config via
JMX - fix package version"
add 0c282cd449 Reapply "OAK-11936: Allow updating the inference config via
JMX - line ends in test case"
add a6dd22dfb7 OAK-11996: Expand oak/docs/participating wrt to test
coverage and Sonar (#2594)
add 224a30b86f OAK-11999: Release Oak 1.88.0 - Candidate Release Notes
add 3c1feb82f4 [maven-release-plugin] prepare release jackrabbit-oak-1.88.0
add 7f9e804fac [maven-release-plugin] prepare for next development
iteration
add b00f6b296e OAK-11998: bump ES to 8.19.5, fix k for knn queries (#2597)
add 832f787918 OAK-11898: decouple ElasticSecureFacetAsyncProvider from
async iterator (#2564)
add 8954e2d8be OAK-11999: Release Oak 1.88.0 - Candidate Release Notes
add 476c0a6651 [maven-release-plugin] prepare release jackrabbit-oak-1.90.0
add 3438b02674 [maven-release-plugin] prepare for next development
iteration
add 2e25e460f2 Revert "[maven-release-plugin] prepare for next development
iteration"
add df5b9d14e6 Revert "[maven-release-plugin] prepare release
jackrabbit-oak-1.90.0"
add 3be003d73b [maven-release-plugin] prepare release jackrabbit-oak-1.88.0
add 1a02648c9b [maven-release-plugin] prepare for next development
iteration
add c2e3a09a49 OAK-12001: run CI on branch 1.22 as well (#2602)
add 735d737bfe OAK-11999: Release Oak 1.88.0 - update oak-doc* version
numbers
add 99f036a043 OAK-12003 Refactor code in AzurePersistenceManager (#2606)
add db194223ea OAK-11991 Optimize the oak-segment recovery process
add 7f9745b92f OAK-12004 Datastore: speedup datastore copy (#2607)
add 56b6e8e4c1 OAK-12005 - segment preloading graph-cache uses too much
heap (#2611)
add 022acbea03 OAK-12011: add sleep to avoid backgroundPurge to interfere
with tests (#2617)
add 70d3171447 OAK-12012 Sporadic SessionSaveDelayerConfigTest failure
(#2619)
add 319617313b OAK-12008 : Embed aws sdk 2.x jars into oak-blob-cloud
bundle (#2616)
add 484f7563de OAK-11916 : added exiting executor service in oak-commons
(#2622)
add 20c3e9afa3 OAK-11917 : added exiting scheduled executor service in
oak-commons (#2623)
add e5c3a35d8a OAK-11617: Provide oak-run commands to analyze and fix
inconsistencie… (#2615)
add 8396ba2425 OAK-11920 : removed usage of
MoreExecutors.newDirectExecutorService with oak-commons implementation (#2624)
add 77bd34615b OAK-11919 : removed usage of Guava's ListenableFutureTask
from prod files (#2627)
add 27c6f4ad6b OAK-12021: cleanup oak-blob-plugins pom (oak-commons
dependency)
add 0e69e97d72 OAK-12015: Improve diagnostics on property related
constraint violations
add e92676c99c OAK-12007 XPath with or conditions should not always be
converted to union (#2613)
add a503b4c2e8 OAK-12018 : replaced DirectExecutor.INSTANCE call with
ExecutorUtils.directExecutor (#2628)
add 203f7ccb68 OAK-12019 : replaced Guava's
MoreExecutors.getExitingExecutorService with oak-commons implementation (#2634)
add e2a478073e OAK-11830: Update pax-exam test dependency to 4.14.0
add 03c7a1c031 OAK-11830: Update pax-exam test dependency to 4.14.0 - fix
comp tests faling back to 4.13.1
add cceb21fe70 OAK-11830: Update pax-exam test dependency to 4.14.0 -
exclude oak-store-compostie for now
add 5f2b559e19 OAK-12020 : replaced Guava's
MoreExecutors.getExitingScheduledExecutorService with oak-commons
implementation (#2633)
add 6991969dfc OAK-12009 : provided support for GCP for new AWS sdk 2.x
(#2621)
add bb7ccca968 OAK-12025 : replaced Guava's SameThreadExecutorService
(#2637)
add dc2be0de07 OAK-11918 : removed Guava's ListeningExecutorService (#2638)
add c7adba4378 OAK-11731: expose NodeCounter (getEstimatedChildNodeCounts)
in Jackra… (#2625)
add 47fdbb3b54 OAK-12027 : added api to remove node and its descendants
starting fro… (#2636)
add 191fff61ad OAK-11924 : replaced Guava's
ForwardingListeningExecutorService with … (#2640)
add 737933bc24 OAK-11618: Remove usage of Guava Stopwatch (Groovy) (#2642)
add 7b05f5e35e OAK-10844: Disable BranchCommitGCTest due to flakiness
(#2641)
add 2c03a8ac69 OAK-12029 : replaced Guava's settable future with
CompletableFuture (#2644)
add 04b3a55020 OAK-11731: expose NodeCounter (getEstimatedChildNodeCounts)
in JackrabbitNode - test case tuning (#2645)
add 3f570f04d4 OAK-11923 : replaced Guava's ForwardingListenableFuture
(#2643)
add 0af7e4036a OAK-11924 : replaced Guava's
AbstractListeningExecutorService with native java implementation (#2646)
add 32763db8da OAK-11731: expose NodeCounter (getEstimatedChildNodeCounts)
in JackrabbitNode - avoid 2 mbeans with the same name (#2648)
add 969a96ff84 OAK-11922 : removed usage of guava's
MoreExecutors.listeningDecorator (#2647)
add d03c230eea OAK-12032 : replaced guava's UncheckedExecutionException
with runtimeexception (#2650)
add 15df8e26ac OAK-12031 : added jackrabbit-jcr-commons since now
jackrabbit-core is using it from its path used by oak-upgrade (#2649)
add f69242f977 Fix links
add f7cfe566c4 OAK-12034 - CachingSegmentArchiveReader#containsSegment
should not check the persistence cache for the segment (#2655)
add 06f15e15b0 OAK-12036 - Expose stats in the PersistentCache (#2657)
add 0dfb5c96e5 OAK-12033 : replaced Guava's Monitor with ReentrantLock
(#2654)
add 3328a1e2ba OAK-12030 Upgrade LZ4 (#2662)
add 64b6233aa7 OAK-12038: increase assertion time to avoid flakiness in
ElasticFacetTest (#2661)
add e92a4d4ea2 OAK-12040 - segment-azure: reduce HTTP requests for writes
(#2665)
add 7c96b777d2 OAK-12041 - bump testcontainers to v1.21.4 (#2666)
add fda8ae5120 OAK-12039 Treat transient client-side exceptions as
recoverable in AzureRepositoryLock (#2663)
add 2f909dc35c OAK-12039 test that verifies that lease renewal in
AzureRepositoryLockV8 correctly handles client timeout (#2667)
add d4ccb5a91e OAK-12043 - Avoid object allocation in SegmentID.compareTo
(#2668)
add f3b89f804b OAK-12044 - Optimize PathUtils.concat for the case where
parent is the root directory. (#2669)
add a00b5ad5fd preliminary release notes Oak 1.90.0
add 10310e9dc0 [maven-release-plugin] prepare release jackrabbit-oak-1.90.0
add 58be48a42e [maven-release-plugin] prepare for next development
iteration
add 6e505ee8e6 OAK-12045: strip leading and trailing whitespaces
(including newlines) from :fulltext (#2670)
add af1852f345 OAK-11960: oak-examples: The static content of the webapp
still refers to RMI features that are no longer supported (#2678)
add d0ae5c10bf OAK-12052 | oak-search-elastic: log entire request on query
failure (#2680)
add 9161ffe603 OAK-12053 | oak-search-elastic: set max analyzed offset for
highlights (#2681)
add 1d47358725 OAK-12047 - CachingSegmentArchiveReader#readSegment should
check if archive contains segment before looking up in the PersistentCache
(#2672)
add 9172022bf1 OAK-12056: Speed up NamespaceRegistryCommandTest by reusing
the NodeStore across tests. (#2683)
add d9389d8759 OAK-12037 : remove usage of Guava's Monitor from oak-lucene
(#2660)
add 38ef61394c OAK-11224: remove guava dependencies from POMs (ongoing) -
oak-lucene (#2685)
add 00c63ad99a OAK-12059: Update Oak trunk to Jackrabbit 2.22.3 (#2686)
add e8e8518d9c OAK-12061 : removed usage of guava's ThreadFactoryBuilder
(#2691)
add 468bbb103c OAK-12065 : added class to split locks similar to guava's
Striped (#2692)
add 98f6dd6cd5 OAK-12062 : fixed NPE while uploading metadata for AWS S3
(#2688)
add dca660dcb5 OAK-12064 : replaced guava striped with oak-commons
StripedLocks (#2694)
add e0b97e95a7 OAK-12067: Utils.alignWithExternalRevisions logs timestamps
with second resolution (#2693)
add f25b1e06a2 OAK-12068 - segment graph UUID deduplication (OAK-12005)
can be too inefficient (#2695)
add d6d21a1cfe OAK-12069 - reduce SegmentPreloader memory usage (#2696)
add 23db87cb3e OAK-12070 - Reduce memory consumption of azure segment
stores (#2699)
add 681194b36d OAK-11950 : removed guava's queues.drainUninterruptibly
(#2702)
add cb69ef73fa OAK-12074 : added awaitUninterruptibly() in oak-commons
(#2703)
add adbf972924 OAK-12071: fix property removal for externally modifiable
indexes (#2700)
add 62bead87ef OAK-12075 : replaced guava's
Uninterruptible.awaitUninterruptibly with oak-commons (#2704)
add 6e29d94f5a OAK-12076 : added sleepUninterruptibly() in oak-commons
(#2705)
add 2098a56191 OAK-12078 : replaced guava's
Uninterruptible.sleepUninterruptibly with oak-commons (#2710)
add 4cbf4d98e6 OAK-12081 : added isInOrder() in IterableUtils to check
whether all element of given iterable are in order as specified by given
comparator (#2713)
add f44a4ffc3a OAK-10344: oak-run ITs fail with failsafe >= 3.0.0 (#2709)
add 9e649fc365 OAK-12077 : added joinUninterruptibly() in oak-commons
(#2711)
add d27250b99b OAK-12080 : replaced guava's Comparators.isInOrder with
oak-commons implementation (#2715)
add 23596ba54c OAK-12069 - reduce SegmentPreloader memory usage (#2718)
add 6d7282e3ae OAK-11941: Upgrade (shaded) Guava to 33.5.0
add b2ce0cc5fc OAK-10342: Update Apache Parent POM to version 37 (#2716)
add e95b57a1a7 OAK-12083 : replaced guava's
Uninterruptible.joinUninterruptibly with oak-commons (#2717)
add 1e002ec2d6 OAK-12057 - Select same plan with or without LIMIT option
(#2684)
add d51ed270f8 OAK-12057 - Select same plan with or without LIMIT option -
version bump
add e0911b5a66 Revert "OAK-12057 - Select same plan with or without LIMIT
option - version bump"
add bba859f071 Revert "OAK-12057 - Select same plan with or without LIMIT
option (#2684)"
add 1a9db5490a OAK-12054: Refactor creation of ThreadPoolExecutors (fix
those that we in fact only running one thread) (#2679)
add 64b3962b5e Revert "OAK-12070 - Reduce memory consumption of azure
segment stores (#2699)"
add 86e9afe940 OAK-12063: Remove obsolete feature toggles
FT_NAME_IMPROVED_IS_NULL_COST, FT_OPTIMIZE_IN_RESTRICTIONS_FOR_FUNCTIONS, and
FT_NAME_PREFETCH_FOR_QUERIES (#2690)
add 5d56183616 OAK-12084 - Move GCGeneration class to exported SPI package
(#2725)
add c5da118c07 OAK-12070 - Reduce memory consumption of azure segment
stores (#2726)
add 30a82124a0 OAK-12086: oak-segment-tar: remove optional log4j dependency
add 6cf1ad4af7 OAK-12010 Simplified index management (without optimizer)
(#2689)
add f26a8848e7 OAK-12087 : bump netty to 4.1.131.Final (#2731)
add 375dce6f6e OAK-12088 : added connectionAcquisitionTimeout to avoid
acquire timeout issue (#2732)
add b417928a8d OAK-12082: add test coverage for
org.apache.jackrabbit.oak.jcr.xml.BuffferedStringValue (#2728)
add d35607dffc OAK-12085: OutOfMemory in oak-segment-azure tests -
reverting changes for OAK-12039 (#2738)
add 3b380ec47f OAK-12010 (Remove misplaced files)
add a32bfa696e Revert "OAK-12085: OutOfMemory in oak-segment-azure tests -
reverting changes for OAK-12039 (#2738)"
add efa3082bc3 OAK-12085 - OutOfMemory in oak-segment-azure tests (#2739)
add b4fd15ba02 OAK-12066: NPE in AstElement "quote()" (#2708)
add cff038536b OAK-11975: Use Mockito as an agent in Oak (#2653)
add 674bb7888e OAK-12010: Simplified index management - fix JSON
comparison in tests (#2741)
add db43ccd149 OAK-12090: Update commons-lang3 dependency to 3.20.0 (#2736)
add 6db9099f1b OAK-12092: Update commons-text dependency to 1.15.0 (#2742)
No new revisions were added by this update.
Summary of changes:
.github/workflows/build.yml | 1 +
RELEASE-NOTES.txt | 131 ++--
oak-api/pom.xml | 7 +-
.../jackrabbit/oak/api/jmx/InferenceMBean.java | 9 +
.../jackrabbit/oak/api}/jmx/NodeCounterMBean.java | 16 +-
.../jackrabbit/oak/api/jmx/package-info.java | 4 +-
oak-auth-external/pom.xml | 2 +-
.../external/impl/ExternalIdentityConstants.java | 7 +-
.../external/impl/ExternalLoginModule.java | 23 +-
.../authentication/external/package-info.java | 2 +-
.../external/impl/ExternalLoginModuleTest.java | 172 +++++
.../TestExternalUserIdCredentials.java} | 37 +-
.../impl/TestExternalUserIdIdentityProvider.java | 290 +++++++
oak-auth-ldap/pom.xml | 2 +-
oak-authorization-cug/pom.xml | 2 +-
oak-authorization-principalbased/pom.xml | 2 +-
oak-benchmarks-elastic/pom.xml | 2 +-
oak-benchmarks-lucene/pom.xml | 2 +-
.../jackrabbit/oak/benchmark/HybridIndexTest.java | 4 +-
oak-benchmarks/pom.xml | 6 +-
.../jackrabbit/oak/benchmark/BenchmarkRunner.java | 4 +-
.../jackrabbit/oak/benchmark/LoginSystemTest.java | 4 +-
.../jackrabbit/oak/benchmark/ReadPropertyTest.java | 4 +-
.../oak/benchmark/ReplicaCrashResilienceTest.java | 4 +-
oak-blob-cloud-azure/pom.xml | 2 +-
oak-blob-cloud/pom.xml | 273 ++++++-
.../oak/blob/cloud/s3/DataEncryption.java | 16 +-
.../jackrabbit/oak/blob/cloud/s3/S3Backend.java | 845 ++++++++++----------
.../oak/blob/cloud/s3/S3BackendHelper.java | 226 ++++++
.../jackrabbit/oak/blob/cloud/s3/S3Constants.java | 10 +-
.../oak/blob/cloud/s3/S3RequestDecorator.java | 178 ++---
.../apache/jackrabbit/oak/blob/cloud/s3/Utils.java | 610 +++++++++++----
.../oak/blob/cloud/s3/S3BackendHelperTest.java | 137 ++++
.../cloud/s3/S3DataRecordAccessProviderTest.java | 7 +
.../oak/blob/cloud/s3/S3DataStoreUtils.java | 100 +--
.../oak/blob/cloud/s3/S3RequestDecoratorTest.java | 509 ++++++++++++
.../blob/cloud/s3/TestS3DSWithSSECustomerKey.java | 32 +-
.../oak/blob/cloud/s3/TestS3DSWithSSEKMS.java | 26 +-
.../blob/cloud/s3/TestS3DSWithSSEKMSwithKey.java | 30 +-
.../oak/blob/cloud/s3/TestS3DSWithSSES3.java | 4 +
.../jackrabbit/oak/blob/cloud/s3/TestS3Ds.java | 186 +++--
.../jackrabbit/oak/blob/cloud/s3/UtilsTest.java | 204 +++++
oak-blob-cloud/src/test/resources/aws.properties | 9 +-
oak-blob-plugins/pom.xml | 10 +-
.../blob/AbstractSharedCachingDataStore.java | 25 +-
.../oak/plugins/blob/CompositeDataStoreCache.java | 6 +-
.../plugins/blob/MarkSweepGarbageCollector.java | 14 +-
.../plugins/blob/SameThreadExecutorService.java | 157 ----
.../oak/plugins/blob/UploadStagingCache.java | 34 +-
.../oak/plugins/blob/datastore/FSBackend.java | 11 +-
.../plugins/blob/AbstractDataStoreCacheTest.java | 63 +-
.../oak/plugins/blob/CachingDataStoreTest.java | 6 +-
.../plugins/blob/CompositeDataStoreCacheTest.java | 17 +-
.../blob/ConsolidatedDataStoreStatsTest.java | 2 +-
.../jackrabbit/oak/plugins/blob/FileCacheTest.java | 30 +-
.../AbstractDataRecordAccessProviderTest.java | 8 +
oak-blob/pom.xml | 7 +-
oak-commons/pom.xml | 15 +-
.../apache/jackrabbit/oak/commons/PathUtils.java | 7 +-
.../oak/commons/collections/IterableUtils.java | 35 +
.../oak/commons/collections/package-info.java | 2 +-
.../internal/concurrent/DirectExecutor.java | 3 +-
...ectExecutor.java => DirectExecutorService.java} | 47 +-
.../internal/concurrent/ExecutorHelper.java | 94 +++
.../commons/internal/concurrent/ExecutorUtils.java | 81 ++
.../concurrent/ForwardingExecutorService.java | 105 +++
.../commons/internal/concurrent/StripedLocks.java | 56 ++
.../internal/concurrent/UninterruptibleUtils.java | 148 ++++
.../commons/internal/concurrent/package-info.java | 2 +-
.../oak/commons/collections/IterableUtilsTest.java | 82 ++
.../concurrent/DirectExecutorServiceTest.java | 84 ++
.../internal/concurrent/DirectExecutorTest.java | 4 +-
.../internal/concurrent/ExecutorUtilsTest.java | 129 ++++
.../concurrent/ForwardingExecutorServiceTest.java | 156 ++++
.../internal/concurrent/StripedLocksTest.java | 129 ++++
.../concurrent/UninterruptibleUtilsTest.java | 288 +++++++
oak-core-spi/pom.xml | 2 +-
.../org/apache/jackrabbit/oak/cache/CacheLIRS.java | 7 +-
.../oak/commons/jmx/ManagementOperationTest.java | 13 +-
oak-core/pom.xml | 2 +-
.../main/java/org/apache/jackrabbit/oak/Oak.java | 36 +-
.../jackrabbit/oak/plugins/index/IndexName.java | 17 +
.../jackrabbit/oak/plugins/index/IndexUpdate.java | 21 +
.../index/counter/jmx/NodeCounterMBean.java | 38 +-
.../oak/plugins/index/diff/DiffIndex.java | 276 +++++++
.../oak/plugins/index/diff/DiffIndexMerger.java | 853 +++++++++++++++++++++
.../oak/plugins/index/diff/JsonNodeUpdater.java | 280 +++++++
.../plugins/index/diff/RootIndexesListService.java | 112 +++
.../oak/plugins/name/NamespaceRegistryModel.java | 54 +-
.../jackrabbit/oak/query/QueryEngineSettings.java | 32 +-
.../apache/jackrabbit/oak/query/SQL2Parser.java | 4 +
.../jackrabbit/oak/query/UnionQueryImpl.java | 58 +-
.../oak/query/ast/AstElementFactory.java | 23 +-
.../oak/query/ast/FullTextSearchImpl.java | 30 +-
.../jackrabbit/oak/query/ast/LowerCaseImpl.java | 3 -
.../oak/query/ast/NodeLocalNameImpl.java | 3 -
.../jackrabbit/oak/query/ast/NodeNameImpl.java | 3 -
.../oak/query/ast/NotFullTextSearchImpl.java | 8 +-
.../apache/jackrabbit/oak/query/ast/PathImpl.java | 3 -
.../jackrabbit/oak/query/ast/UpperCaseImpl.java | 3 -
.../jackrabbit/oak/query/index/FilterImpl.java | 6 -
.../jackrabbit/oak/query/xpath/Statement.java | 13 +-
.../oak/query/xpath/XPathToSQL2Converter.java | 3 +-
.../authentication/token/TokenProviderImpl.java | 9 +-
.../oak/plugins/index/diff/DiffIndexTest.java | 307 ++++++++
.../plugins/index/diff/JsonNodeUpdaterTest.java | 230 ++++++
.../oak/plugins/index/diff/MergeTest.java | 440 +++++++++++
.../metric/MetricStatisticsProviderTest.java | 4 +-
.../oak/plugins/name/NamespaceRegistryTest.java | 184 ++++-
.../oak/query/QueryCostOverheadTest.java | 38 +-
.../oak/query/QueryEngineSettingsServiceTest.java | 28 +-
.../jackrabbit/oak/query/UnionQueryTest.java | 214 ++++++
.../oak/query/xpath/XPathToSQL2Test.java | 171 +++++
.../jackrabbit/oak/plugins/index/diff/indexes.json | 187 +++++
oak-doc-railroad-macro/pom.xml | 2 +-
oak-doc/pom.xml | 2 +-
oak-doc/src/site/markdown/differences.md | 8 +-
oak-doc/src/site/markdown/participating.md | 7 +
oak-examples/pom.xml | 2 +-
oak-examples/standalone/pom.xml | 2 +-
oak-examples/webapp/pom.xml | 2 +-
oak-examples/webapp/src/main/webapp/header.jsp | 1 -
oak-examples/webapp/src/main/webapp/remote.jsp | 106 ---
oak-examples/webapp/src/main/webapp/welcome.jsp | 4 +-
oak-exercise/pom.xml | 2 +-
oak-http/pom.xml | 7 +-
oak-it-osgi/pom.xml | 9 +-
oak-it/pom.xml | 2 +-
oak-jackrabbit-api/pom.xml | 2 +-
.../org/apache/jackrabbit/api/JackrabbitNode.java | 9 +
.../org/apache/jackrabbit/api/package-info.java | 2 +-
oak-jcr/pom.xml | 2 +-
.../jackrabbit/oak/jcr/delegate/NodeDelegate.java | 5 +-
.../jackrabbit/oak/jcr/session/NodeImpl.java | 18 +-
.../jackrabbit/oak/jcr/session/SessionContext.java | 11 +
.../oak/jcr/session/SessionSaveDelayerConfig.java | 17 +-
.../oak/jcr/ConcurrentAddNodesClusterIT.java | 4 +-
.../jackrabbit/oak/jcr/JackrabbitNodeTest.java | 10 +-
.../apache/jackrabbit/oak/jcr/NodeCounterTest.java | 67 ++
.../fixtures/datastore/S3DataStoreFixture.java | 84 +-
.../nodestore/DocumentMemoryNodeStoreFixture.java | 22 +-
.../nodestore/DocumentMongoNodeStoreFixture.java | 21 +-
.../nodestore/SegmentMemoryNodeStoreFixture.java | 30 +-
.../jackrabbit/oak/jcr/nodetype/NodeTypeTest.java | 20 +
.../oak/jcr/observation/ExpectationListener.java | 32 +-
.../oak/jcr/random/RandomizedReadTest.java | 74 +-
.../jcr/session/SessionSaveDelayerConfigTest.java | 74 +-
.../jcr/session/WarnLogStringPropertySizeTest.java | 5 +-
.../oak/jcr/xml/BufferedStringValueTest.java | 279 +++++++
oak-lucene/pom.xml | 7 +-
.../oak/plugins/index/lucene/IndexCopier.java | 34 +-
.../index/lucene/LuceneIndexProviderService.java | 30 +-
.../plugins/index/lucene/hybrid/DocumentQueue.java | 4 +-
.../ActiveDeletedBlobCollectorMBeanImplTest.java | 13 +-
.../index/lucene/IndexCopierCleanupTest.java | 4 +-
.../oak/plugins/index/lucene/IndexCopierTest.java | 56 +-
.../plugins/index/lucene/IndexNodeManagerTest.java | 4 +-
.../oak/plugins/index/lucene/LuceneIndexTest.java | 6 +-
.../directory/AbstractActiveDeletedBlobTest.java | 4 +-
.../directory/ActiveDeletedBlobCollectorTest.java | 8 +-
.../ConcurrentCopyOnReadDirectoryTest.java | 4 +-
.../lucene/directory/CopyOnReadDirectoryTest.java | 4 +-
.../index/lucene/hybrid/DelayedFacetReadTest.java | 4 +-
.../index/lucene/hybrid/DocumentQueueTest.java | 16 +-
.../lucene/hybrid/ExternalIndexObserverTest.java | 6 +-
.../index/lucene/hybrid/FacetCacheTest.java | 4 +-
.../index/lucene/hybrid/HybridIndexClusterIT.java | 4 +-
.../index/lucene/hybrid/HybridIndexTest.java | 4 +-
.../lucene/hybrid/LocalIndexWriterFactoryTest.java | 6 +-
.../index/lucene/hybrid/ManyFacetsTest.java | 4 +-
...eadedOldLuceneFacetProviderReadFailureTest.java | 4 +-
.../index/lucene/hybrid/NRTIndexFactoryTest.java | 4 +-
.../plugins/index/lucene/hybrid/NRTIndexTest.java | 4 +-
.../index/lucene/hybrid/ReaderRefCountIT.java | 6 +-
oak-parent/pom.xml | 63 +-
oak-pojosr/pom.xml | 2 +-
oak-query-spi/pom.xml | 2 +-
.../apache/jackrabbit/oak/spi/query/Filter.java | 6 -
.../jackrabbit/oak/spi/query/QueryLimits.java | 18 +-
oak-run-commons/pom.xml | 6 +-
.../jackrabbit/oak/fixture/DataStoreUtils.java | 49 +-
.../apache/jackrabbit/oak/index/IndexHelper.java | 28 +-
.../indexer/document/tree/store/PageFile.java | 6 +-
.../oak/run/cli/NodeStoreFixtureProvider.java | 4 +-
.../indexer/document/tree/store/PageFileTest.java | 12 +
oak-run-elastic/pom.xml | 6 +-
oak-run/README.md | 34 +
oak-run/pom.xml | 10 +-
.../oak/console/commands/LuceneCommand.groovy | 2 +-
.../jackrabbit/oak/run/DataStoreCommand.java | 34 +-
.../jackrabbit/oak/run/DataStoreCopyCommand.java | 13 +-
.../org/apache/jackrabbit/oak/run/Downloader.java | 181 ++++-
.../oak/run/FrozenNodeRefsByScanningCommand.java | 5 +-
.../jackrabbit/oak/run/JsonIndexCommand.java | 4 +-
.../oak/run/NamespaceRegistryCommand.java | 44 +-
.../oak/run/NamespaceRegistryOptions.java | 4 +
oak-run/src/main/js/oak-mongo.js | 97 +++
.../jackrabbit/oak/run/DataStoreCommandTest.java | 31 +-
.../oak/run/NamespaceRegistryCommandTest.java | 163 +++-
oak-search-elastic/pom.xml | 12 +-
.../index/elastic/ElasticIndexDefinition.java | 5 +
.../index/elastic/ElasticIndexStatistics.java | 38 +-
.../elastic/index/ElasticBulkProcessorHandler.java | 2 +-
.../index/elastic/index/ElasticDocument.java | 7 +-
.../index/elastic/index/ElasticDocumentMaker.java | 22 +-
.../index/elastic/query/ElasticRequestHandler.java | 23 +-
.../query/async/ElasticResponseListener.java | 20 -
.../query/async/ElasticResultRowAsyncIterator.java | 19 +-
.../query/async/facets/ElasticFacetProvider.java | 3 +-
.../facets/ElasticSecureFacetAsyncProvider.java | 261 +++++--
.../elastic/query/inference/InferenceConfig.java | 24 +-
.../query/inference/InferenceMBeanImpl.java | 10 +-
.../plugins/index/elastic/ElasticContentTest.java | 80 ++
.../plugins/index/elastic/ElasticFacetTest.java | 2 +-
.../inference/ElasticInferenceUsingConfigTest.java | 50 +-
.../query/inference/InferenceConfigTest.java | 71 ++
oak-search/pom.xml | 2 +-
.../plugins/index/search/ExtractedTextCache.java | 31 +-
.../search/spi/editor/FulltextDocumentMaker.java | 63 +-
.../index/search/spi/query/FulltextIndex.java | 2 +
.../search/spi/query/FulltextIndexPlanner.java | 10 +-
.../jackrabbit/oak/plugins/index/ExcerptTest.java | 30 +-
.../oak/plugins/index/FacetCommonTest.java | 3 +-
.../oak/plugins/index/IndexQueryCommonTest.java | 26 +-
.../index/search/spi/query/IndexNameTest.java | 52 ++
oak-security-spi/pom.xml | 2 +-
.../oak/spi/security/ConfigurationParameters.java | 27 +
.../authentication/AbstractLoginModule.java | 8 +-
.../authentication/AuthenticationConstants.java | 53 ++
.../spi/security/authentication/package-info.java | 2 +-
.../authentication/token/TokenConstants.java | 6 +-
.../jackrabbit/oak/spi/security/package-info.java | 2 +-
.../spi/security/ConfigurationParametersTest.java | 45 +-
.../authentication/token/TokenConstantsTest.java | 3 +-
oak-segment-aws/pom.xml | 7 +-
.../oak/segment/aws/AwsSegmentArchiveReader.java | 63 +-
oak-segment-azure/pom.xml | 14 +-
.../oak/segment/azure/AzureArchiveManager.java | 141 +++-
.../oak/segment/azure/AzurePersistenceManager.java | 166 ++--
.../oak/segment/azure/AzureRepositoryLock.java | 29 +-
.../segment/azure/AzureSegmentArchiveReader.java | 50 +-
.../segment/azure/AzureSegmentArchiveWriter.java | 13 +-
.../oak/segment/azure/tool/AzureCompact.java | 2 +-
.../segment/azure/tool/SegmentStoreMigrator.java | 6 +-
.../segment/azure/v8/AzureRepositoryLockV8.java | 4 +-
.../azure/v8/AzureSegmentArchiveReaderV8.java | 43 +-
.../oak/segment/azure/AzureArchiveManagerTest.java | 368 +++++----
.../oak/segment/azure/AzureJournalFileTest.java | 14 +-
.../oak/segment/azure/AzureReadSegmentTest.java | 20 +-
.../oak/segment/azure/AzureRepositoryLockTest.java | 232 +++++-
.../azure/AzureSegmentArchiveWriterTest.java | 44 +-
.../oak/segment/azure/AzuriteDockerRule.java | 50 +-
.../oak/segment/azure/FileStoreTestUtil.java | 48 ++
.../segment/azure/tool/SegmentCopyTestBase.java | 63 +-
.../azure/v8/AzureArchiveManagerV8Test.java | 233 +++---
.../segment/azure/v8/AzureReadSegmentV8Test.java | 20 +-
.../azure/v8/AzureRepositoryLockV8Test.java | 148 +++-
.../azure/v8/AzureSegmentArchiveWriterV8Test.java | 12 +
.../split/SplitPersistenceBlobTest.java | 37 +-
.../persistence/split/SplitPersistenceTest.java | 12 +-
.../split/v8/SplitPersistenceBlobV8Test.java | 37 +-
.../split/v8/SplitPersistenceV8Test.java | 12 +-
oak-segment-remote/pom.xml | 2 +-
.../remote/AbstractRemoteSegmentArchiveReader.java | 105 ++-
.../remote/AbstractRemoteSegmentArchiveWriter.java | 6 +-
.../segment/remote/RemoteSegmentArchiveEntry.java | 34 +-
.../oak/segment/remote/package-info.java | 2 +-
.../AbstractRemoteSegmentArchiveReaderTest.java | 176 +++++
.../remote/RemoteSegmentArchiveEntryTest.java | 72 ++
.../persistentcache/PersistentDiskCacheTest.java | 8 +-
oak-segment-tar/pom.xml | 15 +-
.../oak/backup/impl/FileStoreBackupImpl.java | 2 +-
.../oak/backup/impl/FileStoreRestoreImpl.java | 2 +-
.../jackrabbit/oak/segment/CommitsTracker.java | 2 +-
.../oak/segment/DefaultSegmentWriter.java | 2 +-
.../oak/segment/DefaultSegmentWriterBuilder.java | 2 +-
.../org/apache/jackrabbit/oak/segment/Record.java | 2 +-
.../org/apache/jackrabbit/oak/segment/Segment.java | 4 +-
.../oak/segment/SegmentBufferWriter.java | 2 +-
.../oak/segment/SegmentBufferWriterPool.java | 2 +-
.../apache/jackrabbit/oak/segment/SegmentDump.java | 2 +-
.../apache/jackrabbit/oak/segment/SegmentId.java | 6 +-
.../oak/segment/SegmentNodeStoreMonitor.java | 2 +-
.../oak/segment/SegmentNodeStoreStats.java | 2 +-
.../oak/segment/SegmentWriterFactory.java | 2 +-
.../oak/segment/WriteOperationHandler.java | 2 +-
.../segment/file/AbstractCompactionStrategy.java | 2 +-
.../oak/segment/file/AbstractFileStore.java | 64 +-
.../file/AbstractGarbageCollectionStrategy.java | 2 +-
.../file/CleanupFirstCompactionStrategy.java | 2 +-
.../oak/segment/file/CleanupStrategy.java | 2 +-
.../oak/segment/file/CompactionResult.java | 2 +-
.../oak/segment/file/CompactionWriter.java | 2 +-
.../oak/segment/file/DefaultCleanupContext.java | 2 +-
.../oak/segment/file/DefaultCleanupStrategy.java | 2 +-
.../jackrabbit/oak/segment/file/FileStore.java | 32 +-
.../oak/segment/file/FileStoreBuilder.java | 54 +-
.../oak/segment/file/FullCompactionStrategy.java | 2 +-
.../jackrabbit/oak/segment/file/GCIncrement.java | 2 +-
.../jackrabbit/oak/segment/file/GCJournal.java | 4 +-
.../jackrabbit/oak/segment/file/GCListener.java | 2 +-
.../oak/segment/file/GarbageCollector.java | 2 +-
.../oak/segment/file/PrefixedGCListener.java | 2 +-
.../oak/segment/file/ReadOnlyFileStore.java | 23 +-
.../jackrabbit/oak/segment/file/Reclaimers.java | 2 +-
.../oak/segment/file/TailCompactionStrategy.java | 2 +-
.../oak/segment/file/preloader/SegmentIds.java | 64 ++
.../segment/file/preloader/SegmentPreloader.java | 413 ++++++++++
.../oak/segment/file/tar/CleanupContext.java | 2 +
.../oak/segment/file/tar/EntryRecovery.java | 1 +
.../jackrabbit/oak/segment/file/tar/TarFiles.java | 19 +-
.../jackrabbit/oak/segment/file/tar/TarReader.java | 9 +-
.../jackrabbit/oak/segment/file/tar/TarWriter.java | 1 +
.../jackrabbit/oak/segment/scheduler/Commit.java | 2 +-
.../oak/segment/scheduler/LockBasedScheduler.java | 2 +-
.../tar => spi/persistence}/GCGeneration.java | 30 +-
.../spi/persistence/SegmentArchiveReader.java | 16 +
.../persistentcache/AbstractPersistentCache.java | 1 +
.../CachingSegmentArchiveReader.java | 19 +-
.../persistentcache/DelegatingPersistentCache.java | 60 ++
.../persistentcache/PersistentCache.java | 8 +
.../PersistentCachePreloadingConfiguration.java | 92 +++
.../persistence/persistentcache/package-info.java | 2 +-
.../split/UnclosedSegmentArchiveReader.java | 7 +
.../segment/standby/client/StandbyClientSync.java | 2 +-
.../segment/AbstractCompactorExternalBlobTest.java | 4 +-
.../oak/segment/AbstractCompactorTest.java | 2 +-
.../CheckpointCompactorExternalBlobTest.java | 2 +-
.../oak/segment/ClassicCompactorTest.java | 4 +-
.../jackrabbit/oak/segment/CommitsTrackerTest.java | 4 +-
.../segment/CompactToDifferentNodeStoreTest.java | 2 +-
.../oak/segment/CompactionAndCleanupIT.java | 9 +-
.../jackrabbit/oak/segment/CompactorTestUtils.java | 2 +-
.../jackrabbit/oak/segment/NodeRecordTest.java | 4 +-
.../segment/ParallelCompactorExternalBlobTest.java | 2 +-
.../oak/segment/SegmentBufferWriterPoolTest.java | 18 +-
.../oak/segment/SegmentCompactionIT.java | 5 +
.../file/DefaultGarbageCollectionStrategyTest.java | 2 +-
.../jackrabbit/oak/segment/file/FileStoreIT.java | 38 +-
.../segment/file/FullCompactionStrategyTest.java | 2 +-
.../file/FullSizeDeltaEstimationStrategyTest.java | 2 +-
.../oak/segment/file/GCIncrementTest.java | 4 +-
.../jackrabbit/oak/segment/file/GcJournalTest.java | 2 +-
.../file/LargeNumberOfChildNodeUpdatesIT.java | 2 +-
.../oak/segment/file/ReclaimersTest.java | 4 +-
.../file/TailSizeDeltaEstimationStrategyTest.java | 2 +-
.../oak/segment/file/TarRevisionsTest.java | 6 +-
.../file/preloader/SegmentPreloaderTest.java | 404 ++++++++++
.../oak/segment/file/tar/GCGenerationTest.java | 41 -
.../oak/segment/file/tar/TarFileTest.java | 3 +-
.../oak/segment/file/tar/TarFilesTest.java | 3 +-
.../oak/segment/file/tar/TarWriterTest.java | 2 +-
.../segment/spi/persistence/GCGenerationTest.java | 87 +++
.../persistentcache/CachingPersistenceTest.java | 52 --
.../CachingSegmentArchiveReaderTest.java | 94 +++
.../persistentcache/MemoryPersistentCache.java | 73 ++
.../testutils/NodeStoreTestHarness.java | 3 +
oak-shaded-guava/pom.xml | 12 +-
oak-store-composite/pom.xml | 12 +-
oak-store-document/pom.xml | 2 +-
.../oak/plugins/document/Configuration.java | 8 +
.../oak/plugins/document/DocumentNodeStore.java | 11 +-
.../plugins/document/DocumentNodeStoreBuilder.java | 5 +-
.../plugins/document/DocumentNodeStoreService.java | 14 +-
.../document/locks/StripedNodeDocumentLocks.java | 7 +-
.../mongo/MongoDocumentNodeStoreBuilderBase.java | 19 +
.../plugins/document/mongo/MongoDocumentStore.java | 72 +-
.../oak/plugins/document/mongo/MongoUtils.java | 4 +-
.../oak/plugins/document/util/Utils.java | 7 +-
.../oak/plugins/document/BranchCommitGCTest.java | 9 +-
.../oak/plugins/document/DocumentNodeStoreIT.java | 37 +-
.../DocumentNodeStoreServiceConfigurationTest.java | 59 ++
.../plugins/document/HierarchyConflictTest.java | 15 +-
.../plugins/document/PrefetchDispatcherTest.java | 5 +-
.../oak/plugins/document/RevisionTest.java | 54 +-
.../plugins/document/SharedBlobStoreGCTest.java | 4 +-
.../oak/plugins/document/VersionGCSupportTest.java | 12 +-
.../bundlor/BundlingConfigHandlerTest.java | 4 +-
.../mongo/MongoDocumentStoreQueryWarningTest.java | 196 +++++
.../oak/plugins/document/mongo/MongoUtilsTest.java | 2 +
oak-store-spi/pom.xml | 2 +-
.../jackrabbit/oak/json/JsonNodeBuilder.java | 211 +++++
.../jackrabbit/oak/json/JsonNodeBuilderTest.java | 163 ++++
oak-upgrade/pom.xml | 12 +-
pom.xml | 2 +-
385 files changed, 14448 insertions(+), 3438 deletions(-)
copy {oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/counter
=>
oak-api/src/main/java/org/apache/jackrabbit/oak/api}/jmx/NodeCounterMBean.java
(90%)
copy
oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/{PreAuthCredentials.java
=> impl/TestExternalUserIdCredentials.java} (62%)
create mode 100644
oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/TestExternalUserIdIdentityProvider.java
copy
oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/internal/graph/package-info.java
=>
oak-blob-cloud/src/main/java/org/apache/jackrabbit/oak/blob/cloud/s3/DataEncryption.java
(79%)
create mode 100644
oak-blob-cloud/src/main/java/org/apache/jackrabbit/oak/blob/cloud/s3/S3BackendHelper.java
create mode 100644
oak-blob-cloud/src/test/java/org/apache/jackrabbit/oak/blob/cloud/s3/S3BackendHelperTest.java
create mode 100644
oak-blob-cloud/src/test/java/org/apache/jackrabbit/oak/blob/cloud/s3/S3RequestDecoratorTest.java
create mode 100644
oak-blob-cloud/src/test/java/org/apache/jackrabbit/oak/blob/cloud/s3/UtilsTest.java
delete mode 100644
oak-blob-plugins/src/main/java/org/apache/jackrabbit/oak/plugins/blob/SameThreadExecutorService.java
copy
oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/internal/concurrent/{DirectExecutor.java
=> DirectExecutorService.java} (52%)
create mode 100644
oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/internal/concurrent/ExecutorHelper.java
create mode 100644
oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/internal/concurrent/ExecutorUtils.java
create mode 100644
oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/internal/concurrent/ForwardingExecutorService.java
create mode 100644
oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/internal/concurrent/StripedLocks.java
create mode 100644
oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/internal/concurrent/UninterruptibleUtils.java
create mode 100644
oak-commons/src/test/java/org/apache/jackrabbit/oak/commons/internal/concurrent/DirectExecutorServiceTest.java
create mode 100644
oak-commons/src/test/java/org/apache/jackrabbit/oak/commons/internal/concurrent/ExecutorUtilsTest.java
create mode 100644
oak-commons/src/test/java/org/apache/jackrabbit/oak/commons/internal/concurrent/ForwardingExecutorServiceTest.java
create mode 100644
oak-commons/src/test/java/org/apache/jackrabbit/oak/commons/internal/concurrent/StripedLocksTest.java
create mode 100644
oak-commons/src/test/java/org/apache/jackrabbit/oak/commons/internal/concurrent/UninterruptibleUtilsTest.java
create mode 100644
oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/diff/DiffIndex.java
create mode 100644
oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/diff/DiffIndexMerger.java
create mode 100644
oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/diff/JsonNodeUpdater.java
create mode 100644
oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/diff/RootIndexesListService.java
create mode 100644
oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/diff/DiffIndexTest.java
create mode 100644
oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/diff/JsonNodeUpdaterTest.java
create mode 100644
oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/diff/MergeTest.java
create mode 100644
oak-core/src/test/java/org/apache/jackrabbit/oak/query/xpath/XPathToSQL2Test.java
create mode 100644
oak-core/src/test/resources/org/apache/jackrabbit/oak/plugins/index/diff/indexes.json
delete mode 100644 oak-examples/webapp/src/main/webapp/remote.jsp
create mode 100644
oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/NodeCounterTest.java
create mode 100644
oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/xml/BufferedStringValueTest.java
create mode 100644
oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/AuthenticationConstants.java
create mode 100644
oak-segment-azure/src/test/java/org/apache/jackrabbit/oak/segment/azure/FileStoreTestUtil.java
create mode 100644
oak-segment-remote/src/test/java/org/apache/jackrabbit/oak/segment/remote/AbstractRemoteSegmentArchiveReaderTest.java
create mode 100644
oak-segment-remote/src/test/java/org/apache/jackrabbit/oak/segment/remote/RemoteSegmentArchiveEntryTest.java
create mode 100644
oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/preloader/SegmentIds.java
create mode 100644
oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/preloader/SegmentPreloader.java
rename
oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/{file/tar =>
spi/persistence}/GCGeneration.java (83%)
create mode 100644
oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/spi/persistence/persistentcache/DelegatingPersistentCache.java
create mode 100644
oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/spi/persistence/persistentcache/PersistentCachePreloadingConfiguration.java
create mode 100644
oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/file/preloader/SegmentPreloaderTest.java
delete mode 100644
oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/file/tar/GCGenerationTest.java
create mode 100644
oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/spi/persistence/GCGenerationTest.java
create mode 100644
oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/spi/persistence/persistentcache/CachingSegmentArchiveReaderTest.java
create mode 100644
oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/spi/persistence/persistentcache/MemoryPersistentCache.java
create mode 100644
oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoDocumentStoreQueryWarningTest.java
create mode 100644
oak-store-spi/src/main/java/org/apache/jackrabbit/oak/json/JsonNodeBuilder.java
create mode 100644
oak-store-spi/src/test/java/org/apache/jackrabbit/oak/json/JsonNodeBuilderTest.java