Loading TOC...
Release Notes (PDF)

Release Notes — Chapter 5

Planning for Future Upgrades

This chapter provides guidelines and warnings for preparing for changes expected in a future release, such as announcements of deprecated interfaces. You are not required to make changes related to the topics in this section at this time, but you should plan to do so in the future.

Packaging API Deprecated

In MarkLogic 9, the Packaging API has been deprecated. It will be removed from the product in MarkLogic 10.

info and infodev APIs Deprecated

The XQuery library modules in the info and infodev namespaces are deprecated as of MarkLogic 9 and will be removed from the product in a future release. For example, the functions info:ticket and infodev:ticket-create are deprecated.

Annotated Query Output from search:parse Deprecated

The search:parse XQuery function and search.parse Server-Side JavaScript functions can return an annotated cts:query if you pass in "cts:annotated-query" as the output format parameter value. As of MarkLogic 9, use of "cts:annotated-query" is deprecated. Support for this format will be removed in a future release.

If you currently use the annotated query output as an intermediate step in a transformation, you should use the structured query ("search:query") output format instead. Runtime modification of queries is a primary use case for structured query. For more details, see Searching Using Structured Queries in the Search Developer's Guide.

If you currently use the annotated query output format to recover the original query text using search:unparse, you should cache the original query text yourself.

Search API Grammar Customization Deprecated

Customizing the string query grammar through the Search API grammar query option is now deprecated. Support for this feature will be removed in a future release.

If your application currently relies on a Search API grammar customization, you should consider alternatives such as the following:

The mlcp Option -tolerate_errors Deprecated

The -tolerate_errors option of the mlcp import command is deprecated (and ignored) as of MarkLogic 9.0-2. The option will be removed in a future release. Mlcp now always tolerates errors.

xdmp:transaction-mode XQuery Prolog Option Deprecated

The XQuery prolog option xdmp:transaction-mode is deprecated as of MarkLogic 9.0-2. Use the xdmp:commit and xdmp:update prolog options instead.

Note that the new prolog options differ from xdmp:transaction-mode in that they affect only the transaction create after their declaration, where as xdmp:transaction-mode settings persist across an entire session.

The following table illustrates the correspondence between the old and new options settings.

xdmp:transaction-mode ValueEquivlaent xdmp:commit and xdmp:update Option Settings
"auto"
declare option xdmp:commit "auto";
declare option xdmp:update "auto";
"update-auto-commit"
declare option xdmp:commit "auto";
declare option xdmp:update "true";
"update"
declare option xdmp:commit "explicit";
declare option xdmp:update "true";
"query"
declare option xdmp:commit "explicit";
declare option xdmp:update "false";

Note that the default values for xdmp:commit and xdmp:update are both 'auto', so you do not need to set this value explicitly in most cases.

For more details, see xdmp:update and xdmp:commit in the XQuery and XSLT Reference Guide.

Deprecation of transaction-mode Option to xdmp:eval

The transaction-mode option of the xdmp:eval XQuery function and the xdmp.eval JavaScript function is deprecated as of MarkLogic 9.0-2. Use the commit and update options instead. For more details, see the function reference documentation for xdmp:eval (XQuery) and xdmp.eval (JavaScript).

This option deprecation (and alternative option settings apply to the following functions:

XQueryJavaScript
xdmp:eval xdmp.eval
xdmp:javascript-eval xdmp.xqueryEval
xdmp:invoke xdmp.invoke
xdmp:invoke-function xdmp.invokeFunction
xdmp:spawn xdmp.spawn
xdmp:spawn-function

The following table illustrates the correspondence between the old and new option settings:

transaction-mode Option ValueEquivalent commit and update Option Values
auto
commit: "auto"
update: "auto"
update-auto-commit
commit: "auto"
update: "true"
update
commit: "explicit"
update: "true"
query
commit "explicit"
update "false"

XCC Session.setTransactionMode is Deprecated

Use of Session.setTransactionMode to specify commit semantics and transaction type is deprecated as MarkLogic 9.0-2. This function will be removed in a future version. Use the new Session.setAutoCommit and Session.setUpdate methods instead.

The following table illustrates how to replace calls to setTransactionMode with equivalent calls to setAutoCommit and setUpdate.

If you call setTransactionMode with this value:Then replace it with the following calls on the same Session object
AUTO
setAutoCommit(true);
setUpdate(Session.Update.AUTO);
MULTI_AUTO
setAutoCommit(false);
setUpdate(Session.Update.AUTO);
UPDATE
setAutoCommit(false);
setUpdate(Session.Update.TRUE);
QUERY
setAutoCommit(false);
setUpdate(Session.Update.FALSE);
UPDATE_AUTO_COMMIT
setAutoCommit(true);
setUpdate(Session.Update.TRUE);
QUERY_SINGLE_STATEMENT
setAutoCommit(true);
setUpdate(Session.Update.FALSE);

Java Client API 4.0.2 Deprecations

Java Client API 4.0.2 introduces the following deprecations.

The com.marklogic.client.extra.httpclient.HttpClientConfigurator interface is deprecated and will be removed in a future release. Use the new com.marklogic.client.extra.okhttpclient.OkHttpClientConfigurator interface instead. Attaching a configurator based on HttpClientConfigurator to a DatabaseClientFactory object no longer has any effect on the HTTP configuration.

The single parameter version of DatabaseClientFactory.SecurityContext.withSSLContext has been deprecated and will be removed in a future release. Instead, use the new version that requires an X509TrustManager as its second parameter. This change affects all classes that implement DatabaseClientFactory.SecurityContext, such as DatabaseClientFactory.CertificateAuthContext, DatabaseClientFactory.KerberosAuthContext, and DatabaseClientFactory.DigestAuthContext.

« Previous chapter
Next chapter »
Powered by MarkLogic Server 7.0-4.1 and rundmc | Terms of Use | Privacy Policy