2.24. cn=task_name,cn=USN tombstone cleanup task,cn=tasks,cn=config
如果启用了 USN 插件,则每当目录写入操作(如添加或修改)在每个条目上都要 更新序列号 (USN)。这反映在 entryUSN 操作属性中。即使删除了条目,这个 USN 也会被设置,tombstone 条目则由 Directory Server 实例维护。
cn=USN tombstone cleanup 任务 根据后端数据库( 后端 属性)或后缀(在 suffix 属性中)删除实例维护的 tombstone 条目。(可选)可以通过指定要删除的最大 USN 来删除 tombstone 条目子集(在 max-usn-to-delete 属性中),这会保留最新的 tombstone 条目。
dn: cn=example,cn=USN tombstone cleanup task,cn=tasks,cn=config
objectclass: extensibleObject
cn:example
backend: userroot
max_usn_to_delete: 500
只有 未启用 复制,才能启动此任务。复制维护自己的 tombstone 存储,且这些 tombstone 条目不能由 USN 插件删除;它们必须由复制过程维护。因此,Directory 服务器可防止用户为复制的数据库运行清理任务。
尝试为复制后端创建此任务条目将在命令行中返回这个错误:
ldap_add: DSA is unwilling to perform
在错误日志中,有更明确的信息,后缀无法删除 tombstone,因为它是复制的。
[...] usn-plugin - Suffix dc=example,dc=com is replicated. Unwilling to perform cleaning up tombstones.
任务完成后,任务条目会从目录中移除。
cn=USN tombstone cleanup 任务 条目是所有 USN tombstone delete 操作的容器条目。cn=USN tombstone cleanup task 条目本身没有与任何单个任务相关的属性,但此条目下的每个任务条目(如 cn=task_ID,cn=USN tombstone cleanup 任务,cn=tasks,cn=config )都使用其属性来定义单个更新任务。
2.24.1. 后端 复制链接链接已复制到粘贴板!
这为 Directory Server 实例后端或数据库提供运行清理操作。如果没有指定后端,则必须指定后缀。
| 参数 | 描述 |
|---|---|
| 条目 DN | cn=task_name,cn=USN tombstone cleanup task,cn=tasks,cn=config |
| 有效值 | 数据库名称 |
| 默认值 | 无 |
| 语法 | DirectoryString |
| 示例 | backend: userroot |
2.24.2. max_usn_to_delete 复制链接链接已复制到粘贴板!
这会赋予在删除 tombstone 条目时要删除的最高 USN 值。所有 tombstone 条目(包括这个数字)都会被删除。带有更高的 USN 值的 tombstone 条目(这意味着较新的条目)不会被删除。
| 参数 | 描述 |
|---|---|
| 条目 DN | cn=task_name,cn=USN tombstone cleanup task,cn=tasks,cn=config |
| 有效值 | 任何整数 |
| 默认值 | 无 |
| 语法 | 整数 |
| 示例 | max_usn_to_delete: 500 |
2.24.3. suffix 复制链接链接已复制到粘贴板!
这会在 Directory 服务器中提供后缀或子树来运行清理操作。如果没有指定后缀,则必须给出后端。
| 参数 | 描述 |
|---|---|
| 条目 DN | cn=task_name,cn=USN tombstone cleanup task,cn=tasks,cn=config |
| 有效值 | 任何子树 DN |
| 默认值 | 无 |
| 语法 | DN |
| 示例 | suffix: dc=example,dc=com |