github OpenIdentityPlatform/OpenDJ 5.2.0

6 hours ago

What's Changed

  • CVE-2026-102648 DSMLv2 gateway: incomplete internal-address check allows SSRF when anyURI dereferencing is enabled, thanks @tonghuaroot, @maximthomas ❤️
  • GHSA-jr68-5c58-j463 DSMLv2 gateway changes XML data binding of other applications in the same JVM, thanks @leanworld7-netizen, @maximthomas ❤️
  • GHSA-c5gp-3768-jc59 OAuth2 file token authorization lets an unauthenticated client select files outside the token directory, thanks @manus-pi, @Kr1shna4garwal, @maximthomas ❤️
  • GHSA-7778-jm7p-68g5 LDAP listener lets unauthenticated clients hold connections until the server stops accepting new ones, thanks @Kr1shna4garwal, @maximthomas ❤️
  • GHSA-6f6q-q9gw-4jr4 Sort and VLV controls let authenticated users learn password hashes and other attributes hidden by access control, thanks @daveaitel-openai, @maximthomas ❤️
  • [#747] fix flaky MS SQL MERGE upsert PRIMARY KEY violation with WITH (HOLDLOCK) by @vharseko in #750
  • [#748] stabilize flaky GrizzlyLDAPConnectionFactoryTestCase.testResourceManagement by @vharseko in #749
  • [#746] remove stale opendj-server-legacy jar during upgrade by @vharseko in #751
  • Bump ch.qos.logback to 1.5.38 by @prthakre in #752
  • Bump org.bouncycastle by @prthakre in #754
  • [#755] wait for the LDAP listener after in-process server (re)start by @vharseko in #756
  • Fix java/insecure-randomness CodeQL alerts by using SecureRandom by @vharseko in #758
  • Fix all cpp/ CodeQL code-scanning alerts in Windows build-tools by @vharseko in #757
  • Fix java/implicit-cast-in-compound-assignment CodeQL alerts by @vharseko in #759
  • Fix java/regex-injection CodeQL alert in TargAttrFilters by @vharseko in #760
  • Fix remaining cpp/ CodeQL code-scanning alerts in Windows build-tools by @vharseko in #762
  • [#766] Fix flaky GrizzlyLDAPListenerTestCase load-balancer tests by @vharseko in #767
  • [#770] Fix flaky PostConnectedDisconnectTest by @vharseko in #771
  • Fix java/zipslip CodeQL alerts by validating archive entry paths by @vharseko in #761
  • Fix java/local-temp-file-or-directory-information-disclosure CodeQL alerts by using NIO temp file APIs by @vharseko in #763
  • Fix java/redos CodeQL alert in LDIFChangeRecordReader by @vharseko in #764
  • Fix java/tainted-arithmetic CodeQL alerts by @vharseko in #765
  • [#768] Fix winlauncher.exe stop reporting success without stopping the server by @vharseko in #772
  • [#769] Report stop progress to the SCM and never leave the service STOP_PENDING by @vharseko in #773
  • CVE-2026-54291 PostgreSQL JDBC Driver: Silent channel-binding authentication downgrade via unsupported certificate algorithms by @dependabot[bot] in #774
  • Fix java/maven/non-https-url CodeQL alert by dropping the unused Oracle HTTP repository by @vharseko in #775
  • Fix java/comparison-with-wider-type CodeQL alert in SNMPMonitor.pow by @vharseko in #777
  • Fix java/rsa-without-oaep CodeQL alert by dropping the RSA PKCS#1 v1.5 fallback by @vharseko in #776
  • Fix java/overly-large-range CodeQL alerts by correcting the A-z letter ranges by @vharseko in #779
  • Harden GitHub Actions workflows: least-privilege permissions and SHA-pinned actions by @vharseko in #778
  • Fix java/sleep-with-lock-held CodeQL alert in ControlPanelInfo.stopPooling() by @vharseko in #780
  • Fix wrong-equals-signature and inconsistent-equals-and-hashcode CodeQL alerts in AttributeDescription by @vharseko in #783
  • Remove the never-populated globalArgumentMap from SubCommandArgumentParser by @vharseko in #786
  • Remove containers whose contents are never read (java/unused-container CodeQL alerts) by @vharseko in #784
  • Fix java/equals-on-unrelated-types CodeQL alerts by @vharseko in #781
  • Fix type-mismatch, index-out-of-bounds and boxed-equality CodeQL alerts by @vharseko in #782
  • Fix concurrency and equals-contract CodeQL alerts by @vharseko in #785
  • Notify connection event listeners when an internal connection is closed by @vharseko in #787
  • Fix java/unsynchronized-getter CodeQL alerts in DebugLogPublisher by @vharseko in #788
  • Fix CodeQL warning-severity alerts: weak salt PRNG, unsafe DCL, thread-unsafe date formats by @vharseko in #789
  • Fix CodeQL warning-severity alerts: missed wakeups, resource leaks, escaping threads by @vharseko in #790
  • Add explicit default clauses to switches flagged by java/missing-case-in-switch by @vharseko in #791
  • Fix CodeQL warning-severity alerts: dead checks, boxed locals and three null dereferences by @vharseko in #793
  • [#792] Fail fast when the replication server cannot bind its listen port by @vharseko in #795
  • [#794] Wait for the listen port to be open before returning from connection handler start by @vharseko in #796
  • [#797] Retry the deletion of the embedded server temporary directory on close() by @vharseko in #798
  • Fix CodeQL warning-severity alerts: process stream ownership and two leaks by @vharseko in #799
  • [#800] Allocate the replication test listen ports per invocation by @vharseko in #803
  • [#801] Drop the rerunFailingTestsCount setting that never applied to TestNG by @vharseko in #804
  • [#808] fix MS SQL MERGE upsert conversion deadlock with WITH (HOLDLOCK, UPDLOCK) by @vharseko in #810
  • [#807] Do not drop persistent search notifications through search-phase dedup by @vharseko in #812
  • [#809] Fix DSML gateway NPE on abandonRequest and on missing Content-Type by @vharseko in #811
  • [#802] Fail fast when the replication server cannot read its changelog by @vharseko in #805
  • Fix CodeQL note-severity alerts: array logging and uncaught NumberFormatException by @vharseko in #817
  • [#815] Wait for the topology to settle before asserting RS side DS counts by @vharseko in #822
  • [#828] Fix infinite loop picking the errors-encountered LDIF file name by @vharseko in #839
  • [#821] Unregister the handler when a handshake aborts after registration by @vharseko in #838
  • Fix CodeQL note-severity alerts: missing @OverRide annotations by @vharseko in #837
  • Fix CodeQL note-severity alerts: dead parameters of private methods by @vharseko in #834
  • Fix CodeQL note-severity alerts: deprecated JDK calls and inefficient expressions by @vharseko in #823
  • Fix CodeQL note-severity alerts: calls to the deprecated Entry compatibility methods by @vharseko in #826
  • [#816] Unmap only the locked domainMap in FileChangelogDB.removeDomain() by @vharseko in #827
  • Fix CodeQL note-severity alerts: uncaught NumberFormatException in the tools, the GUI and SNMP by @vharseko in #829
  • Remove the stale migration deprecations of ObjectClass and AttributeDescription by @vharseko in #832
  • [#819] Release the log when a changelog DB constructor cannot read its limits by @vharseko in #833
  • Fix CodeQL note-severity alerts: confusing overloads with subtype parameters by @vharseko in #840
  • Fix CodeQL note-severity alerts: ignored error status of file and stream calls by @vharseko in #814
  • Fix CodeQL note-severity alerts: uncaught NumberFormatException in the examples by @vharseko in #831
  • [#825] Cap the batchRequest count per SOAP body and the request body size in the DSML gateway by @vharseko in #835
  • Fix CodeQL note-severity alerts: stale @PARAM tags by @vharseko in #842
  • Fix CodeQL note-severity alerts: nested classes which never use the enclosing instance by @vharseko in #846
  • Fix CodeQL note-severity alerts: Thread.run() calls and getters leaking internal state by @vharseko in #847
  • [#824] Answer each batchRequest of a SOAP body with its own batchResponse by @vharseko in #836
  • Fix CodeQL note-severity alerts: shadowed locals, and the array cases of the debug formatter by @vharseko in #848
  • Fix CodeQL note-severity alerts: confusable class and method names, and an unused verifier by @vharseko in #849
  • Fix CodeQL note-severity alerts: the leftovers of the already-fixed rules by @vharseko in #850
  • [#813] Refuse to create a replica DB once the changelog shutdown has started by @vharseko in #820
  • [#841] Fix flaky InitOnLineTest: notify the requester when a remotely requested export cannot start by @vharseko in #845
  • [#818] Drop the empty domain map a replica DB creation leaves behind when it bails out by @vharseko in #830
  • [#843] Cap the number of operations accepted per batchRequest in the DSML gateway by @vharseko in #844
  • [#851] Add upgrade task for RFC 5805 transaction extended operation handlers by @vharseko in #852
  • Disable duplicate JSON access logger in the default configuration by @vharseko in #668
  • Generate entryUUID from a per-thread SecureRandom by @vharseko in #683
  • Avoid global write lock on every delete in GroupManager by @vharseko in #682
  • Skip replication processing when no replication domain is configured by @vharseko in #681
  • Avoid full attribute walk for types without subordinate types by @vharseko in #679
  • Use LongAdder for LDAPStatistics counters by @vharseko in #678
  • Make AciList reads lock-free with true copy-on-write by @vharseko in #674
  • Reduce per-bind allocations on the bind hot path by @vharseko in #672
  • Replace per-operation backend read lock with a scalable shared-access gate by @vharseko in #680
  • Remove per-bind global lock contention in AuthenticatedUsers by @vharseko in #660
  • Remove global digestLock serialization in digest password storage schemes by @vharseko in #667
  • Avoid global monitor on every bind in getDefaultPasswordPolicy by @vharseko in #669
  • Remove per-attribute read lock from CompressedSchema decode path by @vharseko in #670
  • CVE-2025-59250 false positive: bump mssql-jdbc to 13.4.0.jre11 by @vharseko in #856
  • Add Trivy vulnerability scanning for Docker images by @vharseko in #854
  • [#857] Iterate a snapshot of the connection set in AuthenticatedUsers.doPostResponse(modify) by @vharseko in #858
  • [#861] Fail fast when the CI Test replication step hangs by @vharseko in #862
  • [#860] Serve JDBC cursor repositioning from the fetched buffer and grow batches adaptively by @vharseko in #863
  • [#861] Fail fast when a total update request gets no answer by @vharseko in #864
  • Serve Cassandra cursor repositioning with CQL slice queries instead of a no-op iterator restart by @vharseko in #865
  • [#868] Release the import/export context before notifying the initialize task by @vharseko in #869
  • [#870] Stop replaying a rolled back read in the PersistIt backend by @vharseko in #871
  • [#885] Ask the catalog for the table of a tree by name by @vharseko in #886
  • Stamp JDBC backend tables with their tree name and refresh optimizer statistics after import by @vharseko in #866
  • Seek the primary key in the SQL Server upsert and retry a transaction conflict by @vharseko in #867
  • Report the OpenDJ container healthy only once its bootstrap has succeeded by @vharseko in #898
  • Wait for the renamed entry before reading the naming conflict monitor by @vharseko in #895
  • Let one package-info stand per package, and aggregate Javadoc before the merge by @vharseko in #899
  • [#872] Bound the connect of the JDBC pool and report a connect it cannot make by @vharseko in #876
  • [#874] Grant the offline tools a read-only JDBC transaction instead of refusing it by @vharseko in #880
  • [#879] Skip the validation of a pooled JDBC connection returned a moment ago by @vharseko in #883
  • [#890] Persist a compressed schema token before handing it out, and report the ones with no definition by @vharseko in #894
  • [#873] Give each backend its own compressed schema trees by @vharseko in #881
  • [#905] Warn when a replication handshake fails and document CA-signed certificates by @vharseko in #906
  • [#877] Bound a statement of the JDBC backend by the class of the work it belongs to by @vharseko in #882
  • Modernize Debian and RPM packaging (systemd, dedicated user, CI tests) by @vharseko in #663
  • [#878] Bound the JDBC connection pool and expire its connections one by one by @vharseko in #884
  • [#897] Skip a compressed schema definition stored under a key no encode hands out by @vharseko in #920
  • Modernize the Windows MSI: WiX v5, x64, upgrade from 5.1.x by @vharseko in #701
  • [#900] Time the ReplicaOfflineMsg grace period per replica, and spend it where the message can still be forwarded by @vharseko in #919
  • [#889] Keep a change the replay could not apply out of the ServerState by @vharseko in #892
  • [#910] Test that a ModifyDN conflict is still solved while server-error-result-code is one of the conflict codes by @vharseko in #938
  • [#888] Name the trees of a JDBC backend from a catalog in the database by @vharseko in #893
  • [#909] Cover the change a stopped replay thread hands back to the replication server by @vharseko in #941
  • [#939] Pin isServerFailure() directly, so the conflict result codes are guarded by @vharseko in #960
  • [#918] Record a ReplicaOfflineMsg as sent only when it really was published by @vharseko in #946
  • [#921] Bound the transaction replay of PDBStorage.write() by @maximthomas in #937
  • [#907] Change the base DNs of a pluggable backend outside the write the storage replays by @maximthomas in #914
  • [#885] Give a connection of the JDBC pool a read bound of its own, and take it off for a statement that carries none by @maximthomas in #934
  • [#924] Clear the disabled flag before a domain enables its session by @vharseko in #971
  • [#903] Grant the first replay of a conflict, and bound the rest by its class by @maximthomas in #904
  • [#917] Wait for every peer replication server to forward the ReplicaOfflineMsg by @vharseko in #947
  • [#891] Give the trees of an import connections of their own by @vharseko in #940
  • [#901] Make the replay retry budget of a replication domain configurable by @vharseko in #944
  • [#908] Wait for the changes being applied before a domain going down saves its ServerState by @vharseko in #945
  • [#916] Keep an update that lands during a ServerState save out of the saved flag by @vharseko in #948
  • Budget the Windows leg's runtime in wait-msi-artifact, not the queue it sits in by @vharseko in #989
  • [#955] Answer a ModifyDN whose entry is gone before the new superior is looked up by @vharseko in #965
  • [#885] Bound the wait of a JDBC DDL for a lock another session holds by @maximthomas in #936
  • [#911] Report the replication connections which used to be dropped in silence by @vharseko in #935
  • [#943] Refuse a domain configuration before it is written, not after it is live by @vharseko in #959
  • [#966] Tell the import and restore task listeners the task is over on every path by @vharseko in #969
  • [#951] Keep the persisted position when a domain drops its in-memory ServerState by @vharseko in #970
  • [#967] Keep the bookkeeping of a domain whose base entry is missing out of its configuration entry by @vharseko in #972
  • [#928] Compare the permissive-modify DN with the entry DN the operation reports by @vharseko in #973
  • [#927] Report a ds-sync-conflict marker AddMsg could not encode by @vharseko in #975
  • [#949] Report a ReplicaOfflineMsg the broker refused as not sent by @vharseko in #976
  • [#922] Give a change back when the replay which owns it is unwound by @vharseko in #958
  • [#963] Read the changelog again for a following replica the domain is ahead of by @vharseko in #964
  • [#926] Restart the session of a replication domain in one place, under the lock and the generation by @vharseko in #974
  • [#956] Tell a failed entryUUID search apart from an entry which is not there by @vharseko in #968
  • [#952] Keep a failed state write from killing the checkpointer and hanging the shutdown by @vharseko in #977
  • [#1031] Keep the replication test's admin and replication ports out of the ephemeral range by @vharseko in #1033
  • [#1046] Read the latest release with the workflow token, and fail the step when it comes back empty by @vharseko in #1047
  • [#913] Declare the crypto manager's SSL properties as requiring a server restart by @vharseko in #979
  • [#950] Announce a ReplicaOfflineMsg before it is published, not after it may have been forwarded by @vharseko in #978
  • [#953] Refuse a server-error-result-code which does not report a failure by @vharseko in #980
  • [#912] Provision the ads-truststore from an existing key store at setup time by @vharseko in #984
  • [#925] Keep asking for a session restart until it has run by @vharseko in #981
  • [#983] Interrupt the listen thread after the ReplicaOfflineMsgs are forwarded by @vharseko in #987
  • [#995] Classify the failure of a task on the message that reports it by @vharseko in #996
  • [#942] Warn once per interval that a change is being retried, not once per delivery by @vharseko in #982
  • [#986] Give back the changes a replay thread the pool stopped had parked by @vharseko in #988
  • [#991] Decide and report an index configuration change outside the write which is replayed by @vharseko in #997
  • [#993] Register an entry container's configuration listeners only once it has opened by @vharseko in #999
  • [#1036] Assert that a parked change is handed out, not which thread hands it out by @vharseko in #1037
  • [#962] Flag an admin action when a bounded storage write gives up on a configuration change by @maximthomas in #994
  • [#990] Drop what a previous index left behind instead of adopting it when an index is added by @vharseko in #998
  • [#885] Bound the create of the tree catalog, and say when an engine has no bound to give by @vharseko in #1003
  • [#961] Walk every link of a failure where the verdict decides something by @vharseko in #1004
  • [#963] Dump the state of the replication servers when a test fails by @vharseko in #1015
  • [#1012] Pin the commit of the post-import statistics refresh, and say why it is there by @vharseko in #1016
  • [#992] Apply the confidentiality of a backend index to the running backend by @vharseko in #1000
  • [#902] Name the table to the index guard of the JDBC backend the way the database stores it by @vharseko in #1001
  • [#896] Pin the replay of RootContainer.open, and the give-back of an open which is not replayed by @vharseko in #1002
  • [#933] Read a catalog table another session created while this one was creating it by @vharseko in #1005
  • [#932] Hand the bounds of a catalog connect in, so its cases stop setting them for the whole jvm by @vharseko in #1006
  • [#930] Build the names a JDBC backend gives its own trees once, from the id it was created with by @vharseko in #1007
  • [#931] Bound and escape the values a clear's report reads out of the database by @vharseko in #1008
  • [#1011] Wait out the connection limit an account is given of its own by @vharseko in #1018
  • [#1023] Delete every objectClass value a modification asks for by @vharseko in #1024
  • [#1025] Stop a restore which cannot lock its backend instead of completing it by @vharseko in #1027
  • [#1026] Close the import config on every path an import task can end on by @vharseko in #1028
  • [#1029] Send a directory server only the updates it gives send-window credit for by @vharseko in #1034
  • [#1040] Leave the session to a total update when a configuration change asks for a restart by @vharseko in #1042
  • [#1038] Pin the session lock and generation of #974, and the restart a configuration change does run by @vharseko in #1043
  • [#1039] Report a total update whose session stops before the DoneMsg as a failed import by @vharseko in #1044
  • [#929] Establish a catalog connection the way the pool establishes its own by @vharseko in #1009
  • [#915] Bound the wait of a write transaction for a row lock another session holds by @vharseko in #1010
  • [#1014] Report a ReplicaOfflineMsg as forwarded only to a peer which can decode it by @vharseko in #1019
  • [#1021] Reset the objectClass attribute of an entry when its object classes change by @vharseko in #1022
  • [#1017] Recognise a replication server by the address it names, not by the one its session came from by @vharseko in #1020
  • [#1059] Give no key up on import or rebuild under an index-entry-limit of 0 by @vharseko in #1060
  • [#1064] Replay a JE transaction ended by a lock conflict instead of giving it up at once by @vharseko in #1065
  • [#1067] Ask the memory quota whether an explicit db-cache-size fits instead of taking it by @vharseko in #1070
  • [#1071] Wrap the sources of the large values PDBStorageTest writes, so that four copies of a 63 MB value are not live at once by @vharseko in #1072
  • Add dependabot config and pin GitHub Actions to a commit SHA by @vharseko in #1073
  • [#1030] Keep the setup log out of the way of start-ds, and say when it is gone by @vharseko in #1032
  • [#1041] Claim the import context for the length of a session restart, and refuse the total update which lands across it by @vharseko in #1045
  • [#1048] Hold the session restart a released change asks for while a total update runs by @vharseko in #1049
  • Bump the github-actions group with 9 updates by @dependabot[bot] in #1083
  • Send what a replication session's publisher left queued when it is closed by @vharseko in #1035
  • [#1051] Replicate a change made under the Relax Rules control like any other by @vharseko in #1053
  • Keep PKCS5S2 usable on a FIPS-restricted JCE, and name the key wrapping property when the runtime has no RSA-OAEP by @vharseko in #1058
  • [#1061] Ask for the session restart under an owner as well, and leave it to the state checkpointer by @vharseko in #1062
  • [#1076] Walk every link of a connect failure where the verdict decides the retry by @vharseko in #1077
  • [#1078] Stop the MakeLDIF generator when a template import ends before its reader by @vharseko in #1082
  • [#1063] Give back what the open reserved rather than what the configuration says by then, and ask for a restart when the cache size changes by @vharseko in #1066
  • [#1050] Document the replication repair control, and test that a repaired modify stays on its replica by @vharseko in #1052
  • [#1055] Report a ReplicaOfflineMsg forwarded once it is written to the peer, not once it is queued by @vharseko in #1057
  • [#1088] Let the Docker image start under an arbitrary uid in group 0 by @vharseko in #1091
  • [#1068] Apply what a running backend takes of a configuration change, and ask for a restart for what it does not by @vharseko in #1069
  • [#1084] Keep the root password out of the log and off the command line when a Docker container joins replication by @vharseko in #1094
  • [#1096] Copy a value into Persistit once rather than twice, and write the large values of PDBStorageTest through a small buffer pool by @vharseko in #1097
  • [#1080] Give back the send-window permit of an update the writer drops, and count only what it sends by @vharseko in #1106
  • [#1085] Stop the server cleanly on SIGTERM in a container that bootstrapped its instance by @vharseko in #1098
  • [#1093] Hand the root password to the Docker bootstrap tools in a file by @vharseko in #1099
  • Refresh the Windows launchers only when their code changes, not their toolchain stamp by @vharseko in #1103
  • [#1081] Wrap with a 2048-bit key in the key wrapping check, and report a provider refusing with an Error by @vharseko in #1104
  • [#1075] Test the JDBC guards against a neighbouring MySQL database and Oracle schema by @vharseko in #1108
  • [#1074] Keep what says the connection is gone through the redaction of a connect failure by @vharseko in #1107
  • [#1095] Load a file based key store or trust store again when the file changes by @vharseko in #1101
  • [#1092] Probe the Docker container's health without binding as the root user by @vharseko in #1102
  • [#1109] Keep a connection handler listening when a change to it is rejected by @vharseko in #1110
  • [#1111] Refuse an HTTPS configuration without a key the handler can present, and leave a running HTTP handler as it is when one is applied by @vharseko in #1114
  • [#1087] Copy the secret volume on every start of the Docker image by @vharseko in #1100
  • [#1112] Listen on the configured listen-address in the HTTP connection handler and the JMX RMI connector by @vharseko in #1113
  • Update org.openidentityplatform.commons to 3.2.0 by @vharseko in #853
  • [#1117] Correct the default class of the governing-structure-rule virtual attribute, and check every default class exists by @vharseko in #1122
  • [#1116] Default the java-class of a new LDAP connection handler to LDAPConnectionHandler2 by @vharseko in #1124
  • [#1118] Register the shipped Referential Integrity plugin for the pre-operation types check-references needs, and refuse check-references without them by @vharseko in #1123
  • [#1133] Describe upgrade --force as performing the confirmed tasks, and say it does not accept the license by @vharseko in #1137
  • [#1119] Serve each LDAP connection handler with a transport of its own, built from its configuration by @vharseko in #1125
  • [#1120] Apply a change to plugin-type on an enabled plugin without disabling and enabling it again by @vharseko in #1127
  • [#1131] Escape the option placeholders of the generated reference, so AsciiDoc no longer reads them as missing attributes by @vharseko in #1142
  • [#1134] Give a VLV row of backendstat show-index-status its Confidential cell, so that its record count lands under Record Count by @vharseko in #1139
  • [#1136] Remove the unused DocBook xinclude supplements from the server tool messages by @vharseko in #1141
  • [#1135] Head the last near-limit column of backendstat show-index-status 80%, the threshold it counts from by @vharseko in #1138
  • [#1129] Point the guides' Javadoc links at the published apidocs, and resolve {opendj-version} in the uninstall and monitoring pages by @vharseko in #1140
  • [#1128] Replace the DocBook xinclude and olink leftovers of the generated reference with AsciiDoc by @vharseko in #1132
  • [#1144] Widen the ephemeral port range before the benchmark runs by @vharseko in #1145
  • [#1143] Do not report a Notice of Disconnection that cannot reach an already-closed client as an unhandled error by @vharseko in #1146
  • [#1150] Read the benchmark JTL with a CSV parser, so that an error whose message holds a comma reaches the step log by @vharseko in #1151
  • [#1149] Replay a rolled back PDB transaction until its conflict clears, bounded only by an optional db-txn-retry-time-limit by @vharseko in #1152
  • [#1147] Fail the doc build when a page leaves an AsciiDoc attribute unresolved by @vharseko in #1148
  • Bump the github-actions group with 3 updates by @dependabot[bot] in #1170
  • [#1154] Find the OpenIDM certificate by comparing names, not their string forms by @vharseko in #1162
  • [#1156] Keep colons inside the -J/--control value, and report an unreadable control value file instead of failing with a NullPointerException by @vharseko in #1163
  • [#1157] Quote BASE_DN when the Docker bootstrap creates the userRoot backend by @vharseko in #1164
  • [#1155] Make the rest2ldap bind templates and HTTP Basic credentials work as documented by @vharseko in #1165
  • [#1158] Split a check-references-filter-criteria value at its first colon, so the filter can contain one by @vharseko in #1167
  • [#1161] Keep bc-fips from seeding its DRBG from RDSEED in the test JVMs by @vharseko in #1168
  • [#1160] Report what start-ds printed when the server fails to start, and dump the quicksetup test instance's logs on a failed build by @vharseko in #1169
  • [#1173] Check the references of every managed attribute type of an add and every modification of a modify, not only the first by @vharseko in #1175
  • [#1086] Join replication in the background on every start of the Docker image by @vharseko in #1115
  • [#1159] Keep administrator-typed DNs intact in dsconfig batch lines, tools.properties and the SDK LDAPUrl by @vharseko in #1166
  • [#1172] Refuse a second check-references-filter-criteria value for an attribute type, and enforce all the filters of a configuration that already has one by @vharseko in #1174
  • Bump FreeMarker to 2.3.35 and fix the loadObjectClassesToMaps javadoc by @vharseko in #1176
  • [#1153] Parse the whole DN string, and build or split DN strings through DN instead of string operations by @vharseko in #1171
  • [#1180] Report the fail-over failure of the Grizzly proxy listener tests instead of timing out by @vharseko in #1181
  • Describe running, upgrading and removing the Docker image in the Installation Guide by @vharseko in #1179
  • Update Java version from 26 to 27 in build.yml by @vharseko in #1186
  • Fix Maven Central release: pin Maven 3.9.16, bump central-publishing to 0.11.0 by @vharseko in #1187
  • [#1178] Give the background join of the Docker image a server role, keep a failed bootstrap or upgrade unhealthy, and test the upgrade from a released image by @vharseko in #1184
  • Update commons.version to 3.2.1 by @vharseko in #1177
  • Apply Ubuntu security updates when building the Docker image by @vharseko in #1191
  • [#1188] Serialize and replace atomically the writes of the ads-truststore, and report a certificate it cannot take or drop by @vharseko in #1189
  • Wait for the background join to end before looking for the root password it leaves by @vharseko in #1193
  • [#1198] Take the own state of a replication server again after each answer of its peers when it gathers the monitoring data by @vharseko in #1205
  • Bump the github-actions group with 5 updates by @dependabot[bot] in #1212
  • [#1216] Keep the decoding error of the client filter when no LDAP connection is attached by @vharseko in #1217
  • [#1213] Try another free port when the offline connect of the proxy tests connects the client to itself by @vharseko in #1214
  • [#1090] Check replication convergence under load next to the Docker tests, and run the Docker tests of both images after their builds by @vharseko in #1192
  • [#1195] Publish every change done while a recovery runs, and end the recovery only once they are out by @vharseko in #1204
  • [#1207] Route total updates to a replica that has the server ID of a replication server, report such a replica, and draw the IDs of new replication servers and domains from one set by @vharseko in #1211
  • [#1206] Take a late handler of a replication server back to its queue only once its consumer has every change the queue lacks by @vharseko in #1219
  • [#1215] Check a replication server the topology already has against the configured ones again, from the URL it is known with or the one it now comes with by @vharseko in #1218
  • [#1056] Add the RSASVE/KDF-SHA256/AESKWP key wrapping transformation for runtimes without RSA-OAEP by @maximthomas in #1194
  • [#1202] [#1209] [#1222] Give the replication server a bounded time to give credit and to read once the broker is being stopped, and write nothing after a message given up by @vharseko in #1210
  • Use commons 3.2.2 to pick up BouncyCastle 1.86 by @vharseko in #1190
  • Refuse the local changes in HistoricalCsnOrderingTest only once the missing change publisher of the recovery before has left by @vharseko in #1226
  • [#1227] Keep the record a changelog cursor read in advance when the head log file it is positioned in is rotated by @vharseko in #1228

Full Changelog: 5.1.2...5.2.0

Backers

Thank you to all our backers! Become a backer 🙏

Sponsors

Support this project by becoming a sponsor. Your logo will show up here with a link to your website. Become a sponsor ❤️

Don't miss a new OpenDJ release

NewReleases is sending notifications on new releases.