The Apache Jackrabbit community is pleased to announce the release of
Apache Jackrabbit Oak 1.68.0. The release is available for download at:
http://jackrabbit.apache.org/downloads.html
See the full release notes below for details about this release:
Release Notes -- Apache Jackrabbit Oak -- Version 1.68.0
Introduction
------------
Jackrabbit Oak is a scalable, high-performance hierarchical content
repository designed for use as the foundation of modern world-class
web sites and other demanding content applications.
Apache Jackrabbit Oak 1.68.0 is an incremental feature release based
on and compatible with earlier stable Jackrabbit Oak 1.x
releases. This release is considered stable and targeted for
production use.
While Oak 1.68.0 compiles and tests successfully on Java 17, Javadocs
generation fails on Java 17 (but works as expected on Java 11).
The Oak effort is a part of the Apache Jackrabbit project.
Apache Jackrabbit is a project of the Apache Software Foundation.
Changes in Oak 1.68.0
---------------------
Technical task
[OAK-6762] - Convert oak-blob to OSGi R7 annotations
[OAK-6773] - Convert oak-store-composite to OSGi R7 annotations
[OAK-10941] - oak-run: avoid use of Guava's ClassToInstanceMap
[OAK-10945] - Remove usage of Guava Function interface
[OAK-10955] - remove unused import of
java.io.UnsupportedEncodingException
[OAK-10961] - Remove usage of Guava Predicate interface
[OAK-11004] - Remove usage of Guava Supplier interface
[OAK-11010] - Remove usage of Guava newHashMap
[OAK-11012] - Remove usage of Guava Objects.equal()
[OAK-11013] - Remove usage of Guava Optional
Bug
[OAK-10985] - Index defintion with a property rule having
valueExcludedPrefixes not getting considered for like condition on that
property
[OAK-10994] - Update Mockito dependency to 5.12.0
[OAK-10998] - OrderableNodesTest#orderableAddManyChildrenWithSave()
does not call save()
[OAK-11002] -
VersionGCWithSplitTest.gcWithConcurrentSplit[MongoFixture: MongoDB] -
teardown fails with NPE
Story
[OAK-10978] - Skip Azure compaction when there's not enough garbage
in the repository
New Feature
[OAK-10991] - document-store: allow to skip tests for MongoDB
Improvement
[OAK-10803] - Compress in-memory property values
[OAK-10904] - Use daemon thread for token refresh executor
[OAK-10905] - Create a configurable job to create checkpoints at a
defined interval of time
[OAK-10913] - SQL-2 grammar: remove documentation for "distinct"
[OAK-10951] - Make cache size in PersistedLinkedList class configurable
[OAK-10965] - indexing job: Sporadic failure at the end of the dump
phase
[OAK-10966] - Indexing job: create optimized version of
PersistedLinkedList
[OAK-10968] - Avoid creating auxiliary string in PathUtils.isAncestor
[OAK-10971] - Add a method PathUtils.isDirectAncestor
[OAK-10972] - JsonDeserializer: do not rely on
NumberFormatExceptions in the common case when parsing doubles
[OAK-10976] - Avoid unnecessary call to PathUtils.getName in
IndexDefinition
[OAK-10977] - Cleanup IndexDefinition class
[OAK-10984] - Improve invocations of logging API to follow best
practices for parameter passing in search/indexing modules
[OAK-10988] - Minor performance improvements to
NodeStateEntryReader/Writer
[OAK-10989] - Performance improvements to JSON parsing
[OAK-10990] - In calls to Precondition.checkState() always use
string templates instead of concatenation to avoid creating a string
when the condition passes
[OAK-10995] - indexing-job: when accessing the backing array of a
ByteBuffer, use buffer.arrayOffset() in index calculations of array
[OAK-10996] - indexing-job: cache interned strings in a local
hashmap to avoid calling String.intern too frequently
[OAK-10999] - indexing-job: report nodes that take the longest to index
[OAK-11006] - indexing-job: better logging of text extraction
statistics
[OAK-11007] - Reformat FulltextBinaryTextExtractor
[OAK-11008] - AzureBlobStore: do not create a new
CloudBlobContainer instance for every request to the backend
Task
[OAK-10705] - oak-standalone: update dependencies
[OAK-10748] - Improve statistics to collect which type of garbage
is present/deleted
[OAK-10821] - webapp: bump htmlunit to 4.4.0
[OAK-10848] - commons: remove use of slf4j.event.Level in
SystemPropertySupplier API and implementation
[OAK-10921] - Fix race condition while resetting fullGC variables
from oak-run
[OAK-10938] - oak-doc: update branch history in roadmap
[OAK-10940] - oak-jcr: improve error message when mongo test
fixture fails
[OAK-10944] - oak-auth-ldap: update commons-pool2 dependency to 2.12.0
[OAK-10949] - blob-cloud, segment-aws: update aws SDK to 1.12.761
(dependencies reference vulnerable amazon ion-java version)
[OAK-10954] - Update spotbugs plugin to 4.8.6.2
[OAK-10959] - webapp: update Tomcat dependency to 9.0.90
[OAK-10960] - blob-cloud, segment: update netty version to 4.1.111
[OAK-10962] - oak-solr-osgi: update zookeeper dependency to 3.9.2
[OAK-10964] - Update com.nimbusds:nimbus-jose-jwt from 9.30.2 to 9.37.2
[OAK-10979] - document-store, jcr, run: use consistent Derby version
[OAK-10983] - DocumentNodeStore: improve documentation about testing
[OAK-10993] - commons: add better diagnostics to 'FixturesHelper'
[OAK-10997] - jcr: OrderableNodeTest with many children may fail
with RDB (Derby) due to OOM
[OAK-11003] - Update commons-codec dependency to 1.17.1
[OAK-11014] - Write test case to prove fullGC working correctly
with bundled property nodes
[OAK-11015] - Create fullGC Mode for empty properties only
[OAK-11019] - Flaky VersionGCSupportTest with RDB
[OAK-11021] - Remove unused instance in VersionGCRecommendations
In addition to the above-mentioned changes, this release contains all
changes up to the previous release.
For more detailed information about all the changes in this and other
Oak releases, please see the Oak issue tracker at
https://issues.apache.org/jira/browse/OAK
Release Contents
----------------
This release consists of a single source archive packaged as a zip file.
The archive can be unpacked with the jar tool from your JDK installation.
See the README.md file for instructions on how to build this release.
The source archive is accompanied by SHA512 checksums and a
PGP signature that you can use to verify the authenticity of your
download. The public key used for the PGP signature can be found at
https://www.apache.org/dist/jackrabbit/KEYS.
About Apache Jackrabbit Oak
---------------------------
Jackrabbit Oak is a scalable, high-performance hierarchical content
repository designed for use as the foundation of modern world-class
web sites and other demanding content applications.
The Oak effort is a part of the Apache Jackrabbit project.
Apache Jackrabbit is a project of the Apache Software Foundation.
For more information, visit http://jackrabbit.apache.org/oak
About The Apache Software Foundation
------------------------------------
Established in 1999, The Apache Software Foundation provides organizational,
legal, and financial support for more than 140 freely-available,
collaboratively-developed Open Source projects. The pragmatic Apache License
enables individual and commercial users to easily deploy Apache software;
the Foundation's intellectual property framework limits the legal exposure
of its 3,800+ contributors.
For more information, visit http://www.apache.org/