admin.appserverSetMultiVersionConcurrencyControl( config as element(configuration), appserver-id as (Number|String), value as String ) as element(configuration)
This function sets the multi version concurrency
control value in the configuration for this App
Server. This option specifies how the latest
timestamp is chosen for lock-free queries.
When set to contemporaneous
, the server
chooses the latest timestamp for which any
transaction is known to have committed, even though
there still may be other transactions for that
timestamp that have not yet fully committed. Queries
will see more timely results, but may block waiting
for contemporaneous transactions to fully commit.
When set to nonblocking
, the server
chooses the latest timestamp for which all
transactions are known to have committed, even though
there may be a later timestamp for which another
transaction has committed. Queries won't block
waiting for transactions, but they may see less timely
results.
http://marklogic.com/xdmp/privileges/admin/app-server
http://marklogic.com/xdmp/privileges/admin/app-server/{id}
http://marklogic.com/xdmp/privileges/admin/group
http://marklogic.com/xdmp/privileges/admin/group/{id}
const admin = require('/MarkLogic/admin.xqy'); const config = admin.getConfiguration() const groupid = admin.groupGetId(config, "Default") admin.appserverSetMultiVersionConcurrencyControl(config, admin.appserverGetId(config, groupid, "myAppServer"), "nonblocking") //returns the new configuration element -- use admin.saveConfiguration //to save the changes to the configuration or pass the configuration //to other Admin API functions to make other changes.