Powered by Zoomin Software. For more details please contactZoomin

MarkLogic Bug Fixes

Issues fixed in MarkLogic Server 9.0-12

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

Released: Feb 13, 2020

The following issues have been addressed in this release:

Platform Component Bug ID Details
all Monitoring Dashboard BUG-54252

Inaccurate App Server Request Rate Meters

The metered app server and xdbc server request rates are too large. They should match the number of request log entries in the access log.

all Config Management BUG-53640

XDMP-VALIDATEUNEXPECTED for prop:lower-bound

Bad config may be created and you can see XDMP-VALIDATEUNEXPECTED for lower-bound.

all Query Console BUG-53964

Inaccurate permissions count in Query Console

An inaccurate document permissions count is displayed in Query Console under the explore tab for basic users

all xdmp BUG-53772

SVC-UTF8SEQ when calling sql:trim for strings containing non-Latin characters

The sql:trim function may raise SVC-UTF8SEQ if it is called on strings containing non-Latin characters such as 'ム'. This error may manifest through calling search:suggest.

all Query Console BUG-53728

Query Console: Unable to view large files

Query console becomes unresponsive when user tries to view a large file

all Config Management BUG-53557

Attempting to change field type with RMA/CMA raises error

Attempting to change the type of a field (from include/exclude to path, for example) with an RMA or CMA update raises a "bad field type" error.

all MarkLogic REST API BUG-53931

UTF-8 filenames for document batch write in REST API

To write a batch of documents, a client can POST a multipart/mixed payload to the /v1/documents endpoint of the REST API. The filename field of the Content-Disposition header within each part specifies the document URI for the content of the part. The REST API supports a UTF-8 value for the filename. While convenient, this support doesn't conform strictly to HTTP standards, especially for clients libraries that throw errors when building a part header that contains a UTF-8 value. Now, as an alternative, the REST API supports filename field with a percent-encoded UTF-8 value conforming to the subset of RFC8187 without a language specification. The format of such a field is as follows: filename*=UTF-8''THE_PERCENT_ENCODED_DOCUMENT_URI; as in filename*=UTF-8''%2FCXXXX_%C3%9C_9999.json;

all search BUG-53732

False negatives in index resolution with punctuation sensitive element word query

With element word and word positions enabled, a punctuation sensitive element word query with leading punctuation may fail to match in the index. The query plan shows word query terms starting at a non-zero relative position.

all Monitoring Dashboard BUG-52682

Monitoring Dashboard: Bar chart uses 1000 instead of 1024 when converting from MiB

Disk-space tab bar chart uses 1000 instead of 1024 when converting from MiB. The starting value is MiB reported by the OS, so converting to GB instead of GiB provides results that are inconsistent with values reported by the OS.

all Encryption at REST BUG-50158

The REST Management API supports internal and external KMS

The payloads for getting and setting security properties have been updated to reflect the fact that both internal and external KMS may be used. There is a very small backwards incompatibility here as the names of the properties returned by the call to get security properties have changed slightly. (They now include the string "-internal-")

all Admin API BUG-53684

Can't set Task Server file log level with REST

Setting the Task Server file log level didn't work using the REST Management API

all XQuery BUG-53843

XDMP-ARGTYPE does not truncate long messages

The XDMP-ARGTYPE error messages do not truncate the error message and output entire sequences or map:map instead of applying ellipses in the same manner that other error messages do. Additionally, when applying the simple mapping operator ! and the || string concatenation expression, the (extremely large) map is serialized in the message when in other exceptions it is not.

Azure Utility Computing BUG-52070

Support multiple data disk on Azure

We only support 1 data disk on Azure now. This change allows user to specify multiple data disks to be used by MarkLogic on Azure.

all SQL BUG-52782

Selecting multiple dates in PowerBI is slow

Queries generated from PowerBI reports that have constraints on multiple dates have poor performance

linux(64-bit) SQL BUG-53885

SQL sub-select unexpected token error

In some circumstances, a valid SQL query with sub-selects will result in " [SQL] XDMP-UNEXPECTED: (err:XPST0003) Unexpected token syntax error...".

all Admin API BUG-53520

Rolling upgrade status can be misleading when upgrading to a newer minor release.

Currently, when upgrading between a minor version and its patch release, there is no programatic way to verify that an upgrade has taken place. There should be an easy way for user to check than a cluster upgrade has indeed taken place and committed, especially in case of rolling upgrades.

EC2 DB Cloud & Cloud Infrastructure BUG-53469

AWS: wait-for-startup.xsh contains a hard-coded HTTP call

For the managed cluster feature, the wait-for-startup.xsh script contains a hard-coded call to the Admin GUI which assumes HTTP. This step is likely to fail consistently if the Admin GUI has been secured with SSL.

all Config Management BUG-52279

Disk space bar chart not showing on dashboard

Some charts are not showing on dashboard display.

all security BUG-53863

ldap authentication returns "Unknown authentication method"

ldap authentication with digest md5 does not work on Red Hat 8, returns "Unknown authentication method"

EC2 DB Cloud & Cloud Infrastructure BUG-53467

AWS: rename-host.xsh fails to rename host if Application Server on port 8002 has SSL enabled

If SSL is configured on port 8002 for the Manage Application Server, the process of renaming the host to persist cluster changes to Dynamo DB fails.

all XQuery BUG-53929

cts:stem produces wrong stem when called with no language parameter

When cts:stem is called in the context of fn:map or the mapping operator (!) over a sequence of strings and with no second (language) parameter, in the context of an outer eval or invoke (as is the case in Query Console), only the first stem uses the correct language.

all documentation BUG-53878

New pre-defined roles are now documented

Recently additional built-in roles have been added and they are now documented here: http://docs.marklogic.com/9.0/guide/admin/pre_def_roles

all mlcp BUG-53632

MLCP export query fails when the query filter has < character and output type is archive

MLCP export query fails when using query filter with < character in cts query, and output type is archive.

linux(64-bit) MarkLogic REST API BUG-53551

RMA set group 'xdqp-ssl-enabled' property fails

Attempting to change the value of the `xdqp-ssl-enabled` property in a group with RMA had no effect. That has been fixed.

all SQL BUG-54200

IBM Information Analyzer issuing queries using unsupported function LENGTH()

LENGTH() function is now supported and is the same as calling char_length()

all JSON BUG-52849

json-property-scope-query false negatives

Positions used with non-text JSON value queries may incorrectly miss documents

all MarkLogic REST API BUG-53690

Namespaces for extract-document-metadata in JSON query options

The extract-document-metadata instruction in query options specifies paths for extracting fragments from documents in the results for requests to the Java, Node.js, and REST API search requests. Previously, paths could use namespaces only when the query options were sent in XML format. Now, the namespaces property is supported when the query options are sent in the JSON format.

all Admin API BUG-53787

The REST Management API create target endpoint ignores verify-cert

The setting of the verify-cert option in HTTP options is ignored by the REST Management API. This has been fixed in the 9.0-12 release.

all Query Console BUG-53969

Session timeout configuration is missing for Admin UI, Query Console, and Monitoring History/Dashboard

Implemented session timeout feature for Admin UI, Query Console, and Monitoring History/Dashboard

all xdmp BUG-53881

Slow initial access to large range index

The first query-constrained lexicon access to a large range-index is very slow. For range indexes with billions of entries it could take many minutes.

all adminGUI BUG-53785

FlexRep: Unable to view/set verify-cert target configuration property through the Admin Console

Previously, it was not possible to view or set verify-cert target configuration property through the Admin Console: - filter-options - authentication method (http-options) - verify-cert (http-options)

all MarkLogic REST API BUG-54064

Creating a Scheduled Task using the ReST API and specifying task-enabled as false results in a task being created as enabled

Making a POST to http://hostname:8002/manage/v2/tasks?group-id=Default where the JSON payload contains "task-enabled" : false results in a Scheduled task being created with task-enabled being set to true. This bug has been corrected in 9.0-12.

all documentation BUG-54241

The default for bind method is missing in documentation for xdmp:ldap-lookup

The default for bind method is missing in documentation for xdmp:ldap-lookup

all Query Console BUG-53414

Unable to cancel Query Console queries

When the App-Services application server is renamed, or when there is more than one application server in a cluster named App-Services, canceling Query Console queries throws an error instead of canceling.

all Backup/Restore BUG-54004

backup does not cleanup if one forest finishes backup before the error

If one forest finishes the backup and the other forest got error, the backup directory is not cleanup properly

all search BUG-53786

False negatives with include-root=false and a long phrase

An element word or JSON property word query on a long phrase (more than 2 words) may fail to match where word positions are enabled and the word query field has include-root set to false and the element or property is not on the include list.

all Test infrastructure BUG-52759

SPARQL with external bindings slow

SPARQL queries under MarkLogic 9 may perform slower then under MarkLogic 8 in some circumstances when passing external bindings into the query.

linux(64-bit) Semantics BUG-54078

Intermittent wrong results returned for SPARQL query with quads pattern

SPARQL quads query sometimes returns an empty result

linux(64-bit) xdmp BUG-53994

Segmentation Fault in xdmp::ParseNode::putqs

Under some circumstances MarkLogic Server can encounter a segmentation fault during a value iteration; in the event where this was observed, xdmp::ParseNode::putqs was at the top of the stack trace.

all Admin API BUG-53788

REST Management API defaults flexrep target authentication method to basic

The Rest Management API call to create a flexrep target makes the default authentication method basic. This has been corrected in the 9.0-12 release of MarkLogic Server.

all Optic API BUG-53914

Ordering a TDE view by a nullable column is slow

Slow response is observed when using Orderby in an optic query on the template with a large set of documents by a nullable column.

all MarkLogic REST API BUG-53692

Receive XML properties as string in JSON payload

A REST API client can write and read document metadata as JSON or XML. Previously, when using JSON for document metadata, a REST API client could only persist properties in the "http://marklogic.com/xdmp/json/basic" namespace as written and read by the json:transform() function with the json:basic configuration. Now, when writing properties, the client can specify an XML prop:properties fragment as a JSON string. The structure of the JSON fragment is as follows: {"properties":{"$ml.xml": "<prop:properties>...</prop:properties>"}} To ensure that reading the properties as JSON emits the same structure, the properties are persisted with the following marker element: <rapi:json-serialization as="xml"/>

all xdmp BUG-53722

Separate app server http client thread pools

Each app server should have its own separate and private thread pool for http client threads. Large number of http client requests made on one app server should not adversely affect any other activity.

windows(64-bit) SQL BUG-54291

TDEs return empty or missing results

TDEs return empty or missing results when querying for single nullable columns, but return results when a nonnullable column is added. The behavior is triggered when new TDE templates are deployed with schema/view names that are the same as existing templates but have different capitalization.

all xdmp BUG-53775

Forests stuck in the event of a Journal file failing to close

Under extremely rare circumstances when a write error occurs during the process of closing a forest, the forest can be stuck in a perpetual state of closing - but never completing to reach the closed state.

all documentation BUG-54002

pki:authority-create-host-certificate throws error when optional arguments are skipped

pki:authority-create-host-certificate throws error when optional arguments are skipped

all Query Console BUG-53211

Downloading large query results in Query Console can append data to access log

When user clicks to download data results, the query data may be appended to the access log with GET method instead of POST/PUT method.

all mlcp BUG-54158

MLCP export with redaction throws XDMP-EXPNTREECACHEFULL

MLCP export query redacts on all the files returned from a cts search result instead of the correct splits, which causes an XDMP-EXPNTREECACHEFULL error

all adminGUI BUG-53948

Admin UI does not honor or retain forests order

A warning message will now be displayed in the Admin UI indicating that you can not use the Admin UI to configure forest order and to do so, you will need to use the Admin API.

all Scheduled Tasks BUG-52713

Host is allowed to be removed when scheduled task is attached to the host

Host should not be allowed to be removed till dependency is resolved by deleting scheduled tasks first.

TitleResults for “How to create a CRG?”Also Available inAlert