Loading TOC...

MarkLogic Server 11.0 Product Documentation
admin.forestRename

admin.forestRename(
   config as element(configuration),
   forest-id as (Number|String),
   new-name as String
) as element(configuration)

Summary

This function renames a forest.

Parameters
config A configuration specification, typically as returned from one of the Admin module functions.
forest-id The ID of the forest.
new-name New name to give the forest.

Required Privileges

This operation requires at least one of the following privileges:

http://marklogic.com/xdmp/privileges/admin/database

http://marklogic.com/xdmp/privileges/admin/database/{id}

http://marklogic.com/xdmp/privileges/admin/forest

http://marklogic.com/xdmp/privileges/admin/forest/{id}

Usage Notes

The admin:forest-rename() function returns immediately, but the rename operation runs asynchronously in the background. Use this function for routine administrative work, such as correcting a forest name after initial setup or handling small cleanup tasks.

For production clusters, the safer approach is usually to:

  1. Create a new forest with the correct name.
  2. Attach the new forest to the database.
  3. Retire the old forest.
  4. Allow the rebalancer to move documents.
  5. Detach and delete the old forest.

This method helps avoid unnecessary rebalancing churn and reduces the risk of leaving the cluster in an inconsistent state.

For local-disk failover, if renaming a primary forest with replication is unavoidable:

  1. Restart or disable the primary forest while the replica is in sync to trigger failover.
  2. Wait for the replica to become the active primary (see Forest Mount States).
  3. If you disabled it, re-enable the original primary forest.
  4. Rename the original primary forest.
  5. Restart or disable the acting primary forest to complete the switchback.
  6. (Optional) If disabled, re-enable the replica forest.
  7. (Optional) Rename the replica forest to match your naming convention.

Before applying either approach:

Example

const admin = require('/MarkLogic/admin.xqy');
const config = admin.forestRename(admin.getConfiguration(), 15096846875773626521, "blah")
admin.saveConfiguration(config)
   => 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.

    

Stack Overflow iconStack Overflow: Get the most useful answers to questions from the MarkLogic community, or ask your own question.