Powered by Zoomin Software. For more details please contactZoomin

MarkLogic Bug Fixes

Issues fixed in MarkLogic Server 12.0.1

  • Last Updated: April 6, 2026
  • 4 minute read
    • MarkLogic Server
    • Documentation

Released: December 4, 2025

The following issues have been addressed in this release:

Bug ID Details
MLE-25264 Optic queries issued via the Java Client API that access a TDE view may create unnecessary locks under certain conditions. Even after this fix, this may still happen if all of the columns in the TDE view are nullable. To prevent this, be sure at least one column in the TDE view is not nullable.
MLE-25262 Using the op:ann-top-k() / op.annTopK() function fails when a TDE includes a virtual column with nullable=false and the data has been written to an on-disk stand. Queries return no results even though rows contain valid values, and selecting the vector column causes a server crash. The issue does not occur when the data remains in an in-memory stand or when the virtual column is set to nullable=true.
MLE-25261 Selecting only system columns (e.g. rowid) from a virtual view results in a segmentation fault. Select at least one other non-system column to prevent the segmentation fault.
MLE-25254 SQL queries that use UNION and UNION ALL are not handled correctly in the query the plan cache, as it does not keep the ALL property into consideration when creating the plan hash. This can result in the wrong cached query plan being used for certain queries.
MLE-25253 Deeply nested SQL SQLUnion can cause severe performance degradation due to slow query analysis.
MLE-25244 Under conditions where a time correction happens while MarkLogic is in the process of starting, log messages reporting the wrong value for Info:recursiveChown events may appear. e.g. Info:recursiveChown took 1844674407370 seconds
MLE-25242 Executing a SPARQL query that uses the xdmp:unnest magic property without a filter clause results in the error XDMP-UNDVAR: Undefined variable. When a filter is added, the query works correctly.
MLE-25161 The "Now" button on the Monitoring web page will function off local time rather than server time. If the local user is on a different time zone than the server, the history graph could be missing recent results.
MLE-25160 The logout page for applications running on appservers 8002 and 8000 does not display the expected UI header/label that is visible during normal logged-in sessions.
MLE-25158 Tables on status pages could be disfigured on smaller screens. When the browser window is resized, table columns are truncated and replaced with ellipsis (...), making some content inaccessible.
MLE-25157 In the Database Status tab, cache status tables (List Cache, Compressed Tree Cache, Triple Cache, Triple Value Cache, Large Binary Cache) display empty rows for replica forests. While the Forest Status table correctly lists both primary and replica forests (e.g., 6 primary + 6 replica), the cache tables show placeholders for replicas without any data, resulting in misleading empty rows.
MLE-25156 Restarting the Host via Admin UI results in a 404 Not Found error.
MLE-25155 When switching quickly from the Monitoring Dashboard to Monitoring History, the following error appears in the browser console:

Uncaught TypeError: self.controlPanel.stop is not a function

MLE-25153 Restore operations from S3 in MarkLogic 12.0.0 may intermittently hang and trigger segmentation faults. Restarting the server may allow the restore to complete.
MLE-25152 The Admin UI Cluster API Tokens page will not render correctly when accessing the Admin UI on a host that does not have the security forest mounted locally. The XDMP-FORESTNOTLOCALerror is thrown when rendering the page. To work around, access the Admin UI via the host that also has the security forest.
MLE-25151 Restore of an incremental backup with an external large data path writes the data alongside the large directory, instead of inside it, resulting in an improper restore of the large data directory.
MLE-25149 When installing the MarkLogic 12.0.0 RPM or the MarkLogic 11.3.1 RHEL9 package on RHEL 8 and 9 systems, the server automatically starts immediately after the installation completes. This behavior was not present in previous (non-RHEL9 compatible) RPMs (e.g. 11.3.1 on RHEL 7 or 8).
MLE-25148 Passing a vector embedding via bound parameter to v1/rows does not handle the parameter as a typed value.
MLE-25107 In MarkLogic 12.0.0, certain SQL queries do not consider the broadcast-hash-join optimization, potentially resulting in slower performance for queries.
MLE-25105 The xdmp:sql(query, 'map') function with the "map" option returns an incorrect count when using fn:count() on the resulting sequence. The count is one higher than the actual number of items.
MLE-25102 When using the Optic API with op:ann-top-k() / op.annTopK() for vector similarity search, changing the query vector does not immediately update the results. The results from the previous query vector will be returned until the Optic query plan cache times out.
MLE-25021 In the footer of the XCC Javadocs, there is a link to https://developer.marklogic.com/pubs that is broken and returns HTTP 404 response.
MLE-24924 MarkLogic 12.0.0 AMI would start the MarkLogic service before the step to source EC2 user data. If values are passed in as environment variables in the user data, these would not be set correctly prior to MarkLogic starting.
MLE-24796 The value set for the MLCMD_JAVAOPTS variable in MLCMD is not compatible with Java 17.
MLE-24772 In MarkLogic 12.0.0, when new hosts join a cluster, the commit and non-blocking timestamp may be set to an invalid value. This manifests as an error in the admin UI when viewing the database status page:

The non-blocking timestamp for the 'Documents' forest is 'nonblockingTimestamp': '8795705594687171969', XDMP-DATETIME: xdmp.timestampToWallclock(xs.unsignedLong('8795705594687171969')) -- Invalid dateTime 29842-06-25T19:24:28.7171969

MLE-24586 When attempting to clear a forest after removing the label file, the server would still check for the label file which leads to segmentation fault.

CVEs Addressed

  • CVE-2025-9230
  • CVE-2025-9231
  • CVE-2025-9232
TitleResults for “How to create a CRG?”Also Available inAlert