You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-dev@jackrabbit.apache.org by Julian Reschke <re...@apache.org> on 2024/11/15 05:10:58 UTC

[ANNOUNCE] Apache Jackrabbit Oak 1.72.0 released

The Apache Jackrabbit community is pleased to announce the release of
Apache Jackrabbit Oak 1.72.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.72.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.72.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.72.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.72.0
---------------------

Technical task

     [OAK-11023] - Remove usage of Guava newArrayList
     [OAK-11078] - Remove usage of Guava checkArgument
     [OAK-11104] - Remove usage of Guava Preconditions.checkState
     [OAK-11116] - Remove usage of Guava Sets.newHashSetWithExpectedSize()
     [OAK-11117] - Remove usage of Guava Sets.newLinkedHashSet
     [OAK-11118] - Remove usage of Guava Sets.newTreeSet
     [OAK-11148] - Remove usage of Guava Atomics.newReference
     [OAK-11153] - Create utils in oak-commons to convert iterables 
set/linkedHashSet and to support HashSet/LinkedHashSet with known capacity
     [OAK-11171] - Create benchmark
     [OAK-11188] - Create utils in oak-commons to convert iterables to 
TreeSet
     [OAK-11189] - Remove usage of Guava Maps.newConcurrentMap
     [OAK-11191] - Remove usage of Guava Lists.newLinkedList
     [OAK-11192] - Remove usage of Guava Maps.newLinkedHashMap
     [OAK-11193] - Remove usage of Guava Sets.newIdentityHashSet
     [OAK-11195] - Create utils in oak-commons to convert iterables to 
LinkedList and create IdentityHashSet
     [OAK-11205] - Remove usage of Guava Maps.newTreeMap
     [OAK-11206] - Removal of Guava Queues.newArrayDeque
     [OAK-11207] - Remove usage of Guava Lists.partition
     [OAK-11208] - Create utils in oak-commons to partition lists
     [OAK-11210] - Create utils in oak-commons to convert iterables to 
ArrayDeque
     [OAK-11211] - Removal of Guava Queues.newArrayBlockingQueue
     [OAK-11213] - Remove usage of Guava Queues.newConcurrentLinkedQueue
     [OAK-11222] - Remove usage of Guava newArrayList (no param variant)
     [OAK-11228] - remove usage of newArrayListWithExpectedSize
     [OAK-11229] - remove usage of newArrayList(Iterable/Iterator)
     [OAK-11239] - Remove usage of Guava newArrayList(vargargs) in test 
classes

Bug

     [OAK-10957] - oak-run datastorecheck broken for AWS since 1.22.14
     [OAK-11111] - CachedPrincipalMembershipReader could return empty 
principal under concurrency
     [OAK-11131] - indexing-job: AOT Blob downloader may download blobs 
that are not needed for the indexes
     [OAK-11145] - indexing-job: indexer statistics show wrong value for 
makeDocument time
     [OAK-11146] - RDBDocumentStore should handle queries with '>' 
condition on 0x00
     [OAK-11156] - VersionGarbageCollectorIT fails to dispose some 
DocumentStore instances
     [OAK-11157] - indexing-job/parallel download: if one of the 
download tasks fails, the download is interrupted but considered as 
successful
     [OAK-11161] - Fix cases where checkArgument is used with the 
incorrect template syntax
     [OAK-11169] - MongoVersionGCSupport (oak-document-store) uses 
incorrect syntax for sort mongodb function
     [OAK-11186] - Failure in RDBConnectionHandlerTest
     [OAK-11204] - Incorrect order with more than 2^16 segments in 
remote archive
     [OAK-11218] - FullGC Exclude list parsing should ignore an Array of 
empty String
     [OAK-11231] - FullGC iterates same documents on certain cases
     [OAK-11242] - AzureRepositoryLock: Thread should not die silently 
on any kind of error
     [OAK-11243] - oak-segment-azure tests have broken package names
     [OAK-11245] - fix java.net.http wiring in oak-search-elastic
     [OAK-11249] - Lease refresh thread in AzureRepositoryLock should 
catch and log Throwable

Improvement

     [OAK-11026] - ExternalGroupPrincipalProvider needs to cache results 
of local group resolution
     [OAK-11062] - document-store: refine skipping of MongoDB tests
     [OAK-11139] - Allow downloading only recently changed nodes from 
MongoDB
     [OAK-11142] - org.apache.jackrabbit.oak.plugins.memory is for 
internal use only and should be marked as such
     [OAK-11151] - rdbmk: when wrapping into DocumentStoreException, add 
message for causing exception to new message
     [OAK-11174] - VersionGCSupportTest should use standard fixtures
     [OAK-11175] - rdbmk: use StandardCharsets.UTF_8 where applicable
     [OAK-11176] - rdbmk json support: use LongUtils.tryParse()
     [OAK-11178] - rdbmk: address Java warnings
     [OAK-11179] - RDB*: remove 'throws' clause from connection handler 
'close', tune exception messages
     [OAK-11181] - SystemPropertySupplier: add feature to avoid logging 
of values (for instance, passwords)
     [OAK-11183] - rdb: refactor system test property handling and 
availability checks
     [OAK-11187] - Implement NodeImpl.getParentOrNull
     [OAK-11197] - oak-search-elastic: pre-compute and store random 
values to improve statistical facets performance
     [OAK-11200] - Make JackrabbitSession.getParentOrNull() use 
JackrabbitNode.getParentOrNull
     [OAK-11214] - Support "IN" restrictions for functions
     [OAK-11230] - CollectionUtils: relax generics constraints on 
iterator-consuming methods
     [OAK-11232] - indexing-job - Simplify download from Mongo logic by 
traversing only by _modified instead of (_modified, _id)
     [OAK-11233] - Don't apply MongoDockerRule if the Mongo Docker image 
isn't actually used.
     [OAK-11234] - Use virtual clock to generate test content on Mongo 
document store in Pipelined strategy IT tests
     [OAK-11235] - Tree store path iterator filter: nextIncludedPath bugfix
     [OAK-11238] - indexing-job - de-duplicate entries in sorted batches 
when saving them to disk

Test

     [OAK-11250] - flaky RDBConnectionHandlerTest
     [OAK-11254] - backgroundPurge interferes with fullgc tests

Task

     [OAK-10745] - Osgi Config for a delayFactor & batch-size while 
removing fullGC
     [OAK-10953] - Migrate from elastiknn to ES native vector search
     [OAK-11063] - oak-search-elastic: integrate inference api as 
experimental feature
     [OAK-11113] - Perform cleanup after 
CompressedDocumentPropertyStateTest runs for RDB-H2
     [OAK-11138] - add test coverage for changing a persisted namespace 
mapping when node exists that uses the prefix
     [OAK-11147] - RDBMK: update PostgreSQL driver/database
     [OAK-11150] - add documentation about how to run DBs in Docker 
(here: PostgreSQL)
     [OAK-11152] - Segment copy - avoid instantiation of source 
persistence if it is not null
     [OAK-11158] - indexing-job/downloader - Move the conversion of 
Mongo responses to NodeDocument from the download to the transform threads
     [OAK-11168] - update mongo-driver version to 3.12.14
     [OAK-11172] - add documentation about how to run DB2 in Docker
     [OAK-11173] - Update (shaded) Guava to 33.3.1
     [OAK-11177] - Update commons-io dependency to 2.17.0
     [OAK-11196] - oak-auth-ldap: update mina dependency to 2.1.8
     [OAK-11198] - commons: add helper class for argument checking
     [OAK-11203] - Add delayFactor and progress/batchSize for fullGC in 
Oak-Run Command
     [OAK-11209] - commons: add helper class for state checking
     [OAK-11226] - Create Sets.newConcurrentHashSet api in oak-commons

Documentation

     [OAK-10759] - JavaDoc of o.a.j.o.namepath.PathMapper is inaccurate
     [OAK-11237] - Document external membership caching properties
     [OAK-11241] - Document mechanism for registering MBeans


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/