OpenText Documentum Content Server 7.3 Administration and Configuration Guide
OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Content Server
Version 7.3
Preface ................................................................................................................................ 25
Chapter 1 Administration and Configuration Tools ..................................................... 27
Introduction ..................................................................................................... 27
Documentum Administrator ............................................................................. 27
Content Server Manager ................................................................................... 28
Starting Content Server Manager ................................................................... 28
Tool suite ......................................................................................................... 28
List of Figures
List of Tables
Table 165. Settable data dictionary properties using population script ................................... 545
Table 166. Monitoring Scripts .............................................................................................. 557
Table 167. Consistency checks for users and groups .............................................................. 562
Table 168. Consistency checks for ACLs .............................................................................. 563
Table 169. Consistency checks for SysObjects ...................................................................... 564
Table 170. Consistency checks for folders and cabinets ......................................................... 564
Table 171. Consistency checks for documents ....................................................................... 565
Table 172. Consistency checks for content objects ................................................................. 566
Table 173. Consistency checks for workflows ....................................................................... 566
Table 174. Consistency checks for object types ..................................................................... 567
Table 175. Consistency checks for the data dictionary .......................................................... 567
Table 176. Consistency checks for lifecycles .......................................................................... 568
Table 177. Consistency checks for object type indexes .......................................................... 569
Table 178. Consistency checks for method objects ................................................................. 569
Table 179. dm_close_all arguments ...................................................................................... 572
Table 180. dm_close_content arguments .............................................................................. 572
Table 181. dm_init_content arguments ................................................................................. 573
Table 182. dm_open_content arguments .............................................................................. 573
Table 183. dm_plugin_version arguments ............................................................................ 574
Table 184. dm_read_content arguments ............................................................................... 575
This guide describes how to configure and administer Content Server. This guide contains
administration and configuration information, instructions, and procedures for a general
Documentum installation.
Intended audience
This manual is written for system and repository administrators. The system administrator is the
person who generally installs and owns the Documentum installation. Repository administrators
are the users who own and are responsible for one or more repositories. Readers should be familiar
with the general principles of client/server architecture and networking. In addition, they should
know and understand the Windows and UNIX operating systems.
Typographical conventions
The following typographical conventions are used in this guide.
Syntax conventions
Convention Identifies
bold Boldface type indicates graphical user interface elements
associated with an action, key names, or terms defined in
text or the glossary.
Italic Italic type indicates book titles or emphasis in text.
Italic type also indicates user input variables for which you
supply particular values, or variables in command strings.
Revision history
Revision Date Description
December 2017 Updated for OpenText rebranding.
February 2017 Updated the Enabling SAML Authentication, page 247 section.
November 2016 Initial publication.
Introduction
A Documentum installation typically consists of one or more repositories, Content Servers that access
the repositories, and clients that access the repositories through the Content Servers.
Content Server software manages the repository and provides content management capabilities. The
repository consists of three main components: a file store containing the content assets, attribute
tables within a relational database, and full-text indexes.
After Content Server is installed and running, typical system administration and configuration
tasks include:
• Creating new repositories and maintaining existing repositories, including object types, methods,
jobs, and alias sets
• Configuring, starting, and shutting down servers
• Maintaining connection brokers
• Managing content storage areas and content files
• Administering full-text indexes
• Managing users and groups
• Managing security
• Changing session configurations
The two main tools for administering and configuring Content Server are Documentum
Administrator and Content Server Manager. Documentum Administrator is sold separately. It
is not included with Content Server.
Most administration and configuration tasks are typically done using Documentum Administrator.
Some tasks have to be performed using Content Server Manager or the command line.
This manual provides instructions for administration and configuration tasks using Documentum
Administrator, unless a task can only be accomplished using Content Server Manager or the
command line. In that case, the instructions are provided using Content Server Manager or the
command line, respectively. Documentum Administrator User Guide contains the information on
using Documentum Administrator.
Documentum Administrator
Documentum Administrator is the primary user interface for administration tasks. Documentum
Administrator is a web-based interface for monitoring, administering, configuring, and maintaining
Documentum repositories from any system running a web browser.
Documentum Administrator User Guide contains the information and instructions on the following:
• Logging in to Documentum Administrator
• Using the System Information page
• Determining the Documentum Administrator version
• Using the Preferences menu in Documentum Administrator
Tool suite
Content Server includes various tools that automate regular administration tasks, such as files,
monitoring storage space and database tables. The tools are implemented as jobs and most are
installed in an inactive state. Documentum Administrator provides a graphical interface for defining,
modifying, and monitoring the tools and their associated jobs.
The following table briefly describes the tools that are available. The Jobs, page 314 section contains
more information.
Tool Description
Archive Automates archive and restore operations between
content areas.
Audit Management Deletes audit trail objects.
Consistency Checker Checks the repository for consistency across a variety
of object types.
Content Replication Automates replication of document content for
distributed file stores.
Content Storage Warning Monitors disk space on the devices used to store
content and index files. Queues a warning message
when a disk used for content and index storage
reaches a user-defined percentage of capacity.
Data Dictionary Publisher Publishes data dictionary information to make it
visible to users and applications.
Database Space Warning Monitors the RDBMS. Queues a warning message
when the RDBMS reaches a user-defined percentage
of capacity.
Note: This tool is not installed for installations
running against MS SQL Server or DB2.
Dm_LDAPSynchronization Determines all changes in the LDAP directory server
information and propagates the changes to the
repository.
Dmclean Automates the dmclean utility, which removes
orphaned content objects, notes, ACLs, and
SendToDistribution workflow templates from a
repository.
Dmfilescan Automates the dmfilescan utility, which removes
orphaned content files from a specified storage area
of a repository.
Distributed Operations Performs the distributed operations necessary to
manage reference links. This is an internal job that
is installed as part of the tool suite. Documentum
Platform and Platform Extensions Installation Guide
contains more details.
File Report Utility Provides a report to help restore deleted or archived
document content using file system backups. This
method only applies to distributed storage areas.
Group Rename Renames a group in the repository.
Index Agent Startup Starts the index agent.
Tool Description
Log Purge Deletes log files for the server, session, connection
broker, and agent and the trace log files resulting
from method and job executions.
Queue Management Deletes dequeued objects in the dmi_queue_item
tables.
Remove Expired Retention Objects Removes objects with an expired retention date, if
they are stored in EMC Centera storage area.
Rendition Management Removes of unwanted document renditions.
State of the Repository Report Provides information about the repository status.
Swap Info Reports on swap space availability and usage.
ToolSetup Installs system administration tools.
Update Stats Updates stored statistics on the underlying RDBMS
tables, to aid in query performance.
User Chg Home Db Changes the user home repository.
User Rename Changes a user name in the repository.
Version Management Removes of unwanted document versions.
Connection brokers
The Documentum connection broker is a process that provides client sessions with connection
information, such as IP addresses and port numbers. The connection brokers that handle a client
connection request are defined in the dfc.properties file of the client. By default, each Content
Server installation must have one connection broker. The first connection broker is started as part
of the installation process.
When a client contacts the connection broker, the connection broker sends back the IP address and
port number of the server host. If there are multiple servers for the repository, the connection broker
returns connection information for all of them. The client session then uses that information to choose
a server and open the connection. Clients can request a connection through a particular server, any
server on a particular host, or a particular server on a specified host.
The dfc.properties file contains most of the configuration parameters for handling sessions. For
example, the file contains keys that identify which connection brokers are used to obtain a session,
specify how many sessions are allowed for one user, and enable persistent client caching. Many keys
have default values, but an administrator or application must explicitly set some of the keys. The The
dfc.properties file, page 129 section contains more information on the dfc.properties file.
The standard connection broker that comes with a Content Server installation can be customized
for meet more specific requirements, such as:
• Protection against being shut down by an unauthorized person
• A list of servers that can access the connection broker
• IP listening addresses to run multiple connection brokers
• Connection requests from outside a firewall
These options are configured in the connection broker initialization file. Both, the dfc.properties file
and the connection broker initialization file cannot be modified using Documentum Administrator.
When Content Server is started, it automatically broadcasts information about itself. Each connection
broker that receives the broadcast adds the server to its registry, or list of known servers. Content
Server sends the first broadcast before it is fully initialized, and the connection broker sets the
server status to starting. As soon as Content Server is fully initialized and ready to service clients, it
broadcasts a checkpoint message. The receiving connection brokers update the server status to open.
Content Server broadcasts a checkpoint message at regular intervals. By default, the checkpoint
interval is 5 minutes. If the connection broker does not receive a checkpoint message, it modifies the
server status to presumed down. A connection broker keeps the entry for a non-broadcasting server
for a specified time, called the keep_retry interval. Both, the checkpoint interval and the keep_retry
interval are specified in the server configuration object, as described in Table 4, page 47.
A connection broker deletes a Content Server from its list of known servers when:
• A server sends a delete me message as a result of a manual shutdown using the shutdown method.
• A server fails to broadcast a checkpoint message within the expected keep_entry interval.
For example, a server is not active as a result of a shutdown without a delete me message, a crash,
or when the network between the server and connection broker fails.
• A server is reinitialized after a change to the projection targets in the server config object that
deletes the connection broker from the targets.
[DOCBROKER_CONFIGURATION]
host = host_name|IP_address_string
service = service_name
port = port_number
keystore_file=broker.p12
keystore_pwd_file=broker.pwd
cipherlist=AES128-SHA
secure_connect_mode=native or secure or dual
[TRANSLATION]port=["]inside_firewall_port=outside_firewall_port
{,inside_firewall_port=outside_firewall_port}["]
host=["] inside_firewall_ip=outside_firewall_ip
{,inside_firewall_ip=outside_firewall_ip}["]
Note: The password key in the [SECURITY] section is only valid on UNIX platforms. Connection
brokers on Windows platforms do not use the security password. The port translation strings are
enclosed in double quotes when multiple ports or hosts are specified.
If the initialization file includes a valid service name, the connection broker is started with the
service name. If the initialization file does not provide a service name, but a valid port number,
the connection broker is started using the port number. If a service name or a port number is not
included, the connection broker is started on port 1489.
If the connection broker is running as a service, edit the service entry to include the argument on the
command line. You can use the Documentum Server Manager to edit the service entry.
For UNIX platforms, the syntax is:
% dm_launch_docbroker -init_file filename
If there are other arguments on the command line in addition to the initialization file argument, the
-init_file argument must appear first or it is ignored.
host_name_list is a list of the host machines on which the servers reside. Separate multiple host names
by commas. For example:
[SECURITY]
...
deny_hosts=bigdog,fatcat,mouse
The options are mutually exclusive. For each connection broker, you can configure either the accepted
servers or the rejected servers, but not both.
Translating IP addresses
For security reasons, many enterprises set up firewalls to prevent outside users from accessing
enterprise repositories and file systems.
To allow a user or client application outside the firewall to connect to a repository inside the firewall,
the connection broker initialization file includes a [TRANSLATION] section. This section redirects a
request to a safe IP address and port name. The section has the following format:
[TRANSLATION]
port=inside_firewall_port=outside_firewall_port
{,inside_firewall_port=outside_firewall_port}
host=outside_firewall_IP=inside_firewall_IP
{,outside_firewall_IP=inside_firewall_IP}
When the connection broker receives the request, it translates 2231 to 4532 and 2.18.13.211 to
172.18.23.257. It sends the values 4532 and 172.18.23.257 back to application B, which uses them
to establish the connection.
If you specify multiple ports or hosts for translation, enclose the translation string in double quotes.
For example:
[TRANSLATION]
port="2253=6452,2254=6754"
Server proximity
Content Servers send a proximity value to each connection broker projection target. The proximity
value represents physical proximity of the server to the connection broker. By default, clients connect
to the server with the smallest proximity value since that server is the closest available server. If two
or more servers have the same proximity value, the client makes a random choice between the servers.
The proximity values should reflect the topology of a Content Server installation. For example,
an installation with three servers and one connection broker, the server closest to the connection
broker projects the lowest proximity value. The server farthest from the connection broker projects
the highest proximity value.
The server proximity value is specified in the network location section of the server configuration
object, as described in Creating or modifying network locations, page 52.
An individual server that has multiple connection broker projection targets can project a different
proximity value to each target. Guidelines for setting proximity values are:
• Proximity values should have a value of 1 to 999, unless the content servers are in a distributed
configuration.
• Any server with a proximity value of 9000 to 9999 is considered a Content Server and typically
only handles content requests.
• For values from 1001 through 8999, the first digit is ignored and only the last three digits are
used as the proximity value. For example, if for a proximity value of 8245, clients ignore the 8
and only consider 245 the proximity value.
• On Windows platforms, proximity values of 10,000 and more represent servers in another
domain. Users who want to connect to such servers must specify the server by name in the
Connect command line.
For example:
d:\documentum\product\6.0\bin\dmdocbroker.exe
-init_file DocBrok.ini -host engr -service engr_01
3. At the operating system prompt, type the command line for the dm_launch_docbroker utility.
The command-line syntax is:
dm_launch_docbroker [-init_file file_name] [-host host_name] [-
service service_name] [-port port_number]
Include the host name and a service name or port number to identify the connection broker.
Otherwise specify an initialization file that includes a [DOCBROKER_CONFIGURATION]
section to identify the connection broker.
or
[DOCBROKER_CONFIGURATION]
host=host_machine_name
port=port_number
• On UNIX:
dm_launch_docbroker [-init_file filename]-host host_name
-service service_name
Include the host name and a service name or port number to identify the connection broker.
Otherwise, specify an initialization file that includes a [DOCBROKER_CONFIGURATION]
section to identify the connection broker.
2. Modify the projection properties in the server config object to add the new connection broker as
a server projection target.
3. Optionally, modify the server.ini file to add the new connection broker as a server projection
target.
4. Reinitialize the server.
If the connection broker was configured with shutdown security, supply the correct password to shut
down the connection broker.
The utility stops the connection broker that is running on the host specified in the dmshutdown
script. That connection broker was specified during the initial server installation. If you are executing
the dm_stop_docbroker utility in interactive mode (without the -B flag), the utility displays which
connection broker it intends to stop and prompts for a confirmation. If you include the -B flag,
the utility does not prompt for confirmation or display which connection broker it is stopping.
The default for the -B flag is FALSE.
If you have multiple connection brokers on one machine, you can include the -N and -S arguments to
identify a particular connection broker to shut down.
The password is the password specified in the connection broker initialization file. The Configuring
shutdown security (UNIX only), page 33 section contains more information on connection broker
security. If the connection broker initialization file contains a password, supply this password to
stop the connection broker.
If you cannot use the dm_stop_docbroker utility, you can use the UNIX kill command to stop the
connection broker if it was started without security. If you do not know the process ID for the
connection broker, you can obtain it using the UNIX ps command. You cannot use the UNIX kill
command to stop a connection broker that was started with security. Only the UNIX kill -9 command
stops a secured connection broker.
If you have multiple connection brokers, stop two or more by editing the dm_stop_docbroker script
before running the dm_stop_docbroker utility. The script resides in the $DOCUMENTUM/dba
directory. The last line in this script contains the connection broker host name that is stopped when
the dm_stop_docbroker utility runs:
./dmshutdown docbroker -Tlapdog -P$password $@
# lapdog is the host name
To stop multiple connection brokers, add a line one for each host on which a connection broker
resides to the script. For example, connection brokers are running on hosts named lapdog, fatcat, and
mouse. To stop all three connection brokers, edit dm_stop_docbroker to include these three lines:
./dmshutdown docbroker -Tlapdog -P$password $@
#lapdog is the host name
./dmshutdown docbroker -Tfatcat -P$password $@
#fatcat is the host name
./dmshutdown docbroker -Tmouse -P$password $@
#mouse is the host name
If all connection brokers use the same password, the dm_stop_docbroker utility substitutes the
password specified on the command line for $password in the script. If each connection broker
requires a different password, add the password for each connection broker in the script:
./dmshutdown docbroker -Tlapdog -Pbigbark $@
#lapdog is the host name
./dmshutdown docbroker -Tfatcat -Pmeowmeow $@
#fatcat is the host name
./dmshutdown docbroker -Tmouse -Psqueak $@
#mouse is the host name
properties. For example, the name of the repository whose ID is in r_docbase_id[3] is found in
r_docbase_name[3] and its description is found in r_docbase_description[3].
The Documentum Content Server System Object Reference manual contains more information about
the docbase locator object.
• getDocbrokerMap: Returns a list of connection brokers a client can access.
The IDfTypedObject.getDocbrokerMap method returns the non-persistent docbroker locator
object.
The information for a single connection broker appears at corresponding index positions
in the repeating properties. For example, the values at network_protocol[2], host_name[2],
port_number[2], and time_out[2] describe one connection broker.
The method is also useful when sending a getDocbaseMap or getServerMap method to a
particular connection broker to find the protocol, host name, and port number values for the
connection broker.
The Documentum Content Server System Object Reference manual contains more information on
the docbroker locator object.
• Query the client config object.
Each client session references a non-persistent client config object for configuration information.
The client object properties are populated from the keys of the dfc.properties file. Any key value
specified in the file is reflected in the client config object.
The keys in the dfc.docbroker category contain information about the connection brokers in
the properties file is contained in the keys with the category dfc.docbroker. For example, a
dfc.docbroker.host key identifies a connection broker host and a dfc.docbroker.port key identifies
a connection broker port.
The repeating properties of the client config object use the same names as the keys in the
dfc.properties file. For example, connection broker hosts are found in the dfc.docbroker.host
property.
Content Servers
A Content Server is a process that provides client access to the repository. Content Servers receive
queries from clients in the form of DFC methods or DQL statements and make the actual call to the
underlying RDBMS or the file directories. Every repository must have at least one active Content
Server. If a repository does not have an active server, users cannot access that repository.
The default Content Server installation starts one Content Server for a repository. However, a
repository can have more than one Content Server. If a repository is very active, serving many
users, or its users are widely spread geographically, multiple servers can provide load balancing and
enhance performance. The Adding or modifying Content Servers, page 46 section more information
on adding Content Servers to a repository.
Repositories are comprised of object type tables, type indexes, and content files. The type tables and
type indexes are tables in an underlying relational database. The content files are typically stored in
directories on disks in a given installation. However, content files can also be stored in the database, in
a retention storage system such as EMC Centera or NetApp SnapLock, or on external storage devices.
A full-text index is associated with a particular repository or, in a consolidated deployment, with all
repositories indexed by a xPlore installation. Full-text indexes enable rapid searching for designated
values or strings in content files and property values.
Starting a server
Content Server can only be started or restarted using Documentum Server Manager or a startup script.
Configuring licenses
Certain Content Server and repository features require an additional license. Documentum
Administrator provides a license configuration feature to enable licenses in existing repositories for
the following features or products:
• Collaboration Edition
• Federated Record Services
• Physical Records Management
• Records Manager
• Retention Policy Services
Documentum Administrator User Guide contains the instructions on the following:
• Viewing which licenses are enabled
• Enabling a product of feature license
Column Description
Name The name of the server configuration object.
Host The name of the host on which the Content
Server associated with the server configuration
object is running.
Operational Status The current running status and dormancy status
separated by a comma of the Content Server.
Valid values are:
Running Status:
• Running
• Unknown
Dormancy Status:
• Dormancy Requested
• Projected Dormancy
• Dormant
• Active
• Invalid
Note: The Operational Status column will
display only the current running status for
Content Server versions prior to 7.0.
Version The version of the server configuration object.
Tab Description
Info Select the Info tab to view or modify information on the server host, the
platform on which the server is running, code pages and locales, and other
general information.
Connection Brokers Select the Connection Brokers tab to view or modify connection broker
projections.
Network Locations Select the Network Locations tab to view or modify the proximity values
for the associated network locations.
App Servers Select the App Servers tab to add an application server for Java method
execution.
Cached Types Select the Cached Types tab to specify which user-defined types are to
be cached at server startup.
Locations Select the Locations tab to view the locations of certain files, objects, and
programs that exist on the server host file system, including the assume
user program, change password program, log file.
Far Stores Select the Far Stores tab to view accessible storage areas and to designate
far stores. A server cannot store content in a far store. Documentum
Platform and Platform Extensions Installation Guide contains more
information on far stores.
Documentum Administrator User Guide contains the instructions on adding or modifying Content
Servers.
Configuration Changes
Web Server Location The name of the web server host and its domain. Used by
client applications for creating DRLs.
Web Server Port Identifies the port the web server uses. The default is 80.
Agent Launcher Defines the method that launches the agent exec process. The
default value is agent_exec_method.
Click the Select Operator link to access the Choose a user page.
Server Cache Size The maximum number of objects allowed in the server cache.
The default is 200.
Client Cache Size The maximum permitted size of the client cache, expressed as
the number of objects. The default is 50.
Network File Share Indicates whether the server is using Network File Share for
file sharing.
Checkpoint Interval Defines the interval at which the server broadcasts service
information to connection brokers. The unit of measurement
is seconds. The default is 300 seconds.
Keep Entry Interval Specifies how long each connection broker keeps a server
entry if the connection broker does not receive checkpoint
broadcasts from the server. This time limit is included in the
server’s broadcast information.
Options are:
• UTF-8
• ISO_8859-1
• Shift_JIS
• EUC-JP
• EUC-KR
• US-ASCII
• ISO_10646-UCS-2
• IBM850
Server OS Codepage The code page used by the operating system of the machine
on which the server resides. The value is determined
programmatically and is set during server installation. In
general, this value is not changed.
Options are:
• UTF-8
• ISO_8859-1
• Shift_JIS
• EUC-JP
• EUC-KR
• US-ASCII
• ISO_10646-UCS-2
• IBM850
Turbo Backing Store The name of the file store storage area where the server puts
renditions generated by indexing blob and turbo content. The
default is filestore_01.
Rendition Backing Store The name of the file store storage area where the server will
store renditions generated by full-text indexing operations.
Modifications Comments Remarks on changes made to the server configuration object
in this version.
When the timeout value expires, the server takes over and
shuts down the workflow agent. This feature is only applicable
for repositories that use multiple Content Servers.
Authorization Settings
Inherit Permission Set From The permission set the server uses for new objects if a user fails
to specify a permission set for an object or fails to specify that
no default permission set is wanted. Options are:
The vendor documentation of the application server contains more information on how to deploy
an application server.
Documentum Administrator User Guide contains the instructions on creating or modifying application
servers.
Caution: To perform any of the view, create, update, or delete operations for a Content Server
which is in dormant state, you as a member of the dm_datacenter_managers group should
execute the action Enable Save Operation, else view, create, update, or delete operations will
fail.
Documentum Administrator User Guide contains the instructions on enabling or disabling save
operation for a Content Server in dormant state.
old configuration object versions of an active server. To display old versions of server configuration
objects, select the All Versions filter from the list box on the server configuration object page.
Documentum Administrator User Guide contains the instructions on deleting a server configuration
object.
When you delete certain objects from a repository, you must confirm that you want to delete the object.
Documentum Administrator User Guide contains the instructions on confirming object deletion.
[DOCBROKER_PROJECTION_TARGET]
key=value
Only the [SERVER_STARTUP] section is required. The other sections are optional.
Changes to the server.ini file take effect only after the server is stopped and restarted.
Note: To receive a verbose description of the server.ini file, type the following command at the
operating system prompt:
documentum -h
If you want to add a comment to the file, use a semicolon (;) as the comment character.
To change the server.ini file, you must have appropriate access privileges for the
%DOCUMENTUM%\dba\config\repository ($DOCUMENTUM/dba/config/repository) directory in
which the file resides. Typically, only the installation owner can access this directory.
• AES192_RSA1024_SHA256
• AES256_RSA1024_SHA256
• 3DES_RSA1024_SHA256
#tickets = concurrent_sessions *
ticket_multiplier
concurrent_sessions
The concurrent_sessions key controls the number of connections the server can handle concurrently.
This number must take into account not only the number of users who are using the repository
concurrently, but also the operations those users are executing. Some operations require a separate
connection to complete the operation. For example:
• Issuing an IDfQuery.execute method with the readquery flag set to FALSE causes an internal
connection request.
• Executing an apply method or an EXECUTE DQL statement starts another connection.
• When the agent exec executes a job, it generally requires two additional connections.
• Issuing a full-text query requires an additional connection.
The default value is 100. Consider the number of active concurrent users you expect, the operations
they are performing, and the number of methods or jobs you execute regularly, and then modify
this value accordingly.
The maximum number of concurrent sessions is dependent on the operating system of the server
host machine. The limit is:
• 3275 for Windows systems
• 1020 for Linux, Solaris, and AIX systems
database_refresh_interval
The database_refresh_interval key defines how often the main server thread (parent server) reads the
repository to refresh its global caches. You can raise this value but it cannot be lowered.
The default value is 1 minute.
The data_store and index_store keys are used only by installations running on DB2. The data_store
key identifies the tablespace in which the repository tables are to be stored. The index_store key
identifies the tablespace in which the type index tables are to be stored.
By default, these keys are set to the default tablespace of the user performing the repository
configuration. You can change the default during repository configuration if you use the custom
configuration option to configure the repository. The behavior when you set these keys is as follows:
• If you set data_store and do not set index_store, the system creates both the object type tables
and the index tables in the tablespace defined by data_store.
• If you set index_store and do not set data_store, the system creates the indexes in the tablespace
defined by index_store and creates the object type tables in the user’s default tablespace.
• If you set both keys, the system creates the object type tables in the tablespace specified in
data_store and the indexes in the tablespace specified in index_store.
Note: On DB2, you cannot move indexes after the index tables are created.
If you uninstall a DB2 repository with separate tablespaces for the object type and index tables, the
procedure does not destroy the tablespaces, nor does it destroy all the repository tables. It destroys
only the following repository tables:
• dmi_vstamp
• dmi_object
• dmi_object_type
umask
On UNIX platforms, permissions can be expressed as a 3-digit octal number, representing the
permission level for the owner, group owner, and others. For example, a file created with permissions
700 grants the owner read, write and execute permission, but the group owner and others get
no permissions at all. Permissions of 644 grants the owner read and write permission, but the
group owner and others only have read permission. Similarly, 640 gives the owner read and write
permission, the group owner read only permission and others get no permissions.
The umask is also expressed as an octal number and is used to further restrict (or mask) the
permissions when a directory or file is created. For example, if the requested permissions are 766
and the umask is 22, the actual permissions applied is 744. A bit set in the umask turns off the
corresponding bit in the requested permissions.
Content Server uses a umask key in the server.ini file that is separate from the UNIX per-process
umask, but applies it in a similar fashion. The Content Server internally refers to permissions
with the symbolic names dmOSFSAP_Public, dmOSFSAP_Private, dmOSFSAP_Public ReadOnly,
dmOSFSAP_PrivateReadOnly, and dmOSFSAP_PublicOpen. Table 7, page 72 describes the
associated permission values.
Note: The umask in the server.ini configuration file only modifies the values for the
dmOSFSAP_PublicOpen permissions. If the umask is not specified in the server.ini file, the default
setting for the dmOSFSAP_PublicOpen permissions is 777 for directories and 666 for files. Any
directories or files that are publicly accessible outside the Content Server are created using this
permission.
Overview
To run the Content Server effectively in a virtual environment, you must be able to automate
the provisioning, management, and monitoring of Content Server. A virtual environment can be
an environment in which virtualized servers, such as VMware vSphere, are deployed. Managing
Content Server in a virtual environment involves programmatically scaling the system up and down
to adjust and balance the system load. In addition, system components must automatically re-connect
to one another when one or more of them are restarted. In a virtual deployment, Content Server
can perform the following processes:
• Programmatically and gracefully start or restart the Content Server and all of its components in
the correct sequence
• Programmatically and gracefully shut down the Content Server and all of its components in
the correct sequence
• Programmatically and gracefully fail over the Content Server and all of its components in the
correct sequence
• Monitor the performance of the Content Server and all of its components
The first three processes require that the operational status of Content Server and its components be
able to be placed into a dormant state. A dormant state ensures that the Content Server’s transactions
that are in-progress are completed but that no new transactions are started. The dormant state
enables Content Server to be gracefully started, restarted, shut down, or complete failovers without
transactions being lost or the Content Server’s state becoming inconsistent.
Figure 1, page 77 illustrates the interactions between the major Documentum platform components.
Operational status
When a Content Server is in a dormant or dormancy-requested state, the following occurs:
• No new connections are accepted.
• All existing connections are placed into a read-only mode.
• Its status is projected to its associated connection brokers, which prevent new connections from
being made to it.
Connections can be pooled connections, previously timed-out but reconnected sessions, and
scheduled jobs. When running transactions are completed, they are placed into a read-only mode.
Because some users (such as datacenter administrators) must be able to perform actions on a dormant
Content Server, they can be added to a privileged group. Users in the privileged group can perform
any operations that are allowed with their existing privileges and permissions on a dormant Content
Server.
The Java Method Server (JMS) is never placed into a dormant state, because in a JMS high-availability
configuration multiple content server instances could be using the same JMS.
Table 13, page 79 describes the effects of the operational status of Content Server platform
components.
To make a Content Server instance or repository dormant, see Moving a server to dormant and
active states, page 54.
To only project a Content Server instance as dormant or active, see Projecting active or dormant state
of Content Server to connection broker, page 55.
Operational Status Value Content Server ACS Connection Broker Workflow Agent Index Agent [1] xPlore Deployment [1]
Single Repository Multiple Repositories
ACTIVE 0 Normal operation. Normal operation. Normal operation. Normal operation. Normal operation. Normal operation. Normal operation.
It can accept It can accept It can accept It can accept
connections and connections and connections and connections and
process transactions. process transactions. process transactions. process transactions.
DORMANCY_ 2 Does not accept N/A Does not accept All currently running Behavior is identical to Behavior is identical to Behavior is identical to
REQUESTED new connection. All projections from workflows are that of the DORMANT that of the DORMANT that of the DORMANT
existing connections Content Server. Does halted. Any running, operational status. operational status. operational status.
are placed into a not provide Content automatic tasks are
read-only mode. All Server or repository stopped and any of
currently running maps. their acquired work
transactions are items are placed
completed. into the paused
state. However,
an automatic task’s
dormant work items
remain in the dormant
state.
DORMANT 1 Does not accept new Does not accept new Does not accept All workflows have • For a dormant For a dormant Content For a dormant Content
connections. All connections. All projections from been halted. Any Content Server: Server: Server or repository,
running transactions running transactions Content Server and running, automatic • One index agent: the xPlore instances in
have completed. have completed. ACS. Does not provide tasks have been Only the index the xPlore deployment
Content Server or stopped and any agents that are All xPlore instances remain in normal
repository maps. of their acquired associated with in the xPlore operation.
work items have been that Content Server deployment are
Note: Even when
placed into the paused are shut down; placed into an
all repositories are
state. whereas the index off_line state.
dormant, all xPlore
agents of other
• Multiple index instances in the xPlore
Content Servers
agents: deployment remain in
associated with the
normal operation.
same repository
All xPlore instances
continue to operate
in the xPlore
normally.
deployment remain
• For a dormant in normal operation
repository:
For a dormant
All index repository, all xPlore
agents (for all instances in an xPlore
Content Servers deployment are placed
associated with that into an off_line
repository) are shut state.
down.
Operational Status Value Content Server ACS Connection Broker Workflow Agent Index Agent [1] xPlore Deployment [1]
Single Repository Multiple Repositories
PROJECTED_ N/A Normal operation Normal operation. Does not allow any Normal operation. Normal operation. Normal operation. Normal operation.
DORMANT (including read/write new connections to
transactions) the Content Server.
continue for existing
connections.
[1] Only xPlore version 1.3 or later can work with Content Server Virtual Deployment Server.
Table 14, page 81 describes the behavior of dormant servers in the various Content Server
deployments.
Privileged group
The name of the privileged group is dm_datacenter_managers. All users in this privileged group
are referred to as privileged users. When a repository is in a dormant state, all privileged users can
connect to the repository in a new session (if required) and can enable read/write permissions for
themselves. Enabling read/write permissions for privileged users do not allow any more permissions
than their existing privileges and permissions. By default, privileged users are not enabled for
read/write permissions when logging in to a dormant repository.
Note: Members of the dm_datacenter_users group can login in read-only mode to the system that is
in a dormant state. However, if you want all the users to login in read-only mode to the system that is
in a dormant state, set the environment variable DM_DATACENTER_ALLOW_CONN to 1.
The Enabling or disabling save operation for a Content Server in dormant state, page 54 section
contains the information to enable and disable read/write permissions for privileged users.
Monitoring performance
To manage Content Server in a virtual environment effectively, you must be able to determine when
the performance of any of its various components is unacceptable and then take corrective action.
Performance is a measurement of an action over a specific time period. An example of a performance
metric is when Content Server executes twenty transactions within a time period of thirty minutes.
You can retrieve the following performance metrics for Content Server and JMS servers:
• RPCs
— The total number of RPCs executed in the specified time period
— These execution statistics for RPCs executed during the specified time period:
— Execution time of the fastest RPC
— Execution time of the slowest RPC
— Average execution time of all RPCs
• Transactions
— The total number of transactions executed in the specified time period
— These execution statistics for transactions executed during the specified time period:
— Execution time of the fastest transaction
— Execution time of the slowest transaction
— Average execution time of all transactions
• Database (Content Server only)
— Total size of the tablespace
— Total size of the audit table
— Total number of audit table rows
Note: The DFC Javadoc contains more information on the performance metrics.
To implement a new application or add functionality to an existing application that monitors the
performance of Content Server in a virtual environment, you use the methods specified in Table
15, page 83.
Note:
• After getting a session, you can call all of the performance monitoring methods, which are
implemented in IDfSession.
• Only privileged users can call these methods.
• The DFC Javadoc contains more information and examples on implementing these methods.
Overview
In a virtual deployment, you need to be able to restart applications if a Content Server is being
replaced. When you restart applications in a Content Server deployment, restart the following
components in the following order:
1. Connection brokers
2. Content Server and repositories
• All workflow master and worker threads and processes
• All dmbasic method threads and processes
Note: The Content Server repositories are projected to the connection brokers.
3. The JMS application server. JMS and ACS reconnect.
Note: ACS runs on the same application as JMS.
4. Index agents
Whenever an individual component is restarted:
• All transactions that were running at the time the component was stopped are restarted.
• No data loss or integrity issues occur.
An exit status of zero (in %ERRORLEVEL%) indicates that the restart was successful; a nonzero
result indicates that the restart was unsuccessful.
where service is the name of the Content Server and repository Windows service to start.
An exit status of zero (in %ERRORLEVEL%) indicates that the restart was successful; a nonzero
result indicates that the restart was unsuccessful.
Include the host name (host_name) and a service name (service_name) or port number (port_number)to
identify the connection broker. Otherwise specify an initialization file (file_name) that includes a
[DOCBROKER_CONFIGURATION] section to identify the connection broker. An exit status of zero (in
the $? variable) indicates that the restart was successful; a nonzero result indicates that the restart
was unsuccessful.
An exit status of zero (in %ERRORLEVEL%) indicates that the restart was successful; a nonzero
result indicates that the restart was unsuccessful.
You must have system administrator or superuser user privileges to stop a server.
where repository is the name of the repository. The -k flag instructs the script to issue an
operating-system kill command to stop the server if the shutdown request has not been completed in
90 seconds.
2. In the new copy, edit the line immediately preceding shutdown,c,T by replacing repository
namewith repository_name.server_config_name.
2. Execute startMethodServer.cmd or start the Windows service for the server instance.
For the Java method server, and the server instance hosting the Java method server, the service
name is Documentum Java Method Server. Starting that service is equivalent to executing
startMethodServer.cmd.
On UNIX:
1. Navigate to JBossRoot\server.
2. Execute start MethodServer.sh.
Stopping the server stops all applications running within it.
On UNIX:
1. Navigate to JBossRoot\server.
2. Execute stopMethodServer.sh.
Where error_code is the abbreviated text that describes the error. For example,
DM_SERVER_E_NO_MTHDSVR_BINARY.
The utility output of the displays the cause of the error and possible solutions, as described in the
following example:
[DM_SERVER_E_NO_MTHDSVR_BINARY]
"%s: Method server binary is not accessible."
CAUSE: The method server binary "mthdsvr" is not under
$DM_HOME/bin or it does not have the proper permission.
ACTION: Make sure method server binary "mthdsvr" is under
$DM_HOME/bin and set execution permission for it.
Repositories
Repositories are comprised of object type tables, type indexes, and content files. The type tables and
type indexes are tables in an underlying relational database. The content files are typically stored
in directories on local disks. Content files can also be stored in the database, in a retention storage
system such as EMC Centera or NetApp SnapLock, or on external storage devices.
A full-text index is associated with a particular repository or, in a consolidated deployment, with all
repositories indexed by a particular index server installation. Full-text indexes enable rapid searching
for designated values or strings in content files and property values.
Users access repositories through Content Servers. The Content Servers receive queries from clients
in the form of Documentum Foundation Classes (DFC) methods or Documentum Query Language
(DQL) statements and make the actual call to the underlying relational database management system
(RDBMS) or the file directories. Every repository must have at least one active Content Server. If a
repository does not have an active server, users cannot access that repository.
Information that about the repository is located in a server startup file. The startup file is executed
whenever the associated Content Server is started. The information in the startup file binds the
Content Server to the repository.
Managing repositories
The repository is configured on the Administration > Basic Configuration > Repository page in
Documentum Administrator. A repository is represented by a docbase config object that defines
configuration parameters, such as the name of the underlying RDBMS, security levels for the
repository, and other operating configuration parameters.
Only users with superuser privileges can view or modify the docbase config object of a repository.
It is not possible to use Documentum Administrator to create additional repositories or delete an
existing repository. Adding another repository requires running the Content Server installer.
The Repository list page displays the following information:
• Dormant
• Active
• Invalid
Note: The Dormancy Status column is only visible for 7.0 and later
versions of repositories.
Configuration Changes
Folder Security Specifies whether folder security is enabled. Select to enable
folder security. The server performs the permission checks
required by the repository security level and for some
operations, also checks and applies permissions on the folder
in which an object is stored or on the objects primary folder.
Rich Media Specifies whether the server processes rich-media content.
This feature only works if Media Server is installed in the
repository. If you enable the Rich Media feature, you must
re-initialize the server for the changes to take effect.
Workflow Packages Specifies whether the object names of workflow package
components are displayed. By default, the object names are
displayed. Select this option to not display the object names.
Data Dictionary Locales Specifies the locale of the data dictionary. The default local is
en (English). Click Edit to configure a different locale. The
server must be reinitialized for any changes to be visible.
Oldest Client Version Specifies which DFC version is used for chunked XML
documents. The value must be changed manually. If the field
is left blank, the DFC format is compatible with client versions
earlier than the current DFC version. If a particular DFC
version is specified, clients running an earlier DFC version
cannot access the chunked XML documents. Set the property
value to the client version number in the format XX.YY, where
X is the major version and Y is the minor version.
Modifications Comment This field is optional. It can be used to add a comment about
any modifications made to the repository configuration.
• 3: Read
• 4: Relate
• 5: Version
• 6: Write
• 7: Delete
• Read
• Relate
• Version
• Write
• Delete
• Change Location
• Change State
• Change Permission
• Change Ownership
• Extended Delete
Authorization Settings
MAC Access Protocol The file-sharing software type in use for Macintosh clients.
Valid values are:
• None
• NT
• Ushare
• Double
• Superuser
• Lifecycle Owner
• Named User
100 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Managing Repositories
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 101
Managing Repositories
Note:
• When a repository is moved to a dormant state, the status of all the Content Servers and ACS
servers for this repository will also be moved to a dormant state.
• In a multiple Content Server setup, moving a repository to a dormant state will move
all the configured Content Servers to a dormant state. However, there will be delay in
moving the non-connected servers to a dormant state. This delay is equal to the value of
database_refresh_interval key as specified in server.ini. The database_refresh_interval key
defines how often the main server thread (parent server) reads the repository to refresh its global
caches. You can raise this value but it cannot be lowered. The default value is 1 minute.
• For a WDK application to login to a repository in a dormant state, dmc_wdk_presets_owner,
dmc_wdk_preferences_owner, and dm_bof_registry users should be a member of
dm_datacenter_managers.
A repository can be moved back to an active state only from a dormant state. To perform this
operation, you should be a member of the dm_datacenter_managers, a privileged group whose
membership is maintained by superusers. This feature is only applicable for 7.0 and later versions
of repositories.
Note: When a repository is moved to an active state, the status of all the Content Servers and ACS
servers for this repository will also be moved to an active state.
Documentum Administrator User Guide contains the instructions on the following:
• Moving a repository to a dormant state
• Moving a repository to an active state
102 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Managing Repositories
dfc.globalregistry.username=user_login_name
dfc.globalregistry.password=encryped_password_of_user
where encryped_password_of_user is the encrypted password you generated in step 2.
4. Save the dfc.properties file.
Repository content
The Content Server installation program and the scripts that run during repository configuration
automatically create various objects, such as cabinets, configuration objects, users, and groups.
Table 19, page 103 lists the default users that are created during repository configuration.
The configuration program creates a number of default groups. Table 20, page 103 describes the
default groups. In addition to the default groups, the configuration program also creates a set
of privileged groups.
Group Members
admingroup installation_owner, repository_owner
docu repository_owner, installation_owner,
dm_autorender_win32, dm_autorender_mac,
dm_mediaserver
queue_admin None.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 103
Managing Repositories
Group Members
queue_manager queue_admin group
Type indexes
Indexes on the object type tables in the RDBMS enhance the performance of repository queries. When
a repository is configured, the Content Server creates various object type indexes. There are several
administration methods for managing type indexes:
• MAKE_INDEX
The MAKE_INDEX, page 308 section contains more information.
• MOVE_INDEX
By default, type tables and indexes are stored in the same tablespace or segment. However,
you can create a repository with separate tablespaces or segments for each or you can move the
indexes later, using the MOVE_INDEX method. Indexes that you create can be placed in any
directory. The MOVE_INDEX, page 309 section contains more information.
Documentum Platform and Platform Extensions Installation Guide contains more information on
creating a repository with separate tablespaces,
• DROP_INDEX
Removes a user-defined index. It is strongly recommended to not remove any of the
system-defined indexes. The DROP_INDEX, page 305 section contains more information.
Each method can be executed through Documentum Administrator, an apply method, or the DQL
EXECUTE statement.
104 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Managing Repositories
Date values
By default, Content Server stores values as UTC (Coordinated Universal Time) time in new
repositories (Documentum 6 and later), and as the local time in repositories that are upgraded from
before version 6.
The r_normal_tz property in the docbase config object controls how Content Server stores dates in the
repository. If the property value is 0, all dates are stored in UTC time. If the property contains an
offset value, dates are normalized using the offset value before being stored in the repository. Offset
values must use a time zone offset from UTC time, expressed as seconds. For example, if the offset
represents the Pacific Standard Time zone, the offset value is -8*60*60, or -28800 seconds. When the
property is set to an offset value, Content Server stores all date values based on the time identified by
the time zone offset.
In a Documentum 6 or later repository, r_normal_tz value is set to 0. In a repository upgraded from
a release earlier than version 6, the r_normal_tz value is set to the offset that represents Content
Server local time and cannot be changed.
There are several object types that support dump and load operations:
• Dump Record (dm_dump_record)
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 105
Managing Repositories
A dump record object contains information about a specific dump execution. It has a property
that contains the name of the file with the dumped information and properties whose values tell
Content Server which objects to copy into the specified file.
• Dump Object Record (dmi_dump_object_record)
A dA dump object record object contains information about one specific object that is copied out
to the dump file. Dump object record objects are used internally.
• Load Record (dm_load_record)
A load record object contains information about a specific load operation. Its properties are used
by Content Server to manage the loading process. It also has two properties that contain the
starting and ending times of the load operation.
• Load Object Record (dmi_load_object_record)
A load object record object contains information about one specific object that is loaded from the
dump file into a repository. Load object record objects are used internally.
The Documentum Content Server System Object Reference manual contains information on the properties
of these object types.
If a dumped SysObject is associated with a retainer, the dump operation also dumps the retainer.
Retainers record retention policy definitions.
If a retainer object is dumped directly, the object identified in the retainer_root_id property of the
retainer is also dumped. That object can be a single SysObject or a container, such as a folder. If it is a
container, the objects in that container are not dumped, only the container itself is dumped.
Note: This information does not apply to dump and load operations that are used to execute object
replication jobs.
A dump operation does not dump aspects associated with a dumped object. If aspects are associated
with specific instances of an object type, those aspects must be created in the target repository.
Similarly, if default aspects are defined for an object type and instances of that type are dumped, the
default aspects must be manually created in the target repository. The aspects must be created in the
target repository before performing the load operation.
Dumping the contents of an entire repository by setting the dump_operation property of the dump
record object to full_docbase_dump is currently not supported.
106 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Managing Repositories
To dump only specific objects in a repository, set the type, predicate, and predicate2 repeating
properties of the dump record object. The type property identifies the type of object you want to
dump and the predicate and predicate2 properties define a qualification that determines which
objects of that type are dumped. The Documentum Content Server System Object Reference manual
contains a full description of a dump record object’s properties.
However, when you dump an object, the server includes any objects referenced by the dumped object.
This process is recursive, so the resulting dump file can contain many more objects than the object
specified in the type, predicate, and predicate2 repeating properties of the dump record object.
When dumping a type that has a null supertype, the server also dumps all the objects whose
r_object_ids are listed in the ID field of the type.
The ACL associated with a dumped object is also dumped.
The type property is a repeating property. The object type specified at each index position is
associated with the WHERE clause qualification defined in the predicate at the corresponding
position.
The dump operation dumps objects of the specified type and any of its subtypes that meet the
qualification specified in the predicate. Consequently, it is not necessary to specify each type by name
in the type property. For example, if you specify the SysObject type, then Content Server dumps
objects of any SysObject or SysObject subtype that meets the qualification.
Use the following guidelines when specifying object types and predicates:
• The object type must be identified by using its internal name, such as dm_document or
dmr_containment.
Object type definitions are only dumped if objects of that type are dumped or if objects that are
a subtype of the type are dumped.
This means that if a subtype of a specified type has no objects in the repository or if no objects of
the subtype are dumped, the dump process does not dump the subtype’s definition. For example,
suppose you have a subtype of documents called proposal, but there are no objects of that type in
the repository yet. If you dump the repository and specify dm_document as a type to dump, the
type definition of the proposal subtype is not dumped.
This behavior is important to remember if you have user-defined subtypes in the repository and
want to ensure that their definitions are loaded into the target repository.
• To dump subtype definitions for types that have no objects instances in the repository or whose
objects are not dumped, you must explicitly specify the subtype in the dump script.
• If you have created user-defined types that have no supertype, be sure to explicitly include them
in the dump script if you want to dump objects of those types. For example, the following
commands will include all instances of your_type_name:
append,c,l,type
your_type_name
append,c,l,predicate
1=1
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 107
Managing Repositories
• If you have system or private ACLs that are not currently associated with an object, they are
not dumped unless you specify dm_acl as a type in the dump script. For example, include the
following lines in a dump script to dump all ACLs in the repository (including orphan ACLs):
append,c,l,type
dm_acl
append,c,l,predicate
1=1
You may want to specify a qualification in the predicate to exclude orphaned internal ACLs.
• By default, storage area definitions are only included if content associated with the storage is
dumped. If you want to dump the definitions of all storage areas, even though you may not
dump content from some, include the storage type (file store, linked, and distributed) explicitly
in the dump script.
• When you dump the dm_registered object type, Content Server dumps only the object
(dm_registered) that corresponds to the registered table. The underlying RDBMS table is not
dumped. Use the dump facilities of the underlying RDBMS to dump the underlying table.
You must supply a predicate for each object type you define in the type property. If you fail to supply
a predicate for a specified type, then no objects of that type are dumped.
To dump all instances of the type, specify a predicate that is true for all instances of the type, such
as 1=1.
To dump a subset of the instances of the object type, define a WHERE clause qualification in the
predicate properties. The qualification is imposed on the object type specified at the corresponding
index level in the type property. That is, the qualification defined in predicate[0] is imposed on the
type defined in type[0], the qualification defined in predicate[1] is imposed on the type defined in
type[1], and so forth.
For example, if the value of type[1] is dm_document and the value of predicate[1] is object_name =
’foo’, then only documents or document subtypes that have an object name of foo are dumped. The
qualification can be any valid WHERE clause qualification. The Content Server DQL Reference Manual
contains the description of a valid WHERE clause qualification.
The predicate property accepts a maximum of 255 characters. If the qualification exceeds 255
characters, place the remaining characters in the predicate2 property at the corresponding index
level. For example, if the qualification defined for type[0] is 300 characters, you put the first 255
characters in predicate[0] and the remaining 45 in predicate2[0]. When the dump is executed, Content
Server concatenates predicate[0] and predicate2[0]. The predicate2 property accepts a maximum
of 255 characters also.
Important: If you use the predicate2 property at any index position, you must also set the predicate2
property at all index positions before the desired position. Content Server does not allow you to
skip index positions when setting repeating properties. For example, if you set predicate2[2] and
predicate2[4], you must also set predicate2[0], predicate2[1], and predicate2[3]. It is valid to set the
values for these intervening index positions to a single blank.
108 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Managing Repositories
How the dump operation handles content depends on where the content is stored and how the
include_content parameter is set in the dump_parameter argument of the dump object.
By default, if the content is stored in a file store, EMC Centera storage area, or NetApp SnapLock
storage area, the content is not included in the dump file. You can set the include_content parameter
to include such content. If you are dumping a repository that has encrypted file store storage areas,
you must include the content in the dump file. Content Server decrypts the content before placing
it into the dump file.
Dumping without content, page 109 describes the default behavior and requirements for handling
dump files without content. Including content, page 109 describes how to include content and
the requirements for dump files with content.
If the content is stored in a blob or turbo storage area, the content is automatically included in the
dump file because the content is stored in the repository.
Content stored in external storage cannot be included in a dump file.
By default, a dump operation on content in file stores, EMC Centera stores, or NetApp SnapLock
stores does not include content. Instead, when an object with content is dumped, the operation places
a reference to the content in the dump file. If the content is stored in a file system, the reference is a file
system path. If the object is stored in a retention storage system, the reference is the content’s address.
When the dump file is loaded into the target repository, any file systems referenced for content must
be visible to the server at the target site. For content in retention storage, the ca_store object at the
target site must have an identical definition as the ca_store object at the source repository and must
point to the same storage system used by the source repository.
In the target repository, the storage objects for the newly loaded content must have the same name as
the storage objects in the source repository but the filepaths for the storage locations must be different.
The owner of the target repository must have Read permission in the content storage areas of the
dumped repository when the load operation is executed. The load operation uses the target repository
owner’s account to read the files in the source repository and copy them into the target repository.
Including content
To include content in a dump file, set the include_content property to T (TRUE) in the dump record
object. If the property is true, when Content Server dumps an object with content, the content is copied
into the dump file also. The content must be stored in a file store, EMC Centera store, or NetApp
SnapLock storage area. Content Server cannot copy content from external storage into a dump file.
In the target repository, the storage objects for the newly loaded content must have the same names
as those in the source repository, but the actual directory location, or IP address for a retention
store, can be different or the same.
Always include content if you are dumping a repository to make a backup copy, to archive a
repository, or to move the content or if the repository includes an encrypted storage area.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 109
Managing Repositories
Compressing content
When you include content, you can create a compressed dump file to save space. To compress the
content in the dump file, set the dump_parameter property to compress_content = T.
Content Server automatically decompresses a compressed dump file during a load operation.
Content Server uses an in-memory cache to store the object IDs of dumped objects. Before dumping
an object, Content Server checks the cache to see if the object has already been dumped.
You can improve the performance of a large dump operation by setting a larger cache size. If you do
not specify a cache size, the server uses a default size of 1 MB, which can hold up to 43,690 object IDs.
To increase the cache size, set the cache_size argument of the dump_parameter property to a value
between 1 and 100. The value is interpreted as megabytes and defines the maximum cache size. The
memory used for the cache is allocated dynamically as the number of dumped objects increases.
Content Server ignores the cache setting when doing a full repository dump.
You can also improve the performance of a dump operation by creating a non-restartable dump.
However, if a non-restartable dump operation fails, you will not be able to restart the dump from
the failure point. Instead, you must create a new dump record object to start the dump operation
from the beginning.
A dump operation can only be non-restartable if it is a partial repository dump. Full repository
dump operations are always restartable.
To create a non-restartable dump, set the dump_parameter property to restartable=F.
For dump operations that you execute regularly, we recommend that you write a script that creates
and saves the dump object and checks for errors after the execution. Using a script avoids re-creating
the dump object manually each time you want to perform the task.
To use a script:
1. Write a script that creates the dump object, sets its properties, saves the object, and checks for
errors.
If you do not set the file_name property to a full path, Content Server assumes the path is relative
to the root directory of the server. The filename must be unique within its directory. This means
that after a successful load operation that uses the dump file, you must move the dump file to
archival storage or destroy it so you can successfully execute the script later.
110 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Managing Repositories
2. Use IAPI to execute the script. Use the following command-line syntax:
iapi source_db -Uusername -Ppassword < script_filename
where:
• source_db is the name of the repository that you want to dump.
• username is the user name of the user who is executing the operation.
• password is the user password.
• script_filename is the name of the file you created in step 1.
3. If the dump was successful, destroy the dump object. If the Save on the dump operation did
not return OK, the dump was not successful.
Destruction of the dump object cleans up the repository and removes the dump object records
and state information that are no longer needed.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 111
Managing Repositories
1=1
append,c,l,type
dm_user
append,c,l,predicate
1=1
append,c,l,type
dm_group
append,c,l,predicate
1=1
append,c,l,type
dmi_queue_item
append,c,l,predicate
1=1
append,c,l,type
dmi_registry
append,c,l,predicate
1=1
append,c,l,type
dm_relation
append,c,l,predicate
1=1
append,c,l,type
dm_relation_type
append,c,l,predicate
1=1
append,c,l,type
dmr_containment
append,c,l,predicate
1=1
append,c,l,type
dmr_content
append,c,l,predicate
1=1
append,c,l,dump_parameter
cache_size=60 #set cache size
append,c,l,dump_parameter
restartable=F #non-restartable dump
append,c,l,predicate
1=1
save,c,l
getmessage,c
Note:
• In the append command line, the l is the lowercase letter L.
• If you do not set the file_name property to a full path, Content Server assumes the path is relative
to the root directory of the server. The filename must be unique within its directory. This means
that after a successful load operation using the dump file, you must move the dump file to archival
storage or destroy it so that you can successfully execute the script later.
• To dump user-defined types that have no supertype, add Append methods for each to the script:
append,c,l,type
your_type_name
append,c,l,predicate
1=1
112 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Managing Repositories
If Content Server crashes during a dump operation, there are two alternatives:
• Destroy the dump file (target file named in the script) if it exists and then re-execute the script.
If the specified file already exists when you try to save a new dump record object, the save
operation fails. Re-executing the script creates a new dump record object.
• If the dump operation is restartable, fetch the existing dump object from the source repository
and save it again. Saving the object starts the dump operation. Content Server begins where
it left off when the crash occurred.
The dump file is a binary file. If you move a dump file from one machine to another electronically, be
sure to use a binary transfer protocol.
If your operating system is configured to allow files larger than 2 GB, the dump file can exceed 2
GB in size. If you create a dump file larger than 2 GB, you cannot load it on a machine that does
not support large file sizes or large file systems.
Loading a repository
Loading a repository puts the objects stored in a dump file into the repository. The dump file header
does not indicate the session code page in which the dump file was created. If you do not know the
session code page in use when a dump file was created, do not load the dump file.
If the dump file does not include the actual content files associated with the objects you are loading,
the operation reads the content from the storage areas of the dumped repository. This means that the
owner of the repository that you are loading must have Read privileges at the operating system level
for the storage areas in the source repository.
The load operation generates a dmi_queue_item for the dm_save event for each object of type
SysObject or a subtype that is loaded into the target repository. The event is queued to the
dm_fulltext_index_user user account. This ensures that the objects are added to the target repository’s
index. You can turn off this behavior. The Turning off save event generation during load operations,
page 114 section contains the instructions.
Loading a repository is accomplished by creating and saving a load record object. The act of saving
the object starts the operation.
Note: The load operation performs periodic commits to the repository. Consequently, you cannot
load a repository if you are in an explicit transaction. The Content Server does not allow you to save
a load record object if you are in an explicit transaction. Similarly, you cannot perform a revert or
destroy operation on a load record object if you are in an explicit transaction.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 113
Managing Repositories
Generally, when you load objects into a repository, the operation does not overwrite any existing
objects in the repository. However, in two situations overwriting an existing object is the desired
behavior:
• When replicating content between distributed storage areas
• When restoring archived content
In both situations, the content object that you are loading into the repository could already exist. To
accommodate these instances, the load record object has a relocate property. The relocate property is
a Boolean property that controls whether the load operation assigns new object IDs to the objects it
is loading.
The type and predicate properties are for internal use and cannot be used to load documents of a
certain type.
If you dump and load job objects, the load operation automatically sets the job to inactive in the new
repository. This ensures that the job is not unintentionally started before the load process is finished
and it allows you the opportunity to modify the job object if needed. For example, to adjust the
scheduling to coordinate with other jobs in the new repository.
The load operation sets jobs to inactive (is_inactive=TRUE) when it loads the jobs, and sets the jobs’
run_now property to FALSE.
If the load operation finds an existing job in the target repository that has the same name as a job
it is trying to load, it does not load the job from the dump file.
When you load a registered table, the table permits defined for that table are carried over to the
target repository.
During a load operation, every object of type SysObject or SysObject subtype loaded into the target
repository generates a save event. The event is queued to the dm_fulltext_index_user. This behavior
ensures that the object is added to the target index of the repository.
The behavior is controlled by the load parameter called generate_event. The parameter is T by
default. If you do not want the load operation to queue save events to the dm_fulltext_index_user, set
the parameter to F for the operation. The parameter is set in the load_parameter property as:
generate_event=F
114 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Managing Repositories
New repositories are not empty. They contain various cabinets and folders created by the installation
process, such as:
• A user object for the repository owner
• A cabinet for the repository owner
• The docu group
• The System cabinet, which contains a number of subfolders
• The Temp cabinet
When you load a dump file into a new repository, these objects are not replaced by their counterparts
in the dump file because they already exist in the new repository.
However, if you have changed any of these objects in the source repository (the source of the dump
file), the changes are lost because these objects are not loaded. For example, if you have added any
users to the docu group or if you have altered permissions on the System cabinet, those changes
are lost.
To ensure that any changes you have made are not lost, fetch from the source repository any of the
system objects that you have altered and then use the Dump method to get a record of the changes.
For example, if the repository owner’s cabinet was modified, use the following command sequence to
obtain a listing of its property values:
fetch,c,cabinet_id
dump,c,l
After the load operation, you can fetch and dump the objects from the new repository, compare the
new dump results with the previous dump results, and make any necessary changes.
Documentum provides a utility that you can run on a dump file to tell you what objects that you must
create in the new repository before you load the dump file. The utility can also create a DQL script
that you can edit and then run to create the needed objects. The syntax for the preload utility is:
preload repository [-Uusername] -Ppassword -dump_file filename
[-script_file name]
• repository is the name of the repository into which you are loading the dump file.
• filename is the name of the dump file.
• name defines a name for the output DQL script.
If you do not include a username, the current user is assumed.
Note: This utility does not report all storage areas in the source repository, but only those that have
been copied into the dump file.
Use the following procedure to load a dump file into a new repository.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 115
Managing Repositories
Note: You cannot perform this procedure in an explicit transaction because the load operation
performs periodic commits to the repository. Content Server does not allow you to save the load
record object to start the load operation if you are in an explicit transaction.
5. Log in as the owner of the installation and use IAPI to execute the script.
When you start IAPI, connect to the new repository as a user who has Sysadmin privileges in
the repository.
6. After the load completes successfully, you can destroy the load object:
destroy,c,load_object_id
Note:
• Destroying the load object cleans the load object record objects that are generated by the
loading process and old state information.
• If you created the dump file by using a script, move the dump file to archival storage or
destroy it after you successfully load the file. You cannot successfully execute the script again
116 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Managing Repositories
if you leave the dump file in the location where the script created it. Content Server does not
overwrite an existing dump file with another dump file of the same name.
• If Content Server crashes during a load, you can fetch the Load Object and save it again, to
restart the process. Content Server begins where it left off when the crash occurred.
DocApps
DocApps are not dumped when you dump a repository. Consequently, after you load a new
repository, install and run the DocApp installer to reinstall the DocApps in the newly loaded
repository.
You can activate tracing during dump and load operations to generate trace messages in the Content
Server session log.
To activate tracing, use a setServerTraceLevel method.
The trace information includes:
• Whether Content Server fails to dump or load an object
• The query used to search for matching objects for a dump or load operation
• The current progress and status of a dump or load operation
Repository maintenance
Repositories should be cleaned up regularly as part of a maintenance schedule. Cleaning a repository
involves removal of:
• Orphaned content files
When users delete a document, or any object that has a content file associated with it, the system
deletes the object and marks the content as an orphan. The system does not delete the actual
content file. This must be done using the dmclean utility.
• Unwanted document versions and renditions
• Orphaned annotations and internal ACLs
An annotation is orphaned when it is detached from all documents or other objects to which
it was attached.
An internal ACL is orphaned when it is no longer referenced by any object.
• Aborted workflows
A workflow that has been stopped by the execution of an Abort method is an aborted workflow.
• Old log files
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 117
Managing Repositories
To clean a repository:
1. Perform a complete backup of the repository.
2. Delete unwanted versions of documents.
You can delete only versions created before a certain date or by a certain author or delete all but
the CURRENT version from one or more version trees.
• To delete selected versions of documents, use the DELETE...OBJECT statement.
Identify the documents to delete by their creation date, modification date, or some other
criteria that you choose. For example, the following statement deletes all documents that
have not been changed since January 1, 2000:
DELETE "dm_document" OBJECTS
WHERE "r_modify_date" < DATE('01/01/2000')
4. Clean the temp directory by deleting the temporary files in that location.
You can determine the location of the temp directory with the following query:
SELECT "file_system_path" FROM "dm_location"
WHERE "object_name" = 'temp'
6. Run the dmclean utility to remove orphaned content files, orphaned annotations and ACLs, and
aborted workflows. You can execute the Dmclean administration tool or run the dmclean utility
manually. The Dmclean, page 334 section contains more information on the dmclean utility.
118 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Managing Repositories
7. Delete or archive old server logs, session logs, trace files, and old versions of the product.
Session logs are located in the %DOCUMENTUM%\dba\log\repository_id
($DOCUMENTUM/dba/log/repository_id) directory.
Content Server and connection broker log files are found in the %DOCUMENTUM%\dba\log
($DOCUMENTUM/dba/log) directory. The server log for the current server session is named
repository_name.log. The log for the current instance of the connection broker is named
docbroker.docbroker_hostname.log. Older versions of these files have the extension .save and the
time of their creation appended to their name.
On Windows, you can use the del command or the File Manager to remove unwanted session
logs, server logs, and connection broker logs. On UNIX, use the rm command.
Checking consistency
Content Server provides the Consistency Checker, a tool that scans a repository and reports any
inconsistencies. Inconsistencies typically include type or object corruptions, objects that reference a
user, group, or other object that does no exist, and so forth. The tool does not fix the inconsistencies.
Contact OpenText Global Technical Services for assistance in correcting errors found by the
consistency checker.
The Consistency Checker tool is a job that can be run from the command line or using Documentum
Administrator. The Running jobs, page 392 section contains more information on running the job in
Documentum Administrator.
The job generates a report that lists the checked categories and any inconsistencies that were found.
The report is saved in the /System/Sysadmin/Reports/ConsistencyChecker directory. If no errors are
found, the current report overwrites the previous report. If an error is found, the current report is
saved as a new version of the previous report. By default, the Consistency Checker job is active
and runs once a day.
OpenText Documentum recommends to run this tool on a repository before upgrading the repository
to a new version of the Documentum Server.
The Consistency Checker job is implemented as the consistency_checker.ebs script. To run the script
from the command line, enter the following syntax at the command-line prompt:
dmbasic -fconsistency_checker.ebs -eEntry_Point --repository_
name superuser password
where repository_name is the name of the repository that is checked, superuser is the user name of a
repository superuser, and password is the password of the superuser account.
The results of the checks are directed to standard output.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 119
Managing Repositories
Example report
The following example describes a Consistency Checker report. In this case, the tool detected five
inconsistencies in the Users & Groups section.
Beginning Consistency Checks.....
Repository Name: buzzard
Server Version: 5.1.0.63 Win32.SQLServer
Database: SQLServer
#################################################
##
## CONSISTENCY_CHECK: Users & Groups
##
## Start Time: 09-10-2002 10:15:55
##
##
#################################################
Checking for users with non-existent group
WARNING CC-0001: User 'docu' belongs to
non-existent group ''
WARNING CC-0001: User 'engr' belongs to
non-existent group ''
WARNING CC-0001: User 'marketing' belongs to
non-existent group ''
WARNING CC-0001: User 'nagboat' belongs to
non-existent group ''
WARNING CC-0001: User 'admingroup' belongs to
non-existent group ''
Rows Returned: 5
Checking for users belonging to groups not in dm_user
Checking for users not listed in dmi_object_type
Checking for groups not listed in dmi_object_type
Checking for groups belonging to non-existent groups
Checking for groups with non-existent super groups
##################################################
##
##
## CONSISTENCY_CHECK: ACLs ##
##
## Start Time: 09-10-2002 10:15:55
##
##
##################################################
Checking for ACLs with non-existent users
Checking for ACLs with missing dm_acl_r table entries
Checking for sysobjects with acl_domain set to
non-existent user
Checking for sysobjects that belong to
non-existent users
Checking for sysobjects with non-existent ACLs
Checking for ACL objects with missing dm_acl_s entry
Checking for ACL objects with r_accessor_permit
value but missing r_accessor_name value
Checking for ACL objects with r_accessor_name value
but missing r_accessor_permit value
Checking for ACL objects with r_is_group value but
missing r_accessor_permit value
Checking for ACL objects with r_is_group value but
missing r_accessor_name value
Checking for ACL object with r_accessor_name value
120 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Managing Repositories
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 121
Managing Repositories
122 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Managing Repositories
#################################################
##
##
## CONSISTENCY_CHECK: Data Dictionary
##
## Start Time: 09-10-2002 10:16:04
##
##
#################################################
Checking for duplicate dmi_dd_attr_info objects
Checking for duplicate dmi_dd_type_info objects
Checking for any dmi_dd_attr_info objects that are
missing an entry in dmi_dd_common_info_s
Checking for any dmi_dd_type_info objects that are
missing an entry in dmi_dd_common_info_s
Checking for any dmi_dd_attr_info objects that are
missing an entry in dmi_dd_attr_info_s
Checking for any dmi_dd_type_info objects that are
missing an entry in dmi_dd_type_info_s
################################################
##
##
## CONSISTENCY_CHECK: Lifecycles
##
## Start Time: 09-10-2002 10:16:11
##
#################################################
Checking for sysobjects that reference non_existent
policy objects
Checking for any policy objects that reference
non-existent types in included_type
Checking for any policy objects with missing
dm_sysobject_s entry
Checking for any policy objects with missing
dm_sysobject_r entries
Checking for policy objects with missing dm_policy_r
entries
Checking for policy objects with missing dm_policy_s
entry
################################################
##
##
## CONSISTENCY_CHECK: FullText
##
## Start Time: 09-10-2002 10:16:11
##
################################################
Checking for tdk index objects that point to
non-existent fulltext index objects
Checking for any tdk collect objects that point to
non-existent tdk index objects
Checking for any fulltext index objects that point
to non-existent tdk index objects
Checking for any tdk index objects that point to
non-existent tdk collect objects
Checking for any non-orphaned dmr_content objects
that point to types that do not exist
Checking for any non-orphaned dmr_content objects
that point to non-existent formats
Checking for any dmr_content objects that point to
a non-existent fulltext index
Checking for any fulltext index propertys that are
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 123
Managing Repositories
no longer in dm_type
#################################################
##
##
## CONSISTENCY_CHECK: Indices
##
## Start Time: 09-10-2002 10:16:11
##
#################################################
Checking for dmi_index objects that reference
non-existent types
Checking for types with non-existent dmi_index
object for <type>_s table
Checking for types with non-existent dmi_index
object for <type>_r table
Checking for index objects with invalid property
positions
################################################
##
##
## CONSISTENCY_CHECK: Methods
##
## Start Time: 09-10-2002 10:16:11
##
################################################
Checking for java dm_method objects that reference
jview
124 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Managing Repositories
Adding repositories
Adding repositories requires creating a repository running the Documentum Server Manager on
Windows platforms or the Content Server configuration program on UNIX or Linux platforms.
Federations
A federation is a set of two or more repositories bound together to facilitate the management of a
multi-repository distributed configuration. Federations share a common name space for users and
groups and project to the same connection brokers.
Global users, global groups, and global permission sets are managed through the governing
repository, and have the same property values in each member repository within the federation. For
example, if you add a global user to the governing repository, that user added to all the member
repositories by a federation job that synchronizes the repositories.
One enterprise can have multiple repository federations, but each repository can belong to only one
federation. Repository federations are best used in multi-repository production environments where
users share objects among the repositories. We do not recommend creating federations that include
production, development, and test repositories, because object types and format definitions change
frequently in development and test environments, and these must be kept consistent across the
repositories in a federation.
The repositories in a federation can run on different operating systems and database platforms.
Repositories in a federation can have different server versions; however, the client running on the
governing repository must be version-compatible with the member repository in order to connect to it.
To create or modify federations, you do not have to be connected to a repository in the federation.
To add a repository to a federation, your Documentum Administrator connection broker list must
include a connection broker to which the particular repository projects.
Before you set up a repository federation, read the Documentum Platform and Platform Extensions
Installation Guide.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 125
Managing Repositories
Field Description
Info tab
Name Type the name of the new federation.
Make All Governing Select to make all users and groups in the governing repository
Repository Users & Groups global users and global groups.
Global
Active This option is available if you are modifying an existing federation.
To change the status of an existing federation, select or clear the
Active checkbox.
Members tab
Add Click Add to add member repositories.
126 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Managing Repositories
Field Description
Password The password of a superuser account this is configured for the
repository.
Skip this member and Select this option if you want to skip entering the name and
continue authentication password at this time.
Documentum Platform and Platform Extensions Installation Guide contains more information.
Documentum Administrator User Guide contains the instructions on creating or modifying federations.
Deleting Federations
Documentum Administrator User Guide contains the instructions on deleting federations.
You can make a federation inactive by accessing the Info page of the federation and clearing the
Active checkbox.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 127
Managing Repositories
128 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Chapter 5
Managing Sessions
The category identifies the functionality, feature, or facility that the key controls. When adding a key
to the dfc.properties file, both the category and the name, in addition to a value must be specifies.
For example:
dfc.data.dir= value
dfc.tracing.enable= value
dfc.search.ecs.broker_count = value
For OpenText Documentum web-based products, the dfc.properties file is packaged in the application
WAR file.
For desktop applications and Content Server, the dfc.properties file is installed in the
C:\Documentum\Config directory on Windows hosts, and the $DOCUMENTUM_SHARED/config
directory on UNIX hosts. The file can be edited using any text editor.
The dfc.properties file is a standard Java properties file. If a key value has a special character, use a
backslash (\) to escape the character. In directory path specifications, use a forward slash (/) to
delimit directories in the path.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 129
Managing Sessions
dfc.docbroker.port[n]=port_number #optional
The [n] is a numeric index, where n is an integer starting with 1. All keys for a particular connection
broker must have the same numeric index. If there are entries for multiple connection brokers, DFC
contacts the connection brokers in ascending order based on the numeric index by default.
The host_name is the name of the machine on which the connection broker resides. The IP_address is
the IP address of the machine.
The port is the TCP/IP port number that the connection broker is using for communications. The
port number defaults to 1489 if it is not specified. If the connection broker is using a different port,
you must include this key.
The following example defines two connection brokers for the client. Because lapdog is not using the
default port number, the port number is also specified in the file:
dfc.docbroker.host[1]=bigdog
dfc.docbroker.port[1]=1489
dfc.docbroker.host[2]=lapdog
dfc.docbroker.port[2]=1491
Only the host specification is required. The other related keys are optional.
If you add, change, or delete a connection broker’s keys, the changes are visible immediately. You
do not have to restart your session.
130 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Managing Sessions
A native connection is preferred, but a secure connection is also accepted. DFC attempts to
establish a native connection first. If it cannot, it tries to establish a secure connection. If that also
fails, the connection attempt fails.
The default setting for the key is try_native_first.
Specifying a connection type in the application overrides the default setting in the
secure_connect_default key. Documentum Foundation Classes Development Guide contains information
on how to specify it in an application. For information about configuring the server default for
connections, read the Secure Connect Mode property in Modifying general server configuration
information, page 46.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 131
Managing Sessions
132 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Chapter 6
Managing Java Method Servers
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 133
Managing Java Method Servers
The Tools menu on the Java Method Server Configuration page also provides the option to view
information about all active Java method servers. Select Tools > Active Java Method Servers List to
display the Active Java Method Servers List page.
134 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Managing Java Method Servers
Edit Select the Content Server and click Edit to modify the Content
Server associated with the JMS configuration.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 135
Managing Java Method Servers
The wait time is doubled each time the JMS fails to respond
until the maximum wait time is reached.
Maximum Wait Time on Failure The maximum wait time Content Server keeps trying to
contact the JMS, if the JMS fails to respond.
Java Method Server in Use The name of the active Java method server that was used last
time.
136 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Managing Java Method Servers
Java methods
Technically, all OpenText Documentum Java methods are simple Java classes. A plain Java class
becomes a Java method if it implements either the IDfMethod or IDmMethod interfaces. If a program
starts a repository session, the program should call an explicit Disconnect when the session is finished.
Methods are deployed as a BOF module and executed on a Java method server. The methods must
have the following property values:
• The method must implement the IDfMethod interface.
• The module must be a simple module, one which implements the IDfModule interface.
• The method_verb property of the dm_method object must be set to the module name, not the
class name.
• The method_type property must be set to Java.
• The use_method_server property must be set to T (TRUE).
• The run_as_server property must be set to T (TRUE).
Note: UNIX users who are authenticated against a Windows domain cannot execute methods
under their own accounts. All methods executed by such users must be run with run_as_server
set to TRUE.
Note: Documentum does not provide basic support for resolving problems encountered when
creating or executing custom Java methods or classes. For help, contact OpenText Global Technical
Services.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 137
Managing Java Method Servers
138 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Managing Java Method Servers
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 139
Managing Java Method Servers
140 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Chapter 7
Managing LDAP Servers
LDAP servers
An Lightweight Directory Access Protocol (LDAP) directory server is a third-party product that
maintains information about users and groups. Documentum Content Servers use LDAP directory
servers for two purposes:
• Manage users and groups from a central location.
• Authenticate users.
It is not necessary for all users and groups in a repository to be managed through an LDAP directory
server. A repository can have local users and groups in addition to the users and groups managed
through a directory server. You can use more than one LDAP directory server for managing users
and groups in a particular repository.
Using an LDAP server provides a single place for making additions and changes to users and groups.
Content Server runs a synchronization job to automatically propagate the changes from the directory
server to all the repositories using the directory server.
The LDAP support provided by Content Server allows mapping LDAP user and group attributes to
user and group repository properties or a constant value. When the user or group is imported into
the repository or updated from the directory server, the repository properties are set to the values of
the LDAP properties or the constant. The mappings are defined when Content Server creates the
LDAP configuration. The mappings can be modified later.
Using an LDAP directory server includes the following constraints:
• The changePassword method is not supported for users managed through an LDAP directory
server.
• Dynamic groups are supported only on Sun Java System directory servers.
• The LDAP synchronization job must have at least read access to a unique identifier on the
directory server, as follows:
— nsuniqueid on SunDirectory processor
— objectguid on Active Directory Server
— ibm-entryuuid on IBM
— guid on Novell
— orclguid on Oracle
Apart from the unique identifiers, all the attributes that have been mapped in the LDAP
configuration object should also have read access in the directory server.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 141
Managing LDAP Servers
142 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Managing LDAP Servers
and Authentication tab. To run the LDAP synchronization job for nested groups, new users and
groups are not synchronized in the repository.
To create a new LDAP configuration, you need the following information about the LDAP directory
server:
• The name of the host where the LDAP directory server is running
• The port where the LDAP directory server is listening
• The type of LDAP directory server
• The binding distinguished name and password for accessing the LDAP directory server
• The person and group object classes for the LDAP directory server
• The person and group search bases
• The person and group search filters
• The Documentum attributes that you are mapping to the LDAP attributes
Note:
• Ensure that the binding user has the List Contents and Read Property (LCRP) permission on the
deleted objects container for configuring the LDAP objects. Otherwise, the deleted users in the
Active Directory server are shown as active LDAP users in the repository. If the optional job
argument for LDAP Synchronization, container_for_deleted is set, the argument value will
be used instead of Deleted Objects while checking for objects deleted at Active Directory.
• To avoid the null pointer exception while using ldap_matching_rule_in_chain for nested
group synchronization iteration through a collection of objects retrieved from Active Directory,
ensure that you set the value of ldap_matching_rule_in_chain to false. By default, the
value is true.
Documentum Administrator User Guide contains the instructions on adding or modifying an LDAP
server configuration.
Content Server creates an ldap<objectID>.cnt password when you create the LDAP configuration
object. If you have more than one Content Server associated with the repository, the password file
must be copied to each Content Server in the environment or authentication fails.
Table 27, page 143 describes the properties on the Info tab of the LDAP Server Configuration page.
The properties apply to new and existing LDAP configuration objects.
Field Description
Name The name of the new LDAP configuration object.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 143
Managing LDAP Servers
Field Description
Status Select the Enable this LDAP Configuration checkbox to enable
the LDAP configuration.
Directory Type The Release Notes documents for your version of Documentum
Content Server contains information on which LDAP server
versions are supported.
Options are:
• Sun One/Netscape/iPlanet Directory Server (default)
• Microsoft ADAM
• Novell eDirectory
Hostname / IP Address The name of the host on which the LDAP directory server is
running.For the 7.0 release, use only the hostname and not
the IP address. However, you can use both the hostname and
IP address in pre-7.0 releases.
Port The port number where the LDAP directory server is listening
for requests.
144 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Managing LDAP Servers
Field Description
SSL Port Specifies the SSL port. This option only displays when the Use
SSL option is selected.
If you are using more than one LDAP server in SSL mode, you
must store the LDAP certificates a single location, as described
in Using multiple LDAP servers in SSL mode, page 156.
Validate SSL Connection If you selected Use SSL, click to validate that a secure
connection can be established with the LDAP server on the
specified port. If the validation fails, the system displays an
error message and you cannot proceed further until valid
information is provided.
Follow these manual steps for SSL validation for 6.5x and below Content Servers:
1. Depending on the operating system (other than Windows 64-bit) on which the application
server is installed, copy all the jar files from $Application_root$/WEB-INF/thirdparty/$osname$
to $Application_root$/WEB-INF/lib
For example, if the operating system on which the DA application is installed is
Windows, copy all the jar files from $Application_root$/WEB-INF/thirdparty/win32/ to
$Application_root$/WEB-INF/lib
If the operating system on which the application server is installed is Windows 64-bit and the
application server is using 64-bit JDK, do the following:
1. Backup the jss311.jar file and delete it from $Application_root$/WEB-INF/lib
2. Copy the jss42.jar file from $Application_root$/WEB-INF/thirdparty/win64/6.0.6 to
$AppServer_root$/WEB-INF/lib
2. Depending on the operating system (other than Windows 64-bit) on which the
application server is installed, copy all *.dll, (for Windows) or *.so (for UNIX) files from
$Application_root$/WEB-INF/thirdparty/$osname$ to $AppServer_root$/da_dlls
Note: If the da_dlls folder does not exist in the above specified location, create it.
For example, if the operating system on which the DA application is installed is Windows, copy all
the dll files from $Application_root$/WEB-INF/thirdparty/win32/ to $Application_root$/da_dlls
If the operating system on which the application server is installed is Windows 64-bit and the
application server is using 64-bit JDK, do the following:
1. Copy the Microsoft.VC90.DebugCRT.manifest file from $Application_root$/WEB-INF/
thirdparty/win64/6.0.6 to $AppServer_root$/da_dlls
2. Copy all *.dll files from $Application_root$/WEB-INF/thirdparty/win64/6.0.6 to
$AppServer_root$/da_dlls
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 145
Managing LDAP Servers
3. Set the path of the dlls in startup batch file of the application server.
• For Windows operating system: PATH=$AppServer_root$\da_dlls;%PATH%;
• For UNIX operating system: LD_LIBRARY_Path=$AppServer_root$/da_dlls:%LD_LIBRARY_
PATH%:
Table 28, page 146 describes the properties on the Sync & Authentication tab of the LDAP Server
Configuration page. The properties apply to new and existing LDAP configuration objects.
Field Description
Import Specifies how users and groups are imported. Available
options are:
• Users and groups (default)
• Users only
• unchanged
146 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Managing LDAP Servers
Field Description
Update Names Select to Update user names in repository or Update group
names in repository.
Starting with the 7.0 release, nested groups in LDAP is supported. You can synchronize nested
groups in the repository between Content Server and the LDAP directory server. The group search
filter of the default LDAP config object needs to be set to the appropriate group name that forms the
root group of the nested group structure. Starting with the 7.1 release, nested cyclic groups are
also supported where a group forms a cycle with another in LDAP and both these groups are then
synchronized into the repository. The cycles within these two groups are not retained since Content
Server does not support cycles in groups.
To activate the nested cyclic group feature, you must update the dm_docbase_config object as
shown below:
API>
retrieve,c,dm_docbase_config
...
3c00014d80000103
API> append,c,l,r_module_name
SET> LDAP_CYCLIC_SAVE
...
OK
API> append,c,l,r_module_mode
SET> 1
...
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 147
Managing LDAP Servers
OK
API> save,c,l
...
OK
API>
Table 29, page 148 describes the properties on the Mapping tab of the LDAP Server Configuration
page. The properties apply to new and existing LDAP configuration objects.
Field Description
User Object Class Type the user object class to use for searching the users in the
directory server.
User Search Base Type the user search base. This is the point in the LDAP tree
where searches for users start. For example:
cn=Users,ou=Server,dc=sds,dc=inengvm1llc,dc=corp,dc=
test,dc=com.
User Search Filter Type the person search filter. This is the name of the filter used
to make an LDAP user search more specific. The typical filter
is cn=*
Search Builder Click to access the Search Builder page. This page enables you
to build and test a user search filter. When finished, the User
Search Filter field is populated with the resulting filter.
Group Object Class Type the group object class to use for searching the groups in
the directory server. Typical values are:
• For Netscape and Oracle LDAP servers: groupOfUnique-
Names
cn=Groups,ou=Server,dc=sds,dc=inengvm1llc,dc=corp,dc=
test,dc=com
Group Search Filter Type the group search filter. This is the name of the filter used
to make an LDAP group search more specific. The typical filter
is cn=*
Search Builder Click to access the Search Builder page. This page enables
you to build and test a group search filter. When finished, the
Group Search Filter field is populated with the resulting filter.
148 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Managing LDAP Servers
Field Description
Property Mapping When a new configuration is added, this table populates
with the mandatory mapping attributes. The mappings are
dependent upon the directory type. This table defines the
pre-populated attributes and their mappings. All mapping
types are LDAP Attribute.
Add Click to access the Map Property page to add an attribute.
From there, select a Documentum attribute, then select the
LDAP attribute to which the Documentum attribute maps or
type in a custom value.
Edit Select an attribute and then click Edit to access the Map
Property page. On the Map Property page, edit the attribute
properties.
Delete Select an attribute and then click Delete to remove an attribute.
The system displays the Deletion Confirmation page.
Repository Property Displays the repository property that is the target of the
mapping.
Type Identifies the source of the property: User or Group.
Map To Displays which attributes on LDAP that the property is
mapped to.
Map Type Identifies the type of data: LDAP attribute, expressions, or a
fixed constant.
Mandatory Indicates if the mapping is mandatory for the attribute.
• user_name
• user_login_name
• group_name
You can change the defaults, but you must provide some value
or mapping for these properties. Users cannot be saved to the
repository without values for these three properties, nor can a
group be saved to the repository without a group name.
Table 30, page 150 describes the properties on the Failover tab of the LDAP Server Configuration
page. The properties apply to new and existing LDAP configuration objects.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 149
Managing LDAP Servers
Field Description
Failover Settings Use this section to enter settings for the primary LDAP server.
Retry Count The number of times Content Server tries to connect to the
primary LDAP server before failing over to a designated
secondary LDAP server. The default is 3.
150 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Managing LDAP Servers
If the user’s sn (surname) is Smith and the given name is Patty, the expression above resolves to
smith_p@company.com. The 1 at the end of given name directs the system to only use the first
letter of the given name.
You can specify an integer at the end of an LDAP attribute name in an expression to denote that you
want to include only a substring of that specified length in the resolved value. The integer must be
preceded by a pound (#) sign. The substring is extracted from the value from the left to the right. For
example, if the expression includes ${sn#5} and the surname is Anderson, the extracted substring
is Ander.
Note: Content Server does not support powershell or any other scripting extensions for the
expression notation.
Values of repository properties that are set through mappings to LDAP attributes can only be
changed either through the LDAP entry or by a user with superuser privileges.
Note: Changing mappings for the user_name, user_login_name, or group_name after the user or
group is synchronized for the first time is not recommended. Doing so may cause inconsistencies in
the repository.
Table 31, page 151 contains examples of how the Attribute Map page for LDAP configurations is
typically completed for Netscape iPlanet, Oracle Internet Directory Server, and Microsoft Active
Directory LDAP servers.
Table 31. Netscape iPlanet, Oracle Internet Directory Server, and Microsoft Active Directory example
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 151
Managing LDAP Servers
Mapping guidelines
The following rules apply when mapping LDAP group or user attributes to a repository property:
• In expressions, spaces are not required between references to LDAP attributes due to the bracket
delimiter. If there is a space between mapped values, it appears in the result of the mapping.
• The length of the expression mapped to a single repository property cannot exceed 64 characters.
Expressions that exceed 64 characters are truncated. The expression is recorded in the map_val
property of the ldap config object. This property has a length of 64.
• All standard Documentum property lengths apply to the mappings. For example, the mapping
string for user_name must resolve to 32 characters or less.
Access the Search Builder page by clicking the Search Builder button on the Mapping tab of the New
LDAP Server Configuration or LDAP Server Configuration Properties page.
The Search Builder page enables you to build and test a user or group search filter. You can enter up
to ten lines of search criteria. When finished, the User Search Filter or Group Search Filter field is
populated with the resulting filter.
On the Map Property page, you can add or modify mapping properties.
152 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Managing LDAP Servers
Field Description
Name Enter the name of the secondary LDAP server.
Hostname / IP Address Type the name of the host on which the secondary LDAP
directory server is running.
Port The port information is copied from the primary LDAP server.
Binding Name The binding name is copied from the primary LDAP server.
Binding Password Type the binding distinguished password used to authenticate
requests to the secondary LDAP directory server by Content
Server or the check password program.
Confirm Password Re-enter the binding password for verification.
Bind to User DN The bind to user DN information is copied from the primary
LDAP server.
Use SSL The SSL information is copied from the primary LDAP server.
SSL Port The SSL port number is copied from the primary LDAP server.
Certificate Location The certificate location is copied from the primary LDAP
server.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 153
Managing LDAP Servers
Documentum Administrator User Guide contains the instructions on forcing LDAP server
synchronization.
154 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Managing LDAP Servers
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 155
Managing LDAP Servers
156 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Chapter 8
Distributed Content Configuration
Network locations
Network locations are a basic building block of a single-repository distributed environment for
web-based clients. Network locations identify locations on a network, and, optionally, a range of
IP addresses, from which users connect to Documentum web clients. For example, a Documentum
installation could include network locations called San Francisco, New York, London, Athens, Tokyo,
and Sydney, corresponding to users in those cities. A network location can also identify specific
offices, network subnets, or even routers.
Network locations are associated with server configuration objects and acs configuration objects. The
server configuration objects and acs configuration objects contain information defining the proximity
of a Content Server or ACS Server to the network location. Content Server uses the information in the
server configuration objects and acs configuration objects and their associated network locations to
determine the correct content storage area from which to serve content to a web client end user and to
determine the correct server to serve the content.
Creating network locations requires superuser privileges. Network locations can be created only in
a repository designated as a global registry, and the name of each location must be unique among
the set of network locations in the global registry. Network locations should be created in the global
registry repository that is defined when DFC is installed on the Documentum Administrator host. If
a network contains multiple global registry repositories, a particular Documentum Administrator
instance only recognizes the global registry that was designated during DFC installation on the
Documentum Administrator host. You can connect to a global registry repository without being able
to create network locations in that global registry.
Use the Administration > Distributed Content Configuration > Network Locations navigation in
Documentum Administrator to access the Network Locations list page. From the Network Locations
list page, you can create, copy, view, modify, and delete network locations.
Documentum Platform and Platform Extensions Installation Guide contains more information on network
locations.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 157
Distributed Content Configuration
correct network location is not selected automatically. Therefore, when you create network locations,
include the IP address 127.0.0.1 in a network location if you want to:
• Run a browser on the application server host where a WDK application is located.
• Use localhost in the URL when accessing the application.
• Automatically select the correct network location.
158 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Distributed Content Configuration
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 159
Distributed Content Configuration
Network locations are used to determine which server provides content files to end users. If the
network location that you are deleting is associated with any BOCS or ACS servers, users at those
locations could not receive content in the most efficient manner possible.
When you delete network locations, references to the network locations in existing server
configuration objects, acs configuration objects, bocs configuration objects, and BOCS caching jobs
are not automatically removed. You must manually remove any references to the deleted network
locations.
Documentum Administrator User Guide contains the instructions on deleting network locations.
ACS servers
An Accelerated Content Services (ACS) server is a light-weight server that is automatically created
during a Content Server installation. The ACS server reads and writes content for web-based client
applications using HTTP and HTTPS protocols. ACS servers do not modify object metadata but
write content to storage areas.
Each Content Server host installation has one ACS server that communicates with one Content Server
per repository and the Documentum Message Services (DMS) server. A single ACS server can serve
content from multiple repositories. WDK-based applications can use the ACS server if the ACS server
is enabled in the app.xml file of the applications.
Most ACS server properties can be modified using Documentum Administrator. Certain ACS server
behavior is configured the acs.properties file on the ACS server host and cannot be modified by
Documentum Administrator.
Documentum Platform and Platform Extensions Installation Guide provides information on modifying the
acs.properties file and additional information about the ACS server.
The ACS server is configured on the ACS Servers Configuration page that can be accessed in the
Administration > Distributed Content Configuration > ACS Servers node. The ACS Servers
Configuration page displays information about the ACS server, as described in Table 34, page 160.
Column Description
Name The name that is assigned to the ACS server during the
Content Server installation. The name cannot be modified.
Content Server The name of the Content Server the ACS server is associated
with.
160 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Distributed Content Configuration
Column Description
Content Access Specifies how the ACS server can access content. Valid values
are:
• Access all stores: The ACS server can access all stores that
are connected to the Content Server.
• Access local stores only: The ACS server can read content
from local file stores, but is unable to use Surrogate Get to
request content files it does not find in the local file stores.
• Active
Note: The Dormancy Status column is only visible for 7.0 and
later versions of repositories.
Field Description
ACS Server Configuration
Name The name that is assigned to the ACS server during the
Content Server installation. The name cannot be modified.
Associated Content Server The name of the Content Server the ACS server is associated
with.
Description A description of the ACS server.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 161
Distributed Content Configuration
Field Description
ACS Server Version The major and minor version of the ACS server.
Valid values:
• 2.1 - Specifies that the ACS server is part of a Documentum
version 6.5 SPx repository.
• Access local stores only: The ACS server can read content
from local file stores in the repository.
162 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Distributed Content Configuration
Field Description
Source Specifies where to use projections and stores for the ACS
server. Valid values are:
• Settings entered here: You must enter the ACS server uses
connection brokers, network locations, and near stores
manually.
Click Add to add a target host, or select a host from the list and
click Delete to remove the host.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 163
Distributed Content Configuration
Field Description
Local Stores
Local Store A local store.
Click Add to add a store, or select a store from the list and click
Delete to remove the store.
Field Description
Source Specifies where to use projections for the ACS server.
Valid values are:
164 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Distributed Content Configuration
Field Description
BOCS servers
Branch Office Caching Services (BOCS) servers cache content locally. Caching content allow quick
access to content. The amount of cached content and the storage time can be configured. Content can
also be cached programmatically prior to user requests or through a pre-caching job. A BOCS server
can serve content from multiple repositories.
BOCS servers communicate only with ACS servers and DMS servers, but not directly with
Content Servers. Every BOCS server for Documentum 6 or later repositories is associated with
a dm_bocs_config object. The installation program for the BOCS server does not create the object
at installation time. The BOCS server must be added manually, using the properties on the BOCS
Servers Configuration page. All BOCS configuration objects for Documentum 6 or later repositories
reside in the global registry in the /System/BocsConfig folder.
To create, modify, or view BOCS configuration objects, you must have superuser privileges and
be connected to the global repository that is associated with the DFC installation. If you are not
connected to the global repository and click the BOCS Server node, the system displays an error
message and provides a link to the login page of the global registry repository.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 165
Distributed Content Configuration
166 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Distributed Content Configuration
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 167
Distributed Content Configuration
DMS where DMS matches the electronic signature to the public key in the BOCS configuration object.
If the DMS server authenticates the BOCS electronic signature, the BOCS server can then pull or push
its messages from or to the DMS server respectively.
168 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Distributed Content Configuration
Documentum Administrator User Guide contains the instructions on configuring distributed transfer
settings.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 169
Distributed Content Configuration
170 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Chapter 9
User Management
Link Description
Users Accesses the Users page. From the Users page you can
• Search for existing user accounts.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 171
User Management
Link Description
Module Roles Accesses the Modules Roles page. From the Modules Roles page you
can
• Search for existing module roles.
Users
A repository user is a person or application with a user account that has been configured for a
repository. User accounts are created, managed, and deleted on the User node. In a Documentum
repository, user accounts are represented by user objects. Whenever a new user account is added
to a repository, Content Server creates a user object. A user object specifies how a user can access a
repository and what information the user can access.
Locating users
Use the search filters on the Users page to locate users.
Field Description
User Name Filters the search results by user name.
Default Group Filters the search results the name of the default group.
User Login Name Filters the search results by the login name of the user.
User Login Domain Filters the search results by login domain.
Documentum Administrator User Guide contains the instructions on locating users.
172 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
User Management
If the user is a superuser, only another superuser can reset the state.
Name The user name for the new user. The user name cannot be modified,
but can be reassigned to another user.
User Login Name The login name used for authenticating a user in repositories.
If the user is an operating system user, the user login name must
match the operating system name of the user. If the user is an LDAP
user, the user login name must match the LDAP authentication name
of the user.
User Login Domain Identifies the domain in which the user is authenticated. This is
typically a Windows domain or the name of the LDAP server used
for authentication.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 173
User Management
174 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
User Management
If no folders or cabinets are specified, the user has access to all folders
and cabinets in the repository, depending on the permissions on those
cabinets and folders, and depending on folder security.
Default Folder The default storage place for any object the user creates. This option
only displays when you are creating a user. Valid values are:
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 175
User Management
• Create Type
• Create Cabinet
• Create Group
• System administrator
• Config and Purge Audit: The user can configure auditing and
purge existing audit trails.
• Config and View Audit: The user can configure auditing and view
existing audit trails.
• View and Purge Audit: The user can view existing audit trails and
purge them.
• Config, View, and Purge Audit: The user can configure auditing
and view and purge existing audit trails.
176 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
User Management
• Contributor
• Coordinator
• System Administrator
Alias Set The default alias set for the user. Click Select to specify an alias set.
Disable Workflow Indicates whether a user can receive workflow tasks.
Disable Authentication If selected, user can exceed the number of failed logins specified
Failure Checking in the Maximum Authentication Attempts field of the repository
configuration object.
Documentum Administrator User Guide contains the instructions on creating or modifying user
accounts.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 177
User Management
Importing users
You can create repository users from information contained in an input file. Before you begin
importing users, determine the following:
• Authentication type
If the server authenticates users against the operating system, each user must have an account on
the server host. If the server uses an LDAP directory server for user authentication, the users do
not need to have operating system accounts.
• Groups and ACLs
If you specify the attributes user_group (the user’s default group) and acl_name (the user’s default
permission set), any groups and permission sets must already exist before you import the users.
• Passwords
If you are creating a user who is authenticated using a password stored in the repository, the
password cannot be assigned in the input file. You must assign the password manually by
modifying the user account after the user has been imported..
178 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
User Management
If the user is a superuser, only another superuser can reset the state.
Source The name of an input file. Click Browse to browse to the location of
the LDIF file containing information for creating the new users.
User Source Specifies how to authenticate a given repository user’s user name and
password. Valid values are:
• None: Windows only. This means the user is authenticated in a
Windows domain.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 179
User Management
• Create Type
• Create Cabinet
• Create Group
• System Administrator
180 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
User Management
• Contributor
• Coordinator
• System Administrator
Alias Set The default alias set for the user. Click Select to specify an alias set.
If user exists, then Select this option if a user already exists in the repository and you
overwrite user want to replace existing information with the imported information.
information
If user exists, then ignore Select this option if a user already exists in the repository and you
information want to retain the existing information.
Documentum Administrator User Guide contains the instructions on importing new users.
You can create repository users from information contained in an input file.
Each imported user starts with the header object_type:dm_user. Follow the header with a list of
attribute_name:attribute_value pairs. The attributes user_name and user_os_name are required. In
addition, the following default values are assigned when the LDIF file is imported:
Argument Default
user_login_name username
privileges 0 (None)
folder /username
group docu
client_capability 1
Each attribute_name:attribute_value pair must be on a new line. For example:
object_type:dm_user
user_name:Pat Smith
user_group:accounting
acl_domain:smith
acl_name:Global User Default ACL
object_type:dm_user
user_name:John Brown
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 181
User Management
If the ldif file contains umlauts, accent marks, or other extended characters, store the file as a UTF-8
file, or users whose names contain the extended characters are not imported.
The attributes you can set through the LDIF file are:
user_name
user_os_name
user_os_domain
user_login_name
user_login_domain
user_password
user_address
user_db_name
user_group_name
user_privileges (set to integer value)
default_folder
user_db_name
description
acl_domain
acl_name
user_source (set to integer value)
home_docbase
user_state (set to integer value)
client_capability (set to integer value)
globally_managed (set to T or F)
alias_set_id (set to an object ID)
workflow_disabled (set to T or F)
user_xprivileges (set to integer value)
failed_auth_attempt (set to integer value)
You can specify as many of the attributes as you wish, but the attribute_names must match the
actual attributes of the type.
The attributes may be included in any order after the first line (object_type:dm_user). The Boolean
attributes are specified using T (for true) or F (for false). Use of true, false, 1, or 0 is deprecated.
Any ACLs that you identify by acl_domain and acl_name must exist before you run the file to import
the users. Additionally, the ACLs must represent system ACLs. They cannot represent private ACLs.
Any groups that you identify by user_group_name must exist before you run the file to import
the users.
Content Server creates the default folder for each user if it does not already exist.
Deleting users
You can remove users from the repository, but Documentum strongly recommends making users
inactive or reassigning them rather than deleting them from the repository.
When you delete a user, the server does not remove the users name from objects in the repository
such as groups and ACLs. Consequently, when you delete a user, you must also remove or change all
references to that user in objects in the repository.
You can delete a user and then create a user with the same name. If you add a new user with the same
name as a deleted user and have not removed references to the deleted user, the new user inherits the
group membership and object permissions belonging to the deleted user.
You cannot delete the repository owner, installation owner, or yourself.
182 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
User Management
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 183
User Management
Reassign reports
This page displays reassign logs, including group and user reassign logs.
Groups
A group represents multiple repository users, and can contain groups, users, or roles. By default,
a group is owned by the user who creates the group. Groups can be public or private. By default,
groups created by a user with Create Group privileges are private, while groups created by a user
with system administrator or superuser privileges are public.
A group can be a dynamic group. A dynamic group is a group, of any group class, whose list of
members is considered a list of potential members.
To create or modify groups, you must have privileges as shown in the following table:
184 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
User Management
If you create a role as a domain, it is listed on the groups list, not the roles list.
To jump to a particular group, type the first few letters of its object name in the Starts with box and
click Search. To view a list of all groups beginning with a particular letter, click that letter. To view
a different number of groups than the number currently displayed, select a different number in
the Show Items list.
To view the members of a group, click the group name.
Dynamic groups
A dynamic group is a group, of any group class, whose list of members is considered a list of
potential members. A dynamic group is created and populated with members like any other group.
Whether or not a group is dynamic is part of the groups definition. It is recorded in the is_dynamic
attribute and can be changed after the group is created. (In this application, is_dynamic is the field
labeled Dynamic Group.
When a session is started, whether Content Server treats a user in a dynamic group as an actual
member is dependent on two factors:
• The default membership setting in the group object
• Whether the application from which the user is accessing the repository requests that the user be
added or removed from the group
You can use dynamic groups to model role-based security. For example, suppose you define a
dynamic group called EngrMgrs. Its default membership behavior is to assume that users are
not members of the group. The group is granted the privileges to change ownership and change
permissions. When a user in the group accesses the repository from a secure application, the
application can issue the session call to add the user to the group. If the user accesses the repository
from outside your firewall or from an unapproved application, no session call is issued and Content
Server does not treat the user as a member of the group. The user cannot exercise the change
ownership or change permissions permits through the group.
Privileged groups
Installing Content Server installs a set of privileged groups. Members of privileged are allowed to
perform privileged operations even though the members do not have the privileges as individuals.
The privileged groups are divided into two sets.
The first set of privileged groups are used in applications or for administration needs. With two
exceptions, these privileged groups have no default members when they are created. You must
populate the groups. The following table describes these groups.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 185
User Management
Group Description
dm_browse_all Members of this group can browse any cabinets and folders in
the repository, folders except the rooms that were created using
Documentum Collaborative Services (DCS).
186 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
User Management
The second set of privileged groups are privileged roles that are used internally by DFC. You cannot
add or remove members from these groups. The groups are:
• dm_assume_user
• dm_datefield_override
• dm_escalated_delete
• dm_escalated_full_control
• dm_escalated_owner_control
• dm_escalated_full_control
• dm_escalated_relate
• dm_escalated_version
• dm_escalated_write
• dm_internal_attrib_override
• dm_user_identity_override
Locating groups
You can locate groups in a repository.
Documentum Administrator User Guide contains the instructions on locating groups.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 187
User Management
188 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
User Management
Deleting groups
You can delete a group if you are the group’s owner, a superuser, a member of the group that owns
the group to be deleted, or identified in the group’s group_admin attribute, either as an individual
or as a member of a group specified in the attribute. However, to preserve repository consistency,
do not remove groups from the repository. Instead, remove all members of the group and leave
the group in the repository, or reassign all objects owned by the group to another group or user
and then delete the group.
Documentum Administrator User Guide contains the instructions on deleting a group.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 189
User Management
Roles
A role is a type of group that contains a set of users or other groups that are assigned a particular role
within a client application domain.
If you create a role as a domain, it is listed in the groups list, not the roles list.
190 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
User Management
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 191
User Management
Reassigning roles
If you plan to delete a role, consider reassigning the users and other objects belonging to the role.
You can reassign the users and other objects.
Documentum Administrator User Guide contains the instructions on reassigning a role.
Deleting roles
Roles are a type of group. It is therefore recommended that you do not delete a role. Instead, remove
all members of the role and leave the role in the repository. You can also reassign the members
of the role to another role.
Documentum Administrator User Guide contains the instructions on deleting a role.
Modules roles
Module roles are required by applications that run privileged escalations and they behave the same
as roles with respect to memberships. Module roles are dm_group objects with group_class set to
module role. Any user, group, or dynamic group can be a member of a module role.
By default, module roles are dynamic. A dynamic module role is a role whose list of members
is considered a list of potential members. User membership is controlled on a session-by-session
basis by the application at runtime. The members of a dynamic module role comprise of the set
of users who are allowed to use the module role; but a session started by one of those users will
behave as though it is not part of the module role until it is specifically requested by the application.
Administrators should not modify module roles unless they are configuring a client that requires
privileged escalations.
192 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
User Management
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 193
User Management
Sessions
A repository session is opened when an end user or application establishes a connection to a server.
Each repository session has a unique ID.
During any single API session, an external application can have multiple repository sessions, each
with a different repository or server or both.
A repository session is terminated when the end user explicitly disconnects from the repository or
the application terminates.
You can use Documentum Administrator to monitor repository sessions only. It cannot monitor any
other sessions (for example, eConnector for JDBC sessions).
The Sessions page lists sessions in the current repository. For each session, the name, Documentum
Session ID, Database Session ID, Client Host, Start Time, time Last Used, and State are displayed.
To view all sessions or user sessions, make a selection from the drop-down list. To view a different
number of sessions, select a new number from the Show Items drop-down list. To view the next page
of sessions, click the > button. To view the previous page of sessions, click the < button. To jump to
the first page of sessions, click the << button. To jump to the last page, click >>.
Field Description
Root Process Start Date The last start date for the server to which the
session is connected
Root Process ID The process ID of the server on its host
User Name The session user
Client Host The host from which the session is connected
Session ID The ID of the current repository session
Database Session ID The ID of the current database session
Session Process ID The operating system ID of the current session
process
194 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
User Management
Field Description
Start Time The time the session was opened
Last Used The time of the last activity for the session
Session Status The status of the current session
Client Library Version The DMCL version in use
User Authentication The authentication type
Shutdown Flag An internal flag
Client Locale The preferred locale for repository sessions
started during an API session
Documentum Administrator User Guide contains the instructions on viewing user session information.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 195
User Management
196 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Chapter 10
Security and Authentication
Object permissions
Access to folders and documents in a repository is subject to an organization’s security restrictions.
All content in the repository is associated with object permissions, which determines the access users
have to each object in the repository such as a file, folder, or cabinet and governs their ability to
perform specific actions. There are two categories of object permissions:
• Basic: Required for each object in the repository
• Extended: Optional
Basic permissions grant the ability to access and manipulate an object’s content. The seven basic
permission levels are hierarchical and each higher access level includes the capabilities of the
preceding access levels. For example, a user with Relate permission also has Read and Browse.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 197
Security and Authentication
198 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
If you designate the repository owner as the owner of a permission set, that permission set is a
System (or Public) permission set. Only a superuser, system administrator, or the repository owner
can edit the permission set. If a different user is the owner of the permission set, it is a Regular
(or Private) permission set. It can be edited by the owner, a superuser, system administrator, or
the repository owner.
A user with Write or Delete permission can change which permission set is assigned to an object.
Security protects the information in each repository using object permissions to control access to
cabinets, folders, documents, and other objects. Object permissions determine what actions users can
perform on objects. Permissions can be added, removed, modified, or replaced, and set differently for
different users.
If you use Documentum’s Web Publisher and if the user does not assign the default permission
set, the Content Server assigns a default permission set according to the setting in the default_acl
property in the server config object.
Folder security
Folder security is an additional level of security that supplements the existing repository security.
Implementing this security option further restricts allowable operations in a repository. Folder
security prevents unauthorized users from adding documents to, removing documents from, or
changing contents of secured folders. When folder security is enabled, a user must have Write
permission or Change Folder Links permission for the:
• Target folder to create, import, copy, or link an object into the folder.
• Source folder to move or delete an object from a folder.
Folder security only pertains to changing the contents in a folder. For example, a user with Browse
permission on a folder can still check out and check in objects within the folder.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 199
Security and Authentication
If you use Documentum’s Web Publisher, and if folder security is used in a repository, any content files
in the WIP state must have the same permission as the folder. To use the same folder permission, the
administrator must ensure the lifecycle in WIP state does not apply any set ACL action. For example:
WIP - folder acl
Staging - WP "Default Staging ACL"
Approved - WP "Default Approved ACL"
200 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 201
Security and Authentication
202 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
superuser. A superuser’s base permission is determined by evaluating the AccessPermit entries for
the user, for dm_owner, and for any groups to which the user belongs. The superuser is granted the
least restrictive permission among those entries. If that permission is less than Read, it is ignored and
the superuser has Read permission by default.
A superuser’s extended permissions are all extended permits other than delete_object plus any
granted to dm_owner, the superuser by name, or to any groups to which the superuser belongs. This
means that the superuser’s extended permissions may include delete_object if that permit is explicitly
granted to dm_owner, the superuser by name, or to groups to which the superuser belongs.
Permission sets
Permission sets are displayed on the Permission Sets page and are accessed by selecting
Administration > Security. The Permission Sets page displays all permission sets that are configured
for the repository.
Column Description
Name The object name of the permission set.
Owner The user or group that owns the permission set.
Class Specifies set how the permission set is used:
• Regular: The permission set can only be used
by the owner.
Authenticating in domains
For domain authentication on Windows platforms, Content Server authenticates user names and
passwords within a domain. The user domain is stored in the user_os_domain property of the
user object. A default domain is defined for all users in the repository in the user_auth_target key
of the server.ini file.
Whether the server uses the user-specific domain or the default domain for authentication depends on
whether the server is running in domain-required mode. By default, the Content Server installation
procedure installs a repository in no-domain required mode. If a Windows configuration has only
users from one domain accessing the repository, the no-domain required mode is sufficient. If the
users accessing the repository are from varied domains, using domain-required mode provides better
security for the repository.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 203
Security and Authentication
Domain-required mode
In domain-required mode, users must enter a domain name or the name of an LDAP server when
they connect to the repository. The domain value is defined when the user is created and is stored in
the user_login_domain property in the user object.
In domain-required mode, the combination of the login name and domain or LDAP server name
must be unique in the repository. It is possible to have multiple users with the same user login name
if each user is in a different domain.
Trusted logins do not require a domain name even if the repository is running in domain-required
mode.
Principal authentication
Some applications require authenticating users with external authentication mechanisms that are not
accessible to Content Server. For these cases, Content Server supports principal authentication and
principal mode for privileged DFC clients (trusted clients). Principal mode is a DFC mechanism that
allows trusted clients to log in to Content Server without having to go through another password
authentication process.
Privileged DFC provides a client rights domain that is implemented using a client rights domain
object (dm_client_rights_domain). The client rights domain contains the Content Servers that share
the same set of client rights objects (dm_client_rights). The client rights domain is configured in a
global repository that acts as a governing repository. Multiple repositories can be grouped together
under the global repository to share privileged DFC information. The global repository propagates
all changes in the client rights objects to the repositories that are members of the domain.
Privileged DFC is configured using the Documentum Administrator interface.
204 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
Creating a clients right domain requires superuser privileges and the repository on which you are
creating a client rights domain must be a global registry.
Documentum Administrator User Guide contains the instructions on creating a client rights domain.
Deleting a clients rights domain requires superuser privileges. Deleting a client rights domain also
deletes associated member repository entries.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 205
Security and Authentication
Deleting a client rights domain automatically starts dm_PropagateClientRights job, which removes
the associated member repository entries. The job execution can take approximately 2 to 4 minutes
and until the job has completed successfully, any member repository of the deleted client rights
domain cannot be associated with another client rights domain.
Documentum Administrator User Guide contains the instructions on deleting a client rights domain.
Viewing a member repository or modifying repository login information in a client rights domain
requires superuser privileges.
Documentum Administrator User Guide contains the instructions on viewing repository memberships.
Removing a member repository from a client rights domain requires superuser privileges. Removing
a member repository also removes the client rights entries from the member repository.
Removing a member repository automatically starts dm_PropagateClientRights job, which removes
the client rights entries from the member repository. The job execution can take approximately 2 to 4
minutes and until the job has completed successfully, the member repository cannot be associated
with another client rights domain.
Documentum Administrator User Guide contains the instructions on removing repository memberships.
206 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
Privileged clients
Privileged DFC is the term used to refer DFC instances that are recognized by Content Servers
as privileged to invoke escalated privileges or permissions for a particular operation. In some
circumstances, an application needs to perform an operation that requires higher permissions or a
privilege than is accorded to the user running the application. In such circumstances, a privileged
DFC can request to use a privileged role to perform the operation. The operation is encapsulated in a
privileged module invoked by the DFC instance. Supporting privileged DFC is a set of privileged
groups, privileged roles, and the ability to define TBOs and simple modules as privileged modules.
The privileged groups are groups whose members are granted a particular permission or privileged
automatically.
Each installed DFC has an identity, with a unique identifier extracted from the PKI credentials. The
first time an installed DFC is initialized, it creates its PKI credentials and publishes its identity to the
global registry known to the DFC. In response, a client registration object and a public key certificate
object are created in the global registry. The client registration object records the identity of the DFC
instance. The public key certificate object records the certificate used to verify that identity.
In Documentum Administrator, the privileged DFC clients are managed on the Privileged Clients
page. To access the Privileged Clients page, select Administration > Client Rights Management
> Privileged Clients.
The Privileged Clients page provides the following information:
Column Description
Client Name The name of the DFC client.
Client ID A unique identifier for the DFC client.
Host Name The name of the host on which the DFC client is installed.
Approved Indicates if the given DFC client is approved to perform
privilege escalations.
Manage Clients The Manage Client button displays the Manage Client page,
which lists all DFC clients that are registered in the global
registry.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 207
Security and Authentication
Note:
• To add a privileged DFC client, you must be logged in as a superuser and you must be the owner
of the dm_acl_superusers ACL or the install owner.
• If the DFC client does not have the global registry information configured, that is valid
dfc.globalregistry.repository, dfc.globalregistry.username and dfc.globalregistry.password, then it
will not be displayed in the list of DFC clients.
Column Description
Client Name The name of the DFC client.
Client ID A unique identifier for the DFC client.
Host Name The name of the host on which the DFC client is installed.
Creation Date The creation date of the DFC client.
Documentum Administrator User Guide contains the instructions on adding privileged DFC clients.
Select this option to enable the client to create sessions for users
without credentials.
Trusted Server Privilege Specifies whether the DFC client is part of a trusted Content Server
domain. If this option is enabled, the client has direct access to the
repositories on the server.
Is globally managed Select to propagate the privileged DFC information by domain.
Optional property.
Application Name The application name for the DFC instance. Optional property.
208 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
Documentum Administrator User Guide contains the instructions on enabling or disabling trusted
login and trusted server privileges.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 209
Security and Authentication
the global repository and a non-global repository, the user of the role would see the nodes as per
the administrator access specified in the global repository. Even if the user is able to see the nodes,
the user can perform operations only with sufficient privileges.
Note: The following Administration nodes are currently not available for the administrator access
set functionality:
• Work Queue Management
• Distributed Content Configuration
• Privileged Clients
The User Management chapter provides information about setting up roles.
210 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
• User Management
• Audit Management
• Content Objects
• Storage Management
• Content Delivery
• Index Management
• Content Intelligence
• Resource Management
Assigned Role Indicates the role assigned to the administrator access set. If the role does
not exist in the connected repository, the role is displayed in a red font.
The list of available roles is retrieved from the repository to which the
administrator is connected. To ensure that administrator access sets
function correctly across an application, the roles associated with the
administrator access sets must exist in all repositories. If an assigned
role is missing in a connecting repository, the administrator access
set does not apply for the missing role. Documentum Administrator
displays a message notifying the user when an assigned role is missing.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 211
Security and Authentication
Plug-in scope
You can use a plug-in to authenticate users connecting to a particular repository or to any repository
in the installation. All plug-in modules are installed at the root of the base directory or one of the
subdirectories. If they are installed at the root of the base directory, they are loaded for all repositories
in the installation. If the plug-ins are installed in repository-specific subdirectories, they are only
loaded for those specific repositories.
A default %DOCUMENTUM%\dba\auth ($DOCUMENTUM/dba/auth) base directory is created
automatically during Content Server installation. For every repository, there is a subdirectory under
the base directory specific to that repository. There also is a location object, called auth_plugin, that
points to the base directory and sets the auth_plugin_location property in the server configuration
object to the name of the location object.
When a Content Server starts, it loads the plug-ins found in its repository-specific directory first
and then those located in the base directory. If two or more plug-ins loaded by the server have
the same identifier, only the first one loaded is recognized. The remaining plug-ins with the same
name are not loaded.
Identifying a plug-in
212 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
When Content Server receives a connection request, it checks whether a plug-in identifier is included
in the arguments. If not, the server examines the User Source property of the user account to
determine which authentication mechanism to use.
To use a plug-in to authenticate users for connection requests issued by an application, the application
must prepend the plug-in identifier to the password argument before sending the connection
request to the DMCL.
When you want to use a plug-in to authenticate a particular user regularly, set the User Source
property of that user account to the plug-in identifier.
Plug-in identifiers are defined as the return value of the dm_init method in the interface of the plug-in
module. A plug-in identifier must conform to the following rules:
• It must be no longer than 16 characters.
• It cannot contain spaces or non-alphanumeric characters.
• It cannot use the prefix dm_. (This prefix is reserved for Documentum.)
For example, the following are valid identifiers:
• myauthmodule
• authmodule1
• auth4modul
To include a plug-in identifier in a connection request, the application must prepend the following
syntax to the password argument:
DM_PLUGIN=plugin_identifier/
The RSA plug-in for Documentum allows Content Server to authenticate users based on RSA
ClearTrust single sign-on tokens instead of passwords.
OpenText Documentum Webtop and WebPublisher, and other Documentum WDK-based
applications, support the RSA plug-in, with some configuration required.
The Content Server installation procedure stores the plug-in in the %DM_HOME%\install\external_
apps\authplugins\RSA ($DM_HOME/install/external_apps/authplugins/RSA) directory. There is a
README.txt file that describes how to install the plug-in. Table 61, page 213 lists the files for the
plug-in on the supported platforms.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 213
Security and Authentication
On AIX, IBM JDK 1.7 support is only from AxM Server 6.2. Use the runtime jar
axm-runtime-api-6.2.jar to connect to AxM Server 6.2.
Platform File
Windows dm_netegrity_auth.dll
The CAS plug-in for Documentum allows Content Server to authenticate users based on LDAP or
inline password against CAS server identity provider. The plug-in supports CAS server connection
over HTTP and HTTPS.
This section describes the steps in the authentication flow using CAS plug-in.
214 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
1. REST negotiates Proxy Ticket from CAS and generates a CAS proxy ticket for Target Service name.
2. REST makes a connection to the repository using the credentials.
• Username: Name of the user for whom the proxy ticket is generated.
• Password: Proxy ticket as password. The format of the password is DM_PLUGIN=dm_cas/
M_PLUGIN=dm_cas/<proxy ticket>.
3. Content Server’s new CAS plug-in calls CAS to validate Proxy Ticket. The CAS plug-in sends a
HTTP request to CAS URL, http://<cas server url>/proxyValidate with two request parameters:
• service: This should match the Target Service parameter sent for generating the proxy ticket.
• ticket: This contains the proxy ticket.
4. The CAS server sends a response if the proxy ticket validation is successful.
<cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'>
<cas:authenticationSuccess>
<cas:user>username</cas:user>
<cas:proxies>
<cas:proxy>https://10.37.10.28:8443/pgtCallbackcas:proxy>
https://10.37.10.28:8443/pgtCallback</cas:proxy>
</cas:proxies>
</cas:authenticationSuccess>
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 215
Security and Authentication
</cas:serviceResponse>
5. If the user name matches with CAS user name for which proxy ticket is generated, Content server
returns REST, a session in the context of requested user.
Note: If the client requires the login ticket to be valid across all the repositories, then a global login
ticket must be used. The requirements for generating global login ticket are:
• All trusted repositories because global login ticket is valid only if receiving repository and issuing
repository are trusted.
• Identical login ticket in the receiving repository and the global ticket generating repository.
This section describes the configurations required on the Content Server and LDAP.
Name Description
server_host Host name that resolves to the CAS server.
server_port HTTP port number for connection with CAS server.
url_path URL path used to send HTTP request to CAS server to
validated proxy ticket.
service_param Service name for which the proxy ticket is generated.
Note: The service name must be a registered service in CAS.
is_https Specifies if HTTP connection should be done on HTTPS.
LDAP configuration
CAS plug-in also supports authentication for LDAP users and requires customization.
The CAS server is configured to synchronize with the LDAP server. The new dmCSLdapUserDN
attribute is used for authentication response that exposes the user LDAP distinguished name (DN).
216 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
3. Once the Content Server is registered into CAS for proxy, set the customized attribute
dmCSLdapUserDN in the list of allowedAttributes.
For example, here is the sample of in-memory service registry setting:
<bean id="serviceRegistryDao"
class="org.jasig.cas.services.InMemoryServiceRegistryDaoImpl">
<property name="registeredServices">
<list>
<!--the following registered service is for Content Server, as an example -->
<property name="id" value="1" />
<property name="name" value="Content Server proxy service" />
<property name="description" value="Allows CAS Proxy for
Content Server repositories" />
<property name="serviceId" value="ContentServer" />
<property name="evaluationOrder" value="0" />
<property name="allowedAttributes">
<list><value>dmCSLdapUserDN</value><list>
</property>
</bean>
<!-- other settings, for HTTP/HTTPS, IMAP and others -->
<bean ..../>
</list>
</property>
</bean>
You can write and install custom authentication plug-ins. On a Windows platform, the plug-in must
be a DLL. On UNIX and Linux platforms, the plug-in must be a shared library.
Authentication plug-ins that require root privileges to authenticate users are not supported. If you
want to write a custom authentication mechanism that requires root privileges, use a custom external
password checking program.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 217
Security and Authentication
Caution: This section outlines the basic procedure for creating and installing a custom
authentication plug-in. OpenText Documentum provides standard technical support for
plug-ins that are created and provided with the Content Server software, as part of the product
release. For assistance in creating, implementing, or debugging custom rules, contact OpenText
Global Technical Services for service and support options to meet your customization needs.
The inPropBag and outPropBag parameters are abstract objects, called property bags, used to pass
input and output parameters. The methods have the following functionality:
• dm_init
The dm_init method is called by Content Server when it starts up. The method must return the
plug-in identifier for the module. The plug-in identifier should be unique among the modules
loaded by a server. If it is not unique, Content Server uses the first one loaded and logs a warning
in the server log file.
• dm_authenticate
The dm_authenticate_user method performs the actual user authentication.
• dm_change_password
The dm_change_password method changes the password of a user.
• dm_plugin_version
The dm_plugin_version method identifies the version of the interface. Version 1.0 is the only
supported version.
• dm_deinit
The dm_deinit method is called by Content Server when the server shuts down. It frees up
resources allocated by the module.
the dmauthplug.h header file contains detailed comments about each of the interface methods. The
header file resides in the %DM_HOME%\install\external_apps\authplugins\include\dmauthplug.h
($DM_HOME/install/external_apps/authplugins/include/dmauthplug.h) directory. All authentication
plug-ins must include this header file.
218 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
Additionally, all plug-ins must link to the dmauthplug.lib file in the %DM_HOME%\install\external_
apps\authplugins\include ($DM_HOME/install/external_apps/authplugins/include) directory.
Internationalization
An authentication plug-in can use a code page that differs from the Content Server code page. To
enable that, the code page must be passed in the output property bag of the dm_init method. If the
code page is passed, Content Server translates all parameters in the input property bag from UTF-8 to
the specified code page before calling the dm_authenticate_user or dm_change_password methods.
The server also translates back any error messages returned by the plug-in. A list of supported code
pages is included in the header file, dmauthplug.h.
Plug-ins are responsible for writing their own trace files. The trace level is determined by the
DM_TRACE_LEVEL parameter in the input property bag. The initial value of the parameter is taken
from the server start up flag -otrace_authentication. However, if a user issues a SET_OPTIONS
administration method that changes the trace authentication level, the new level will be reflected
in the plug-in tracing.
The suggested location of the trace file is defined by the DM_LOGDIR_PATH parameter in the
dm_init method.
File Description
dbpasswd.txt This file contains one line with the database password used by
Content Server to connect to the RDBMS. (This is password for the
repository owner.)
docbase_name.cnt The file contains one line with the password used by an object
replication job and the distributed operations to connect to the
repository as a source or target repository.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 219
Security and Authentication
File Description
dm_operator.cnt The file contains one line with the password used by an object
replication job and the distributed operations to connect to
repositories.
Using encryptPassword
Use encryptPassword to encrypt any password that you want to pass in encrypted form to the one of
the following methods:
• IDfSession.assume
• Authenticate in IDfSessionManager, IDfSession, or IDfClient
• A method to obtain a new or shared session.
• IDfPersistentObject.signoff
• IDfSession.changePpassword
Passwords encrypted with encryptPassword cannot be decrypted explicitly by an application or user.
There is no method provided to perform decryption of passwords encrypted with encryptPassword.
DFC decrypts those passwords internally when it encounters the password in the arguments of
one of the above methods.
Passwords encrypted with encryptPassword are prefixed with DM_ENCR_PASS.
The Javadocs contains more information on using this method.
If you do not want to use an encrypted password for a particular operation, use a text editor to edit
the appropriate file listed in Table 64, page 219. Remove the encrypted password and replace it
with the clear text password.
220 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
If you find it necessary to change one of the encrypted passwords described in Table 64, page 219, use
the dm_encrypt_password utility to do so. This utility takes an unencrypted password, encrypts
it, and writes it to a specified file. If the file is one of the password files maintained by Content
Server, the utility replaces the current encrypted password in that file with the new password. You
must be the repository owner to use this utility.
To encrypt or change a password in a password file maintained by repository, use the following
syntax:
dm_encrypt_password [-location <AEK_location>]-keyname <keyname>
[-passphrase <passphrase>] [-lockbox <lockbox_name>]
[-lockboxpassphrase <lockboxpassphrase>] -docbase <repository_name>
-remote <remote_repository_name> | -operator | -rdbms -encrypt <password>
To create or change an encrypted password in a file that you have created, use the following syntax:
dm_encrypt_password [-location <AEK_location>] -keyname <keyname>
[-passphrase <passphrase>] [-lockbox <lockbox_name>]
[-lockboxpassphrase <lockboxpassphrase>] -file <file_name>
-encrypt <password>
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 221
Security and Authentication
For example, executing the utility with the following command line replaces the database password
used by the Content Server in the engineering repository to connect with the RDBMS:
dm_encrypt_password keyname CSaek -docbase engineering -passphrase jdoe -rdbms
-encrypt 2003password
The AEK location is not identified, so the utility reads the location from the DM_CRYPTO_FILE
environment variable. The passphrase jdoe is used to decrypt the AEK. The utility encrypts the
password 2003password and replaces the current RDBMS password in dbpasswd.txt with the newly
encrypted password.
This example identifies a user-defined file as the target of the operation.
dm_encrypt_password keyname CSaek -passphrase jdoe
-file C:\engineering\specification.enc -encrypt devpass
The AEK location is not identified, so the utility reads the location from the DM_CRYPTO_FILE
environment variable. The password jdoe is used to decrypt the AEK. The utility encrypts the
password devpass and writes the encrypted value to the file C:\engineering\specification.enc.
222 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
The default signature template is a form field based PDF template (Figure 4, page 224). You must
have Adobe Acrobat installed on your system to use this template. Content Server version 6.6 and
later supports publishing only static information on the signature template. Static information, such
as a company logo, can be converted to a form field based template using Adobe LiveCycle Designer.
Note: We recommend that you backup any existing custom templates before upgrading to a new
template.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 223
Security and Authentication
There a variety of options for customizing the default signature template for electronic signatures:
• Adding or removing properties from the template page
• Changing the property delimiters on the page
• Changing the look of the template by adding, removing, or rearranging elements on the page or
changing the font and point size of the properties
• Defining separate templates for different document types
• Configuring the number of signatures allowed on a version of a document and whether the
signature page is added to the front or end of the content.
A signature in non-PDF format requires a custom signature creation method. A custom method
can use a custom signature page template, but it is not required. The signature can be in any form
that the method implements.
By default, each signature page can have six signatures. Additional signatures are configured using
the esign.signatures.per.page property in the esign.properties file. The esign.properties file resides in
the %DOCUMENTUM%\jboss_directory\server\DctmServer_MethodServer\deploy\ServerApps.
ear\lib\configs.jar directory.
224 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
Property Description
esign.server.language=en Indicates the locale of the Content Server.
esign.server.country=US Indicates the country code.
esign.date.format = MM/dd/yyyy HH:mm:ss Indicates the date format on the signature
page. If the date format is not provided in the
esign.properties file, the date format of the
Content Server is used.
esign.signatures.per.page Indicates the number of signatures per signature
page.
If you do not want to use the default functionality, you must write a signature creation method. Using
a signature page template is optional.
This section outlines the basic procedure for creating and installing a user-defined signature creation
method. OpenText Documentum provides standard technical support for the default signature
creation method and signature page template installed with the Content Server software. For
assistance in creating, implementing, or debugging a user-defined signature creation method or
signature page template, contact OpenText Global Technical Services for service and support options
to meet your customization needs.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 225
Security and Authentication
Parameter Description
docbase Name of the repository.
user Name of the user who is signing.
doc_id Object ID of the document.
file_path The name and location of the content file.
signature_properties A set of property and value pairs that contain
data about the current and previous signatures.
The information can be used to fill in a signature
page. The set includes:
• sig.requester_0...n
• sig.no_0...n
• sig.user_id_0...n
• sig_user_name_0...n
• sig.reason_0...n
• sig.date_0...n
• sig.utc_date_0...n
If you decide to create a new signature template page, you can define the format, content, and
appearance of the page. You can store the template as primary content of an object or as a rendition.
For example, you can create an XML source file for your template and generate an HTML rendition
that is used by the custom signature creation method. If you store the template as a rendition, set the
template page modifier to dm_sig_template. Setting the page modifier to dm_sig_template ensures
that the Rendition Manager administration tool does not remove the template rendition.
226 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
Content Server supports publishing dynamic information on custom signature templates at the page
level. The dynamic information is passed through the app_properties parameter while executing
the addESignature method.
Custom field names in custom signature templates must be added with a Ecustf_ prefix, using the
following syntax:
'ECustF_Attribute_name1 = ''attr1_value'
You can trace the addESignature method and the default signature creation method by setting the
trace level for the DM_SYSOBJECT facility to 5 (or higher).
The tracing information for the addESignature and verifyESignature methods is recorded in the
session log file. The tracing information for the signature creation method is recorded in the server
log file.
If you are using a custom signature creation method, trace messages generated by the method written
to standard out are recorded in the server log file if tracing is enabled.
Note: When tracing is enabled, the addESignature method passes the trace parameter set to T (TRUE)
to the signature creation method.
Set the DM_DEBUG_ESIGN_METHOD environment variable to 1 to log additional information
about electronic signatures generated by addESignature to the repository log file. You must restart
Content Server after setting this variable.
To avoid performance issues while adding signatures to the document for files greater than 30 MB, it
is recommended to increase the JVM memory according to availability. For, example, set the value as
-Xms1024m -Xmx1024m in the JMS startup file.
Digital signatures, like electronic signoffs, are a way to enforce accountability. Digital signatures are
obtained using third-party client software and embedded in the content. The signed content is then
stored as primary content or a rendition of the document. For example, you can implement digital
signing using based on Microsoft Office XP, in which case the signature is typically embedded in the
content file and stored in the repository as primary content for the document.
The implementation and management of electronic signatures is almost completely within the context
of the client application. The only system administration task is registering the dm_adddigsignature
event for signature by Content Server. This is an optional task. When an application issues the
addDigitalSignature method to record a digital signoff in an audit trail entry, that entry can itself
be signed by the Content Server. To configure signing by the server, an explicit registration must
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 227
Security and Authentication
be issued for the dm_adddigsignature event. The Audit properties, page 266 section contains
the information on how Content Server signatures on audit entries are implemented and how
to configure their use.
If there is a change in the time zone in Content Server host, run the following command to recalculate
the audit signature: apply,c,NULL,REGENERATE_AUDIT_SIGNATURE,FROM_DATE,S,<from_
date>,TO_DATE,S,<to_date>,DATE_FORMAT,S,<format>,TRACE,B,<T/F>
Note: The FROM_DATE, TO_DATE, and FORMAT commands are mandatory arguments. TRACE
is an optional argument with the default value as false. If enabled, trace messages are written to
the repository log. The supported date formats are mentioned in Documentum Content Server DQL
Reference manual.
For example:
apply,c,NULL,REGENERATE_AUDIT_SIGNATURE,FROM_DATE,S,'03/20/2015',
TO_DATE,S,'04/03/2015',FORMAT,S,'mm/dd/yyyy',TRACE,B,T
apply,c,NULL,REGENERATE_AUDIT_SIGNATURE,FROM_DATE,S,'01/04/2014',
TO_DATE,S,'02/10/2014',FORMAT,S,'mm/dd/yyyy'
228 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
Use the following procedure to create and implement a customized simple signoff.
Users can register the dm_signoff event so that when the signoff method is executed, the server sends
mail notifications to users. You do not need to register a separate audit event, because the server
always generates an audit trail for signoff executions.
To return a collection of document objects signed by a specific user within a certain time frame, use
a DQL statement like the following:
SELECT "audited_obj_id" FROM "dm_audittrail" WHERE
"event_name" = 'dm_signoff' AND
"user_name" = 'tom' AND
substr ("audited_obj_id", 1, 2) = '09'AND
"time_stamp" >= DATE('01/01/1998', 'dd/mm/yy') AND
"time_stamp" <= DATE(TODAY)
To find everyone who signed off a specific object whose ID is xxx, use the following DQL statement:
SELECT "user_name" FROM "dm_audittrail" WHERE
"audited_obj_id" = 'xxx' AND
"event_name" = 'dm_signoff'
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 229
Security and Authentication
In addition to the AEK, several other encryption keys are used by Content Server. Prior to release
7.0, these keys were managed and stored locally. Beginning with release 7.0, a repository can be
configured to manage the additional keys locally, or to manage them remotely. Local or remote key
management can only be configured as remote when the repository is created or upgraded, and
cannot be changed after creation or upgrade. All repositories created prior to release 7.0 use local key
management and can be upgraded to use remote key management.
A repository that uses local key management protects the key by encrypting it. The encrypted key is
stored in the database. When the key is needed, the repository retrieves the encrypted key, decrypts
it, and then uses the key.
A repository that uses remote key management does not store the key in the database. The key is
stored in a remote key server. The server provides an ID for the key, and this ID is encrypted and
stored in the database. When the key is needed, the repository retrieves the encrypted ID and decrypts
it. The repository uses the ID to retrieve the key from the remote key server, and then uses the key.
So local key management stores the encrypted keys in the database, but remote key management
stores the encrypted IDs in the database.
The AEK
Starting with the 7.2 release, the creation of AEK is performed during the creation of the repository.
Prior to 7.2, there was only one AEK in each Content Server software installation. It will be created
and installed during the Content Server software installation procedure or when an existing
repository was upgraded. The AEK is used to encrypt:
• The repository keys
• OpenText Documentum passwords, such as those used by Content Server to connect to the
RDBMS, an LDAP directory server, or other repositories
The AEK is itself encrypted using a default passphrase provided by OpenText Documentum. You can
change the passphrase to a custom passphrase using a utility provided by Documentum. Using a
custom passphrase is recommended. Changing a passphrase, page 237, has instructions for changing
the passphrase.
The AEK is installed in the following location:
On Windows:
%DOCUMENTUM%\dba\secure\aek.key
On UNIX:
$DOCUMENTUM/dba/secure/aek.key
The file is a read only file. The name of the file depends on the keyname parameter. If a lockbox is
used, the key is stored inside the lockbox.
230 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
Content Server and all server processes and jobs that require access to the AEK use the following
algorithm to find it:
1. If a location is explicitly passed, look for the AEK in that location.
2. If the AEK is not found in the specified location or a location is not passed, use the location
defined in the DM_CRYPTO_FILE environment variable.
3. If the DM_CRYPTO_FILE environment variable is not available and lockbox is specified, the
lockbox is assumed to hold the key.
4. If lockbox is not specified, assume that the location is
%DOCUMENTUM%\dba\secure\<keyname> ($DOCUMENTUM/dba/secure/<keyname>). If
keyname is not specified, aek.key is assumed to be the name of the key.
Starting with the 7.2 release, the creation of AEK can be performed during the creation of the
repository. During repository creation or upgrade, option is provided to create or upgrade key
or to use existing key.
You can choose to maintain your existing key. If you need to use the AEK key before creating the
repository, create a key using the dm_crypto_create tool. Starting with the 7.2 release, changing of
the AEK is also supported.
If there are multiple Documentum products installed on one host, the products can use different
AEKs or the same AEK.
On the same host, all keys have to use the same passphrase. If you want that passphrase to be a
custom passphrase, perform the following procedure after you install the Content Server software.
If your repository is a distributed repository, all servers at all sites must be using the same AEK.
The installer handles the copying of AEK key.
In multiple-repository distributed sites, you should use the same AEK key.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 231
Security and Authentication
It is strongly recommended that you back up the AEK file or lockbox separately from the repository
and content files. Backing up the AEK and the data it encrypts in different locations helps prevent a
"dictionary-based" attack on the AEK.
A repository encryption key is created for a repository when the repository is created. The key or its
ID is encrypted using the AEK and stored in the i_crypto_key property of the docbase config object.
This property cannot be changed after the repository is created.
Content Server uses the repository encryption key to create the signature on audit trail entries. The
server also uses the repository encryption key to encrypt file store keys.
A repository created to use local key management stores the encrypted key in the docbase config
object. A repository created to use remote key management stores the encrypted ID of the key
in the database.
Controlling key caching can improve performance. In testing environments, the performance of
memory cache and file cache are similar. The performance of remote key management enabled
Content Server approaches the performance achieved with local key management when caching
is enabled.
However, enabling key caching can introduce minor security concerns as keys are stored, rather than
immediately deleted. This concern is addressed by encrypting the stored keys as described in this
topic, but administrators should be aware of the potential risk that caching keys, even encrypted ones,
can introduce into the system. Following the appropriate procedure for encrypting the cached keys is
critical to maintain security when using key caching.
The following attributes in the rkm_config.ini file control key caching for remote key
management client memory:
• cacheTimeToLive
Time, in seconds, that a key is valid in the cache. Keys stored for longer than the value of
cacheTimeToLive are expired and must be refreshed from DPM. The default is 86400 seconds
(24 hours).
• maxCacheEntries
Maximum number of entries stored in the persistent and non-persistent cache. If the number of
cache entries is equal to maxCacheEntries, the oldest key entry is deleted before adding the
new key information to the cache.
• busyRetries
Maximum number of times reading or writing to a busy cache. This parameter is required in a
multi-threaded environment.
232 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
• busyTimeout
Time, in milliseconds, to wait when reading or writing to a busy cache. This parameter is required
in a multi-threaded environment.
• nonPersistentCache
Whether to store keys locally in a non-persistent cache.
• persistentCacheFile
Name of the persistent cache file to be used to store keys locally.
The rkm_config.ini file is located by default in the $DOCUMENTUM/dba/config/docbase
name directory and can be modified to change remote key management caching behavior. An
rkmcachepasswd.txt file, located by default in the same directory as the rkm_config.ini
file, contains the AEK encrypted password used for the key cache. The password in this file is the
same as the one used for the client certificate.
Although the key cache password can be set in the rkm_config.ini file, this password would be
exposed and create a security risk. Thus, the cache password is set using an API call to look for
$DOCUMENTUM/dba/config/docbase name/rkmcachepasswd.txt, using information in that
encrypted file to set the cache password. Note that this only sets the password for the cache and does
not enable the key caching. Key caching for remote key management must be enabled by modifying
the rkm_config.ini file.
Key caching is disabled by default in the key caching rkm_config.ini file based on the following
configuration values:
• nonPersistentCache=false
• persistentCacheFile=
The following modification enables key caching in client memory:
• nonPersistentCache=true
• persistentCacheFile=
The following modification enables key caching to the specified file:
• nonPersistentCache=false
• persistentCacheFile=path and name of local cache file
The value of maxCacheEntries depends on the number of filestore objects with encryption enabled.
Each encrypted filestore has a unique separate key. Aside from the key for encrypted filestores, there
are three additional keys in use that will be cached as well.
Encryption utilities
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 233
Security and Authentication
Use this utility if you are protecting the AEK with a custom passphrase. Use it to:
— Install an obfuscated AEK or passphrase in the host machine’s shared memory after you
define a custom passphrase.
— Reinstall an obfuscated AEK or passphrase in the host machine’s shared memory if you stop
and restart a server host machine.
— (Windows only) Reinstall an obfuscated AEK or passphrase in the host machine’s shared
memory if you log off the host machine after you stop Content Server.
— Clean up the shared memory used to store the obfuscated AEK and passphrase.
It is not necessary to use this utility if you are protecting the AEK with the default, Documentum
passphrase. The Using dm_crypto_boot, page 234 section contains more details and instructions
on using the utility.
• dm_crypto_create
This utility is run automatically, during the Content Server installation process, to create and
install the AEK. You can use this utility to determine if an AEK exists at a specified location and
can be decrypted with a specified passphrase. The Using dm_crypto_create, page 235 section
contains the instructions.
• dm_crypto_change_passphrase
The dm_crypto_change_passphrase utility changes the passphrase used to encrypt an AEK. The
Changing a passphrase, page 237 section contains the instructions.
Note: When you run the utilities from command prompt or other Windows utility, ensure that the
application is launched as administrator using Run as Administrator. If it is not done, Windows
operating system restricts the access to the shared memory and other system resources.
Using dm_crypto_boot
The dm_crypto_boot utility obfuscates the AEK or the passphrase used to decrypt the AEK and
puts the obfuscated AEK or passphrase in shared memory. The utility is only used when you are
protecting the AEK with a custom passphrase. It is not necessary if you are using the Documentum
default passphrase. If you are protecting the AEK with a custom passphrase, you must run the utility
in the following situations:
• When you stop and restart the host machine
After you stop a host machine, run this utility after restarting the host and before restarting the
product or products that use the AEK.
• After you install the Content Server software and before you install the remaining products
You can also use this utility to clean up the shared memory region used to store the AEK.
To run this utility, you must be a member of the dmadmin group and you must have access to the
AEK file.
The syntax for the utility is:
dm_crypto_boot [-location <location>][-lockbox <lockbox>]
[-lockboxpassphrase <lockboxpassphrase>]
[-keyname <keyname>] [-location <location> | -all]
[-passphrase <passphrase>] [-remove] [-noprompt]
234 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
The -passphrase argument identifies the passphrase used to encrypt the AEK. If you do not include
the argument or if you include the argument keyword but not its value, the utility prompts for the
passphrase. (If the user is prompted for a passphrase, the passphrase is not displayed on screen
when it is typed in.)
The dm_crypto_boot utility is enhanced to add support for RSA Lockbox. The available arguments
are:
• –lockbox <lockbox>: This is the fully qualified name of the lockbox file. The file can be created at
any location. By default, the file is available at %DOCUMENTUM%\dba\secure.
• –keyname <keyname>: This is the name the of the key. By default, the name is CSaek. This
argument is used when the same lockbox contain multiple AEK keys. For example, in a host with
consolidated repositories.
• –lockboxpassphrase <passphrase>: This passphrase is used to administer the lockbox. This
passphrase is needed only for the first operation in a host. For example, creation or moving of
AEK key into the lockbox. This is not needed for any subsequent operation even after a host
restart. Content Server does not store this passphrase at any location.
You must include either the -location or -all argument. Use -location if only one product is accessing
the AEK. Using -location installs an obfuscated AEK in shared memory. The -location argument
identifies the location of the AEK key. Ensure to provide the complete path of the file along with
the AEK file name when using the –location argument. If you do not include the argument, the
utility looks for the location defined in DM_CRYPTO_FILE. If that environment variable is not
defined, the utility assumes the location %DOCUMENTUM%\dba\secure\aek.key (Windows) or
$DOCUMENTUM/dba/secure/aek.key (UNIX). Once the repository is configured with the lockbox,
you cannot upgrade the AEK key from lockbox to physical key. dm_crypto_boot utility does not
validate the lockbox and keystore passphrases given to it.
Use the -all argument if there are multiple products on the host machine that use the same passphrase
for their AEKs and also to use AES_256_CBC algorithm with a custom passphrase. If you include
-all, the utility obfuscates the passphrase and writes it into shared memory instead of the AEK. Each
product can then obtain the passphrase and use it to decrypt the AEK for their product.
To clean up the shared memory used to store the obfuscated AEK or passphrase, execute the utility
with the -remove argument. You must include the -passphrase argument if you use -remove.
The -help argument returns help information for the utility. If you include -help, you cannot include
any other arguments.
Using dm_crypto_create
You can run the dm_crypto_create utility with the -check argument to determine whether an AEK
exists at a specified location and whether a particular passphrase can be used to decrypt it. The
syntax is:
dm_crypto_create [-location <location>][-lockbox <lockbox>]
[-lockboxpassphrase <lockboxpassphrase>]
[-keyname <keyname>] [-location <location>]
[-passphrase <passphrase>] [-noprompt]
[-move] [-check] [-algorithm] [-help]
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 235
Security and Authentication
location, use the -location argument using the dm_crypto_create utility. The -location argument
identifies the location of the AEK key. Ensure to provide the complete path of the file along with the
AEK file name when using the –location argument. If you do not include the -location argument,
the utility looks for the AEK key in the location defined in DM_CRYPTO_FILE. If that environment
variable is not defined, the utility assumes the location %DOCUMENTUM%\dba\secure\aek.key
(Windows) or $DOCUMENTUM/dba/secure/aek.key (UNIX).
The -passphrase argument identifies the passphrase whose use you wish to check. If you do not
include the -passphrase argument, the utility assumes the default passphrase but prompts you
for confirmation. Consequently, if you are checking the default passphrase and wish to avoid the
confirmation request, include the -noprompt argument. (The -passphrase and -noprompt arguments
are mutually exclusive.)
The dm_crypto_create utility is enhanced to add support for RSA LockBox. The following optional
arguments are introduced:
• –lockbox <lockbox>: This is the fully qualified name of the lockbox file. The file can be created at
any location, but the file must be placed in dba\secure to make it accessible for Content Server.
• –lockboxpassphrase <passphrase> name: This passphrase is used to administer the lockbox, for
example, recovery. Content Server does not store passphrase at any location.
• –keyname <keyname>: This is the name of the key. By default, the name is CSaek. This argument
is used when the same lockbox contain multiple AEK keys. For example, in a host with
consolidated repositories.
• –move: This moves physically stored AEK key into the lockbox. To move a physically stored AEK
key into the lockbox, provide the –location and –lockbox options and the –move argument. If
–move argument is not specified and the key exists, the command fails.
For example:
• To create a lockbox, use the following command:
dm_crypto_create –lockbox
c:\documentum\dba\secure\lockbox.lb -lockboxpassphrase passphrase1 –keyname CSaek
You can run the dm_crypto_manage_lockbox utility to reset the host fingerprint and to change the
passphrase of the lockbox. For example:
• To reset the host, use the following command:
dm_crypto_manage_lockbox.exe -lockbox
a.lb -resetfingerprint -lockboxpassphrase password@123P
236 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
Starting with the 7.2 release, the utility is enhanced to provide the option for specifying the algorithm
used for generating encryption keys. The following optional argument is introduced:
• –algorithm <algorithm>: This option allows to specify the algorithm that has to be used for
generating the AEK key. By default, AES_128_CBC is used. Valid values are:
— AES_128_CBC
— AES_192_CBC
— AES_256_CBC
If the AEK file exists and decryption succeeds, the utility returns 0. If the AEK file exists but
decryption fails, the utility returns 1. If the AEK file is already existing at the specified location, the
utility returns 2. If the AEK file does not exist at the specified location, the utility returns 3.
The -help argument returns help information for the utility. If you include -help, you cannot include
any other arguments.
Changing a passphrase
Use dm_crypto_change_passphrase to change the passphrase used to encrypt the AEK in the
installation. Installing the Content Server software installs the AEK encrypted using a default
passphrase. Use this utility, also, if business rules or a security breach require you to change the
passphrase. All Documentum products that use the affected AEK must be stopped before running
the utility.
The syntax is:
dm_crypto_change_passphrase [-keyname <keyname>][-location <location>]
[-lockbox <lockbox>] [-lockboxpassphrase <lockboxpassphrase>]
-passphrase <old_passphrase> -newpassphrase <new_passphrase>
[-noprompt][-move] [-check] [-algorithm] [-help]
The -location argument identifies the location of the AEK whose passphrase you wish
to change. If you do not include the argument, the utility looks for location defined in
DM_CRYPTO_FILE. If that environment variable is not defined, the utility assumes the location
%DOCUMENTUM%\dba\secure\aek.key (Windows) or $DOCUMENTUM/dba/secure/aek.key
(UNIX).
The -passphrase argument identifies the current passphrase associated with the AEK. The
-newpassphrase argument defines the new passphrase you wish to use to encrypt the AEK. Both
phrases interact in a similar manner with the -noprompt argument. The behavior is described
in Table 67, page 237.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 237
Security and Authentication
You must include a value for at least one of the passphrases. You cannot be prompted for both
values or allow both values to default.
To illustrate the use of this utility, here are some examples. The first example changes the passphrase
for the Content Server host AEK from the Documentum default to "custom_pass1". The -passphrase
argument is not included and the-noprompt is included, so the utility assumes that the current
passphrase is the default passphrase.
dm_crypto_change_passphrase -location %DOCUMENTUM%\dba\secure\aek.key
-newpassphrase custom_pass1 -noprompt
This next example changes the passphrase from one custom passphrase to another:
dm_crypto_change_passphrase -location %DOCUMENTUM%\dba\secure\aek.key
-passphrase genuine -newpassphrase glorious
This final example changes the passphrase from a custom passphrase to the default:
dm_crypto_change_passphrase -location %DOCUMENTUM%\dba\secure\aek.key
-passphrase custom_pass1 -noprompt
Because the new passphrase is set to the Documentum default passphrase, it isn’t necessary to include
the -newpassphrase argument. The utility assumes that the new passphrase is the default if the
argument is not present and the -noprompt argument is present.
The -help argument returns help information for the utility. If you include -help, you cannot include
any other arguments.
If you are using global login tickets or global application access control tokens, both the repository
generating the ticket or token and the repository accepting the ticket or token must be using the same
login ticket key. When you install a repository, the installation configures a login ticket key for the
238 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
repository. However, each key is unique. Consequently, to use global login tickets or tokens, you
must export a login ticket key from one repository among those that will be exchanging global login
tickets or tokens and import that key into the other repositories exchanging global tickets or tokens.
Note: You cannot use global login tickets with a repository that uses remote key management.
To export a login ticket key, use the EXPORT_TICKET_KEY administration method, as described
in EXPORT_TICKET_KEY, page 298. To import the key, use IMPORT_TICKET_KEY, as described
in IMPORT_TICKET_KEY, page 299. These methods are also available as DFC methods
(exportTicketKey and importTicketKey) in the IDfSession interface.
You must restart Content Server after importing a login ticket key to make the new login ticket
key take effect.
Resetting a login ticket key replaces the current login ticket key with a newly generated key. You
need to reset a login ticket key if the current key is compromised. If you reset the login ticket key, the
repository’s server does not accept any login tickets generated using the old key.
To reset a login ticket key, execute the RESET_TICKET_KEY method. You can also use the DFC
method, resetTicketKey, in the IDfSession interface.
You must restart Content Server after resetting a login ticket key.
Overview
Documentum supports Kerberos secure Single-Sign-On (SSO) using Microsoft Active Server Domain
Services for Kerberos Key Distribution Center (KDC) services in the following ways:
• In a single domain.
• In one-way and two-way trusts between multiple domains.
• In one-way and two-way trusts across forests.
Note: In addition, the DFS client and server must be in the same domain, whereas Content Server
can be in a different domain.
Kerberos single sign-on (SSO) is a network authentication protocol designed to provide strong
authentication for client/server applications by using secret-key cryptography. The Kerberos protocol
uses strong cryptography so that a client can prove its identity to a server (and vice versa) across
an insecure network connection. After a client and the server have used Kerberos to prove their
identities, they can also encrypt all of their communications to ensure privacy and data integrity.
Kerberos provides secure and reliable authentication to multiple applications that use Kerberos for
authentication. In most distributed network systems, a password is used to prove a user’s identity,
and this password is transmitted over the network from the client machine to the machine that the
user wants to access. So, a mechanism that prevents anyone from intercepting or eavesdropping on
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 239
Security and Authentication
the transmitted plain passwords is vital for security. In addition, another pain point while using
passwords for authentication is that the password must be supplied every time a connection is
requested to the remote machine. Kerberos helps users avoid this issue and solves the central
problem of using passwords for authentication without sending them over the network.
Users are automatically signed in and authenticated based on their Windows credentials. For
example, if Kerberos SSO is configured on a Documentum system, clients requesting services from
the Documentum repository send a service ticket that the Documentum system uses to validate the
clients rather than prompting the user to provide login credentials.
The following content contains general information on Kerberos:
http://web.mit.edu/Kerberos/
http://en.wikipedia.org/wiki/Kerberos_(protocol)
http://technet.microsoft.com/en-us/library/bb742516.aspx
For more information about Microsoft forests, domains, and trusts, see http://technet.microsoft.com/
en-us/library/cc757352%28v=ws.10%29.aspx.
Kerberos operates by encrypting data with a symmetric key. A symmetric key is a type of
authentication where both the client and server use a single encryption/decryption key to send or
receive data. When working with the encryption key, the details are sent to a KDC, instead of being
sent directly between each computer.
Content Server includes a Kerberos authentication plug-in that enables Kerberos support for KDC
services. The Kerberos authentication plug-in is automatically installed with Content Server.
Note: Kerberos SSO authentication is not supported on ACS and BOCS servers.
Figure 5, page 241 describes how Kerberos authentication is used to verify the credentials of
Documentum clients.
240 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
On a Documentum system, the Kerberos authentication process involves the following steps:
1. A Documentum user logs in to a client computer by specifying Windows login credentials, such
as a username and password, and accesses a Documentum application from the client. The local
computer/client sends the login credentials and the service name of the application to the Key
Distribution Center (KDC) for identification.
2. The Kerberos authentication service/server (AS) component at the KDC receives the request from
the client, verifies whether the client is the computer it claims to be, and generates a Ticket
Granting Ticket (TGT).
3. When the user accesses a Documentum client, the client sends the TGT to the KDC to obtain a
Service Ticket (ST) for the service, using the service SPN.
Note: It is mandatory that the SPN of all services are registered in the KDC. The KDC can provide
the Service Ticket only for a registered service.
4. The KDC Ticket Granting Service (TGS) authenticates the TGT and generates an ST.
5. The client running the Documentum application uses the relevant DFC-based API and provides
the username and ST as password.
6. The Documentum Foundation Classes (DFC) pass the login information to the Content Server
service.
7. The Content Server service validates the ST and authenticates the user.
8. If authentication is enabled, the Content Server service sends the acknowledged ticket to DFC.
9. DFC sends the acknowledged ticket back to the client to validate the Content Server service. A
session is established and no further authentication is required.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 241
Security and Authentication
Kerberos SSO can only authenticate users who are registered as Kerberos users in the Active
Directory and in a repository.
To create Kerberos users for a repository, perform one of the following tasks:
• Create the user account manually in the Active Directory and repository.
• Synchronize the users from the Active Directory using LDAP synchronization, then modify the
LDAP configuration object.
Only the installation owner, system administrator, or superuser can create users in a repository. If an
LDAP server authenticates a user, only a superuser can modify the user’s LDAP-mapped attributes.
242 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
There are two options for creating Kerberos users in the repository.
• Create the user manually, both in Active Directory and in the repository. For each user in the
repository, set the User Source property to dm_krb or leave it blank. Setting the User Source
property to dm_krb is optional.
• Synchronize the users from Active Directory using LDAP synchronization, then modify the
User Login Domain in the LDAP configuration object, as described in Configuring LDAP
synchronization for Kerberos users, page 155.
[realms]
REALM = {
kdc = kdc_server_ip
admin_server = admin_server_ip
}
[domain_realm]
domain = REALM
[logging]
default = c:\kdc.log
kdc = c:\kdc.log
[appdefaults]
autologin = true
forward = true
forwardable = true
encrypt = true
To enable authentication of the repository on the Kerberos Key Distribution Center (KDC), register
the repository’s service principal name (SPN) on the Active Server KDC using the Microsoft ktpass
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 243
Security and Authentication
utility. A Kerberos SPN uniquely identifies a service that uses Kerberos authentication. In this
case, the service is your Content Server repository. Executing the ktpass utility also generates a
*.keytab file. The *.keytab file contains name/value pairs consisting of a repository’s SPN and a
long-term key derived from a password. Both the Content Server and the KDC must be able to access
the *.keytab file. The syntax of the filename is:
<repo_name>.<xxxx>.keytab
Note: The length of the *.keytab filename is limited by the operating system.
where:
• <repo_name> is the name of the repository for which the repository’s SPN is registered.
• <xxxx> is a string that makes the file name unique.
The filename must be unique because Content Server can be registered in multiple, trusted domains.
Note: Although the *.keytab file is usually used on non-Windows machines, Content Server
leverages the *.keytab file to improve network performance by eliminating Kerberos authentication
communication between Windows machines and the KDC.
You must configure a unique SPN for each repository. OpenText recommends the following SPN
syntax for registering a repository on the KDC service.
<service-class>/<repository-
name>@<service-domain-name>
The SPN name format is not mandated to have CS/<repository-name>@<service-domain-name>
format but OpenText recommends it. For example: The SPN name can be documentum/
hostname@<service-domain-name>. Only mandatory step for the new format is that repository
names have to be mapped with the corresponding SPN names as specified in dfc.properties.
Documentum Foundation Classes Development Guide describes how to specify the repository-name
SPN name mappings.
For example:
CS/REPO1@MYDOMAIN.COM
where:
• CS is the service class.
• REPO1 is the repository name.
• MYDOMAIN.COM is the domain in which the Content Server’s SPN is to be registered.
244 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
In the following procedures a user is registered on the KDC service to act as the service principal
for the repository service. This user maps to the repository’s SPN itself yet is distinct from users
who need to be authenticated to use the service.
There are two recommended procedures for registering repository SPNs. The simplest approach is to
create a single repository’s SPN mapped to an single Active Directory user, which enables you to set a
single password for the repository’s SPN. An alternate approach is to register multiple repository
SPNs mapped to a the same, single Active Directory user.
b. To restrict Kerberos delegation privileges for the new user, execute the setspn command
using the following syntax:
setspn -A CS/<reponame>@domain.com domain.com\<content_server_username>
On the new user’s User Properties dialog box’s Delegation tab, select the Do not trust this
user for delegation checkbox.
c. Copy the *.keytab file to $DOCUMENTUM/dba/auth/Kerberos on the Content Server.
Note: This folder was created during Content Server installation.
4. To map multiple repository SPNs to the same user name using many-to-one mapping, perform
the following steps:
a. Set a repository’s SPN and create the *.keytab file using ktpass utility with the user
specified in Step 2.
Remember the salt string and the key version number (vno) because you need to use
them in Step c.
For example:
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 245
Security and Authentication
b. Set another repository’s SPN using the setspn utility to the same user
(<content_server_username> in the following syntax) created in Step 2. For example:
setspn -A CS/<reponame>@domain.com domain.com\<content_server_username>
On the new user’s User Properties dialog box’s Delegation tab, check the Trust this user for
delegation to any service (Kerberos only) checkbox.
c. Execute the ktpass utility for the second repository’s SPN without setting the user specified
in Step 2.
Use the salt and key version number (kvno) that were created in Step a. For example:
ktpass /pass testpass
-out c:\Nag\REPO66.2008_2.keytab
-princ CS/REPO66@R2.FOREST2.COM
/kvno 7 -crypto RC4-HMAC-NT +DumpSalt
-ptype KRB5_NT_SRV_HST /mapOp set
-in c:\Nag\REPO66.2008.keytab
1. Specify the UNIX and Linux machines in the Active Directory machine domain in the
/etc/krb5.conf file as follows:
[libdefaults]
default_realm = <REALM>
forwardable = true
ticket_lifetime = 24h
clockskew = 72000
default_tkt_enctypes =
default_tgs_enctypes =
[realms]
<REALM> = {
kdc = <kdc_server_ip>
admin_server = <admin_server_ip>
}
[domain_realm]
<domain> = <REALM>
[logging]
default = c:\kdc.log
kdc = c:\kdc.log
[appdefaults]
246 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
autologin = true
forward = true
forwardable = true
encrypt = true
Reinitializing the Content Server initializes the Kerberos plug-in, which reloads the SPNs from the
repository’s *.keytab file. This command enables you to update the Kerberos system without
restarting Content Server. Reinitialization is required if a new SPN has been registered and copied to
the repository. However, this step is not required if you have changed the password on an existing
SPN.
In Documentum Administrator, on the Server Configuration Properties dialog box’s Info tab, select
Re-Initialize Server.
Overview
OpenText Documentum supports Security Assertion Markup Language (SAML) using Microsoft
Active Directory Federation Services (AD FS) 2.0. You must install and configure AD FS 2.0 to enable
SAML authentication.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 247
Security and Authentication
The SAML 2.0 is an XML-based framework that allows identity and security information to be
shared across security domains. The SAML specification, while primarily is targeted at providing
cross-domain web browser single sign-on, is also designed to be modular and extensible to facilitate
use in other SSO contexts.
248 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Security and Authentication
Configuring Name ID
Each user must have their own SAML assertion for authentication. To achieve this, configure
Name ID in AD FS.
Troubleshooting
Tracing can be done at two levels:
• Content Server:
apply,c,NULL,SET_OPTIONS,OPTION,S,trace_http_post,VALUE,B,T
apply,c,NULL,SET_OPTIONS,OPTION,S,rpctrace,VALUE,B,T
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 249
Security and Authentication
apply,c,NULL,SET_OPTIONS,OPTION,S,trace_authentication,VALUE,B,T
• Servlet: Check the log file location mentioned in log4j.properties for information on the
validation results.
250 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Chapter 11
Logging and Tracing
Introduction
OpenText Documentum supports tracing and logging facilities for both Content Server and DFC
operations. The logging facilities record information generated automatically by Content Server
or DFC, including error, warning, and informational messages. Logging errors, warnings, and
informational messages occurs automatically.
The tracing facility records information that is explicitly requested by user or an application. Enabling
or disabling tracing requires system administrator or superuser privileges.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 251
Logging and Tracing
252 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Logging and Tracing
Facility Description
ALL Traces all available trace facilities.
DM_CONTENT Traces content operations. The information is recorded in
the session log file.
DM_DUMP Traces dump operations. The information is recorded in the
session log file.
DM_LOAD Traces load operations. The information is recorded in the
session log file.
DM_QUERY Traces query operations. The information is recorded in the
session log file.
SQL_TRACE Traces generated SQL statements. The information is
recorded in the session log file.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 253
Logging and Tracing
The method can be executed from Documentum Administrator or using the DQL EXECUTE
statement or an IDfSession.apply method.
Turning tracing on and off using SET_OPTIONS affects only new sessions. Current sessions are
not affected.
The following example describes a log file section for query tracing. The example assumes that
the following query is issued:
SELECT "user_os_name" FROM "dm_user" WHERE "user_name"='zhan'
254 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Logging and Tracing
DFC logging
DFC logging and the location of the log file is controlled by the log4j.properties file. The default
location is ${user.dir}/documentum/logs/documentum.log.
The standard Java documentation contains the information on the configurable logging options.
To record debug information generated by specific packages or classes, we recommend to use the DFC
trace file, rather than the log4j log file, as described in Directing categories to the trace file, page 262.
DFC tracing
DFC supports a set of tracing configuration options for DFC operations, such as tracing for individual
users, individual threads, and methods. The trace file format can be configured as well, such as
timestamps within the file and how to record method entrances and exits.
All DFC tracing is configured in the dfc.properties file. The entries are dynamic. Adding, removing,
or changing a tracing key entry is effective immediately without having to stop and restart DFC or
the application.
Where file_prefix is a string that is prepended to the beginning of the name of each trace file
generated by DFC and timestamp records when the file was created. An identifier is included in the
file name only if you are generating log files for individual users or threads. The identifier is the
user name, if the logs are generated for individual users or the thread name, if logs are generated
for individual threads.
Enabling tracing creates a logger and a logging appender that record the entries in the trace log file.
The logging appender determines the name, location, and format of the trace file. The Logging
appender options, page 256 section contains more information.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 255
Logging and Tracing
256 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Logging and Tracing
If no unit of measure is
specified, the integer value is
interpreted as bytes.
Value Description
standard All log entries are recorded in one log file. This is the default.
thread DFC creates a log file for each thread in the following format:
file_prefix.threadname.timestamp.log
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 257
Logging and Tracing
Value Description
nanoseconds The timestamp value is expressed in nanoseconds.
If the timing style is set to date, you can also set dfc.tracing.
date_format key and dfc.tracing.date_format_width key to
define an alternate date format, as described in Defining the
date format, page 259t.
258 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Logging and Tracing
There are three keys that determine the date format in a trace file:
• dfc.tracing.timing_style
If the key value is date, the date format and column width can be specified in the
dfc.tracing.date_format and dfc.tracing.date_column_width keys.
• dfc.tracing.date_format
Specifies a date format that is different from that default format. The specified format specify must
conform to the syntax supported by the Java class java.text.SimpleDateFormat.
• dfc.tracing.date_column_width
This key specifies the column width as a positive integer value. The default column width is 14. If
the format specified in dfc.tracing.date_format is wider than 14 characters, modify the column
width to the required number of characters.
Where value is one or more string expressions that identify what to trace. The syntax of the
expression is:
([qualified_classname_segment][*]|*)[.[method_name_segment][*]()]
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 259
Logging and Tracing
The expression is a regular expression, using the syntax for a regular expression as defined
in the Java class java.util.regex.Pattern. DFC traces activities of the users whose login names
(dm_user.user_login_name) match the specified expression. The log entries contain the user name.
By default, dfc.tracing.user_name_filter key empty, which means that all users are traced.
The tracing output does not necessarily include all DFC calls made by a particular user. For some
calls, it is not possible to identify the user. For example, most methods on the DfClient interface are
unrelated to a specific session or session manager. Consequently, when tracing is constrained by
user, these method calls are not traced.
When tracing by user, DFC cannot identify the user until one of the following occurs:
• A method call on an object that derives from IDfTypedObject (if the session associated with that
object is not an API session).
• A method call that takes an IDfSession or IDfSessionManager.
• Amethod call that returns an IDfSession or IDfSessionManager.
• An IDfSessionManager method call that sets or gets an IDfLoginInfo object.
260 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Logging and Tracing
The key is not set by default, which means that all methods in all traced threads are traced by
default. Setting the key is primarily useful for standalone DFC-based applications that may spawn
DFC worker threads.
Note: You can use dfc.tracing.file_creation_mode to further sort the entries for each thread into
separate files. The Defining file creation mode, page 257 section contains more information.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 261
Logging and Tracing
Setting verbosity
The dfc.tracing.verbosity key determines what set of classes are traced. By default, the key is disabled
(false) and traces a standard set of classes. When enabled (true) the key traces and additional set of
low-level classes. Tracing these classes greatly increases the number of entries in the trace file and can
noticeably slow down the system. Turning on verbose mode is only recommended when suggested
by OpenText Global Technical Services.
• dfc.tracing.log.level
This key specifies the level of tracing. The dfc.tracing.log.level key defaults to DEBUG if not
specified.
• dfc.tracing.log.additivity
This key is the additivity setting for the category. The dfc.tracing.log.additivity key defaults to
false if not specified.
The dfc.tracing.log.level and dfc.tracing.log.additivity keys are also repeating keys, and the values
across one index position in the entries for the keys are the settings for category identified at the
corresponding index position in dfc.tracing.log.category.
262 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Logging and Tracing
Component Description
timestamp The timestamp of the entry. The format dependents on the tracing
configuration, as defined in the dfc.tracing.timing_style key.
method_duration The total length of time to execute the method. This value is only
included if the dfc.tracing.mode key value is compact.
threadname Name of the thread associated with the entry.
username Name of the user associated with the entry.
sessionID Identifies the session associated with the entry. This entry is only
included if the dfc.tracing.include_session_id key enabled (true).
session_mgr_id The hash code identity of the session manager associated with the
entry. This entry is only included if the dfc.tracing.include_session_id
key is enabled (true).
RPCs=count Total number of RPC calls at the time the entry was logged. This is
only included if dfc.tracing.include_rpc_count is set to true.
entry_exit_designation Keyword that identifies source of the log entry. The keyword is
only included if the dfc.tracing.mode key value is standard. Valid
values are:
The values in each column in an entry are separated by spaces, not tabs.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 263
Logging and Tracing
264 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Chapter 12
Audit Management
Auditing
Auditing is a security feature for monitoring events that occur in a repository or application.
Auditing an event creates an audit trail, a history in the repository of the occurrence of the event.
Audit information can be used to:
• Analyze patterns of access to objects.
• Monitor when critical documents change or when the status of a critical document changes.
• Monitor the activity of specific users.
• Record all occurrences of a particular event on a given object or given object type
• Record all occurrences of a particular event in the repository, regardless of the object to which it
occurs
• Record all workflow-related events in the repository
• Record all occurrences of a particular workflow event for all workflows started from a given
process definition
• Record all executions of a particular job
• Record all events in the repository
Note: Audit management requires extended user privileges.
Auditing is managed on the Audit Management page, which can be accessed by selecting
Administration > Audit Management.
Audit events
An event is something that happens to an object in the repository or an operation defined as an event
by a user-written application. There are two types of events:
• System events
System events are events that Content Server recognizes and can audit automatically. For
example, checking in a document can be an audited system event.
Content Server provides automatic auditing for any system event. When an audited system event
occurs, Content Server automatically generates the audit trail entry. Documentum provides a
large set of system events that are associated with API methods, lifecycles (business policies),
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 265
Audit Management
workflows, and jobs. For a complete list of auditable system events, see Appendix A, System
Events.
• Application events
Application events are events that are recognized and audited by client applications. For example,
a user opening a particular dialog can be an audited application event. To audit application
events, an application must recognize when the event occurs and create the audit trail entry
programmatically. Application events are not recognized by Content Server.
Audit trails
An audit trail is a recorded history of event occurrences that have been marked for auditing. Each
occurrence is recorded in one audit trail record. The server stores audit trail records as objects
in the repository. Depending on the event, the objects are dm_audittrail, dm_audittrail_acl, or
dm_audittrail_group objects. Auditing an event stores pertinent data in the audit trail object, such as
when the event occurred and what object was involved.
Audit trail entries are generated after auditing is set up and can consume considerable space in the
repository. Therefore audit trail entries should be removed from the repository periodically.
Audit properties
Object properties are audited if the properties are registered for auditing. After the properties are
registered, the property name and new value are recorded in the attribute_list property of the
audit trail entry. Old property values are only included automatically if the audit_old_values
property in the docbase config object is enabled. The property name and old value are recorded in
the attribute_list_old property of the audit trail entry. The audit_old_values property is enabled by
default. If the audit_old_values property is disabled, the audit trail entry does not record changes to
properties unless they are specifically registered for auditing when the event is registered.
Aspect attributes can also be audited. Aspect attribute audits record the aspect attribute changes
attached to an object along with the object type attributes. Auditing is available for aspect attributes
attached to SysObject, user, group, and acl objects, and any of their associated subtypes. Auditing
aspect attributes requires that auditing is also enabled for the object type or subtype.
Note: For repositories created on RDBMS platforms with a page size of less than 8K, the
audit_old_values property is always disabled and cannot be enabled.
266 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Audit Management
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 267
Audit Management
When the registration is removed, Content Server returns to creating the default audit trail entry for
the event and target.
Field Description
Application Code Enter the application code to audit only objects with a particular
application code.
The application code is a property set by the client application that creates
the object. For example, an application sets the application code to the
value Internal. To audit objects of the type you selected with application
code Internal, type Internal in the Application Code field.
You cannot enter a value in the field if you previously selected a dm_user,
dm_acl, or dm_group object type.
Lifecycle Records objects that are attached to a lifecycle. Click Select Lifecycle to
access the Choose a lifecycle page.Select the correct lifecycle and then
click OK.
State Records only those objects attached to the lifecycle and in a particular
state. Select a state from the drop-down list.
Attributes Records the values of particular properties of the object in the audit trail.
Click Select Attributes to access the Choose an attribute page.
Select the properties whose values you want to record, click >, then click
Add. To remove any properties, select them on the right-hand side of
the page and click <.
268 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Audit Management
Field Description
Authentication Select to require authentication for custom (user-defined) events that
required are audited.
Add Click to access the Choose an event page and select the events you want
to register.
Select one or more events to audit and click > to move the events to the
Selected Items column. To remove any events, select them in the Selected
Items column and click <. Click OK when you are finished.
To unregister any events, select them in the Event Name list and click
Remove.
Documentum Administrator User Guide contains the instructions on adding, modifying, or deleting
auditing by object type.
Field Description
Attributes Records the values of particular properties of the object in the audit trail.
Click Select Attributes to access the Choose an attribute page.
Select the properties whose values you want to record, click >, then click
Add. To remove any properties, select them on the right-hand side of
the page and click <.
Select one or more events to audit and click > to move the events to the
Selected Items column. To remove any events, select them in the Selected
Items column and click <. Click OK when you are finished.
To unregister any events, select them in the Event Name list and click
Remove.
Documentum Administrator User Guide contains the instructions on adding, modifying, or deleting
auditing by object instance.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 269
Audit Management
Search audit
The Search Audit feature lets you search and view audit trails. You must have View Audit extended
privileges to search for and view existing audit trails.
Field Description
Search By Indicates whether to use the criteria specified on the search page
or a DQL query to search for the audit trail.
• Select the DQL option and enter a DQL query in the Where
Clause field. Click OK to display the query results.
Events Restricts the search by events. Click Select and select one or more
events and click OK.
Object Name Restricts the search by object names. Select Begins With, Contains,
or Ends With and type in a string.
Versions Restricts the search by version. Type in a version.
Look In Restricts the search to a particular folder. Click Select Folder and
select the folder.
Audit Dates Restricts the search by time. Click Local Time or UTC, then type
or select a beginning date in the From field and an ending date for
the search in the Through field.
Type Restricts the search to a particular type. Click Select Type and select
the type. To include subtypes of the type, click Include Subtype.
Lifecycle Restricts the search to objects attached to a lifecycle. Click Select
Lifecycle and select a lifecycle.
270 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Audit Management
Field Description
Application Code Restricts the search to objects with an application code. Type the
application code. To restrict the search to those audit trails that
are signed, select Has Signature.
Controlling Application Restricts the search to objects with a controlling application. Type
the name of the application.
Documentum Administrator User Guide contains the instructions on searching and viewing audit trails.
Audit policies
An audit policy ensures that only the users or groups that are specified in the purge policy can
delete an audit record. If an unauthorized user or group attempts to delete the audit record, Content
Server throws an error message. If there are multiple policies for same user, the policy with the
highest permissions is in effect.
Audit policies specify which user, group, or role can purge audit trails. You must be an Install Owner
to access and manage audit policies. Other users can only view the list of audit policies.
Audit policies are managed on the Audit Policies page. Select Administration > Audit Management
to display the Audit Management page, then click the Audit Policies link to display the Audit
Policies page. Table 79, page 271 describes the information on the Audit Policies page.
Field Description
Name The name of the audit policy.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 271
Audit Management
Field Description
Accessor Name The user, group, or role to which this audit policy is assigned.
Audit Policy Rules Specifies the policy rules, as follows:
• Click Add to add a rule. The Create/Edit Rule page displays. Select
an attribute and enter a value for the attribute.
• Select an attribute name, then click Edit to modify the rule. The
Create/Edit Rule page displays. Modify the attribute.
Documentum Administrator User Guide contains the instructions on creating, modifying, or deleting
an audit policy.
Field Description
Name Test
Accessor Name user1
The policy described in this example only protects audit records that satisfy the policy. For example,
the policy does not protect audit records that have the is_archived attribute set to F. Any user with
purge audit extended privilege can delete those records.
Registering audits
The Register Audit page specifies the properties that are audited for an object or object instance.
Select the properties as described in Table 82, page 273 to define the audited properties and register
the object or object instance for auditing.
272 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Audit Management
Field Description
Attributes Records the values of particular properties of the object in the audit trail.
Click Select Attributes to access the Choose an attribute page.
Select the properties whose values you want to record, click >, then click
Add. To remove any properties, select them on the right-hand side of
the page and click <.
Select one or more events to audit and click > to move the events to the
Selected Items column. To remove any events, select them in the Selected
Items column and click <. Click OK when you are finished.
To unregister any events, select them in the Event Name list and click
Remove.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 273
Audit Management
Documentum Administrator User Guide contains the instructions on viewing, verifying, or purging
audit trails.
274 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Audit Management
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 275
Audit Management
276 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Audit Management
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 277
Audit Management
278 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Audit Management
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 279
Audit Management
280 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Audit Management
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 281
Audit Management
282 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Audit Management
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 283
Audit Management
284 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Audit Management
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 285
Audit Management
286 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Audit Management
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 287
Audit Management
288 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Audit Management
The audit trail acl object created in response has the following property values:
r_object_id:audit trail acl obj ID
audited_obj_id :451e9a8b0001900
event_name :dm_save
string_1 :Create
accessor_operation[0] :I
[1] :I
[2] :I
accessor_name [0] :dm_world
[1] :dm_owner
[2] :John Doe
accessor_permit [0] :6
[1] :7
[2] :3
accessor_xpermit [0] :0
[1] :0
[2] :196608
application_permit [0]:
[1]:
[2]:
permit_type [0]:0
[1]:0
[2]:0
is_group [0] :F
[1] :F
[2] :F
The event_name records the repository event, a save method, that caused the creation of the audit
trail entry. The string_1 property records the event desciption, in this case, Create, indicating the
creation of an ACL. The accessor_operation property describes what operation was performed on
each accessor identified at the corresponding index position in accessor_name. The accessor_permit
and accessor_xpermit properties record the permissions assigned to the user (or group) identified in
the corresponding positions in accessor_name. Finally, the is_group property identifies whether the
value in accessor_name at the corresponding position represents an individual user or a group.
Now suppose you change the ACL. The changes you make are:
• Add the Sales group
• Remove John Doe
• Change the world’s access to None
The resulting audit trail acl object has the following properties:
r_object_id :audit trail acl obj ID
audited_obj_id :451e9a8b0001900
event_name :dm_save
string_1 :Save
accessor_operation [0] :U
[1] :I
[2] :D
accessor_name [0] :dm_world
[1] :Sales
[2] :JohnDoe
accessor_permit [0] :0
[1] :2
[2] :3
accessor_xpermit [0] :0
[1] :0
[2] :196608
application_permit [0]:
[1]:
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 289
Audit Management
[2]:
permit_type [0]:0
[1]:0
[2]:0
is_group [0] :F
[1] :T
[2] :F
290 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Chapter 13
Methods and Jobs
Methods
Methods are executable programs that are represented by method objects in the repository. The
program can be a Docbasic script, a Java method, or a program written in another programming
language such as C++. The associated method object has properties that identify the executable and
define command line arguments, and the execution parameters.
Methods are executed by issuing a DO_METHOD administration method from the command line or
using a job. Using a DO_METHOD allows you to execute the method on demand. Using a job allows
you to schedule the method for regular, automatic execution. The Jobs, page 314 section contains
more information on creating jobs.
The executable invoked by the method can be stored in the file system or as content of the method
object. If the method is executed by the Java method server, the entire custom or xml app jar must be
stored in the $DOCUMENTUM\<jboss>\server\DctmServer_MethodServer\deploy\ServerApps.
ear\DmMethods.war\WEB-INF\lib directory. For workflow methods, the .jar files must be placed
under the Process Engine deployment in the $DOCUMENTUM/<jboss>/server/DctmServer_
MethodServer/deploy/bpm.ear/bpm.war/WEB-INF/lib directory.
By default, all repositories contain methods used by Content Server. All methods with object names
that begin with dm_ are default methods.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 291
Methods and Jobs
You can specify a full path, a relative path, or no path for the
method verb. If you do not specify a path, the server searches the
directories in the search path of the user.
292 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 293
Methods and Jobs
Running methods
You can manually run a method. To run the method periodically, create a job to execute the method
on a schedule.
If you run a default Documentum method from the Run Method page, select Run as server unless
you are logged in as the installation owner.
Documentum Administrator User Guide contains the instructions on running methods.
294 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
Deleting methods
You can delete a method.
Documentum Administrator User Guide contains the instructions on deleting methods.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 295
Methods and Jobs
The dmbasic method server uses a method execution queue to manage methods submitted for
execution. When you direct a method to the method server, Content Server places a method
execution request on the bottom of the method execution queue. The method server reads the
queue and executes the request at the top of the queue. The method server has a configurable
number of worker threads to execute requests. The maximum number of requests the queue can
contain is the number of threads times 100. For example, if the method server is configured to use
5 threads, then the method execution queue can contain 250 requests.
• Java method server
The Java method server is a third-party application server, installed as a component of Content
Server installation. The Java Method Servers, page 133 section contains more information about
the Java method server.
• Documentum Content Server
The Content Server is the default execution agent for a method if the method is not configured to
execute on the method server or Java method server.
Administration methods
Administration methods are methods that perform a variety of administrative and monitoring
tasks, in categories such as process management, content storage management, full-text indexing,
and database methods. Use Documentum Administrator to execute the administration methods
interactively.
296 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
CAN_FETCH
Any user can run the CAN_FETCH administration method to determine whether the server can
fetch a specified content file.
CAN_FETCH returns TRUE if the fetch is possible or FALSE if it is not.
Documentum Administrator User Guide contains the instructions on running the CAN_FETCH
administration method.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 297
Methods and Jobs
CLEAN_LINKS
The CLEAN_LINKS administration method removes linked_store links not associated with sessions,
unnecessary dmi_linkrecord objects, and auxiliary directories.
CLEAN_LINKS returns TRUE if the operation succeeds or FALSE if it fails.
You must have superuser privileges to run CLEAN_LINKS.
Documentum Administrator User Guide contains the instructions on running the CLEAN_LINKS
administration method.
DELETE_REPLICA
The DELETE_REPLICA administration method removes a content file from a component area of
a distributed storage area.
DELETE_REPLICA returns TRUE if the operation succeeds or FALSE if it fails.
You must have superuser privileges to run DELETE_REPLICA.
Documentum Administrator User Guide contains the instructions on running the DELETE_REPLICA
administration method.
DESTROY_CONTENT
The DESTROY_CONTENT method removes content objects from the repository and their associated
content files from storage areas.
DESTROY_CONTENT returns TRUE if the operation succeeds or FALSE if it fails.
You must have system administrator or superuser privileges to run DESTROY_CONTENT.
Documentum Administrator User Guide contains the instructions on running the DESTROY_CONTENT
administration method.
EXPORT_TICKET_KEY
The EXPORT_TICKET_KEY administration method encrypts and exports a login ticket from the
repository to a client machine.
Documentum Administrator User Guide contains the instructions on running the EXPORT_TICKET_KEY
administration method.
GET_PATH
The GET_PATH administration method returns the directory location of a content file stored in
a distributed storage area.
298 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
IMPORT_REPLICA
The IMPORT_REPLICA administration method imports files from one distributed storage area
into another distributed storage area.
The IMPORT_REPLICA method returns TRUE if the operation succeeds or FALSE if it fails.
You must have system administrator or superuser privileges to use the IMPORT_REPLICA method.
Documentum Administrator User Guide contains the instructions on running the IMPORT_REPLICA
administration method.
IMPORT_TICKET_KEY
The IMPORT_TICKET_KEY administration method decrypts a login ticket from a client machine and
imports the ticket into the repository.
Documentum Administrator User Guide contains the instructions on running the IMPORT_TICKET_KEY
administration method.
MIGRATE_CONTENT
The MIGRATE_CONTENT administration method migrates content files from one storage area
to another.
The MIGRATE_CONTENT method requires superuser privileges to migrate:
• Single content objects.
• Single sysobjects.
• Sets of content objects qualified by a DQL predicate against dmr_content.
• Set of content objects qualified by a DQL predicate against dm_sysobject or its subtypes.
• All content in a file store.
Use the MIGRATE_CONTENT administration method to move content from file stores, retention
type stores, blob stores, and distributed stores to file stores, retention type stores, and distributed
stores. Documentum Administrator 6.5 SP2 and later supports migration from external stores. You
cannot move files to a blob store. The storage areas can be online, offline, or read-only.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 299
Methods and Jobs
Field Description
Migrate Select A single object from the drop-down list.
Content Click Select Object, then select an object type from the Select From
drop-down list.
This option is only available if the Source is an external store and the
Target is either a file store or a ca store.
300 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
Field Description
Migrate With Specifies whether the source content is copied or moved to the target
store during migration. Direct Move is applicable to file stores only.
This option is only available if the Source is an external store and the
Target is either a file store or a ca store.
Update Only This option is used only in conjunction with the Direct Copy or Direct
Move option. When selected, move or copy commands are written to
the log file specified in the Command File Name field.
This option is only available if the Source is an external store and the
Target is either a file store or a ca store.
Command File Name A string that specifies a file path to a log file.
Field Description
Migrate Select All content in a filestore from the drop-down list.
Source Select a source file store from the Source drop-down list.
The default value is 500. Multiple transactions are run until the
maximum number of objects to migrate is reached.
Content Migration Threads Specifies the number of internal sessions used to execute the
method.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 301
Methods and Jobs
Field Description
Source Direct Access Specifies whether the content files in the source store can be
directly accessed through a full file path.
Field Description
Migrate Select All content satisfying a query from the drop-down list.
Select Object Type to Migrate Specify the object type to migrate.
The default value is 500. Multiple transactions are run until the
maximum number of objects to migrate is reached.
302 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
Field Description
Content Migration Threads Specifies the number of internal sessions used to execute the
method.
PURGE_CONTENT
The PURGE_CONTENT administration method marks a content file as offline and deletes the file
from its storage area. The method does not back up the file before deleting it; ensure that you have
archived the file before running PURGE_CONTENT on it.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 303
Methods and Jobs
The PURGE_CONTENT method returns TRUE if the operation succeeds or FALSE if it fails.
You must have system administrator or superuser privileges to use the PURGE_CONTENT method.
Documentum Administrator User Guide contains the instructions on running the PURGE_CONTENT
administration method.
REPLICATE
The REPLICATE administration method copies content files from one component of a distributed
storage area to another. This task is normally performed by the Content Replication tool or by the
Surrogate Get feature. Use the REPLICATE administration method as a manual backup to Content
Replication and Surrogate Get.
The REPLICATE method returns TRUE if the operation succeeds or FALSE if it fails.
You must have system administrator or superuser privileges to use the REPLICATE method.
Documentum Administrator User Guide contains the instructions on running the REPLICATE
administration method.
RESTORE_CONTENT
The RESTORE_CONTENT administration method restores an offline content file to its original
storage area. It operates on one file at a time. If you need to restore more than one file at a time,
use the API Restore method.
You can use RESTORE_CONTENT only when one server handles both data and content requests. If
your configuration uses separate servers for data requests and content file requests, you must issue a
Connect method that bypasses the Content Server to use RESTORE_CONTENT in the session.
The RESTORE_CONTENT method returns TRUE if the operation succeeds or FALSE if it fails.
You must have system administrator or superuser privileges to use the RESTORE_CONTENT
method.
Documentum Administrator User Guide contains the instructions on running the RESTORE_CONTENT
administration method.
SET_STORAGE_STATE
The SET_STORAGE_STATE administration method changes the state of a storage area. A storage
area is in one of three states:
• On line
An on-line storage area can be read and written to.
• Off line
304 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
DB_STATS
The DB_STATS administration method displays statistics about database operations for the current
session. The statistics are counts of the numbers of:
• Inserts, updates, deletes, and selects executed
• Data definition statements executed
• RPC calls to the database
• Maximum number of cursors opened concurrently during the session
Any user can run the DB_STATS method.
Documentum Administrator User Guide contains the instructions on running the DB_STATS
administration method.
DROP_INDEX
EXEC_SQL
The EXEC_SQL administration method executes SQL statements, with the exception of SQL Select
statements.
The EXEC_SQL method returns TRUE if the operation succeeds or FALSE if it fails.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 305
Methods and Jobs
FINISH_INDEX_MOVES
The FINISH_INDEX_MOVES administration method completes unfinished object type index moves.
The FINISH_INDEX_MOVES method returns TRUE if the operation succeeds or FALSE if it fails.
You must have superuser privileges to run the FINISH_INDEX_MOVES administration method.
Documentum Administrator User Guide contains the instructions on running the
FINISH_INDEX_MOVES administration method.
GENERATE_PARTITION_SCHEME_SQL
306 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
Parameter Description
Operation Select an operation from the dropdown list box to define the
subcommand. The options are:
• DB_PARTITION: Generates a script to upgrade or convert a
repository to a 6.5 partitioned repository. If selected:
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 307
Methods and Jobs
Parameter Description
Table Name Type a table name. If you select Table Name, then you cannot select
Partition Type.
Include object type Optionally, select to apply the partition operation to the
dmi_object_type table.
Owner Name Type an owner name. This field is enabled only if Table Name is
selected.
Last Partition Optionally, type a name for the last partition. This field appears only
when DB_PARTITION is selected as the operation.
Last Tablespace Optionally, type a tablespace name for the last partition. This field
appears only when DB_PARTITION is selected as the operation.
Partition Name Type a name for the partition. For DB_PARTITION and
ADD_PARTITION operations, you must first click Add in the
Partitions section to add information for each partition.
Range Type the upper limit for the partition key range. For DB_PARTITION
and ADD_PARTITION operations, you must first click Add in the
Partitions section to add information for each partition.
Tablespace Type the partition tablespace name. If not specified, the default
tablespace is used. For DB_PARTITION and ADD_PARTITION
operations, you must first click Add in the Partitions section to add
information for each partition.
Temp Table Suffix Type a temporary table suffix. This field is enabled and optional only if
EXCHANGE_PARTITION is selected as the operation.
Documentum Administrator User Guide contains the instructions on running the
GENERATE_PARTITION_SCHEME_SQL administration method.
MAKE_INDEX
The MAKE_INDEX administration method creates an index for any persistent object type. You can
specify one or more properties on which to build the index. If you specify multiple properties, you
must specify all single-valued properties or all repeating properties. Also, if you specify multiple
properties, the sort order within the index corresponds to the order in which the properties are
specified in the statement. You can also set an option to create a global index.
If the MAKE_INDEX method succeeds, it returns the object ID of the dmi_index object for the new
index. If the method fails, MAKE_INDEX returns F. If the specified index already exists, the method
returns 0000000000000000.
You must have superuser privileges to run the MAKE_INDEX administration method. To run an
index space query, you must have sufficient privileges in the database.
Documentum Administrator User Guide contains the instructions on running the MAKE_INDEX
administration method.
308 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
MOVE_INDEX
The MOVE_INDEX administration method moves an existing object type index from one tablespace
or segment to another. The method is not supported for servers running against DB2.
The MOVE_INDEX method returns TRUE if the operation succeeds or FALSE if it fails.
You must have system administrator or superuser privileges to run the MOVE_INDEX administration
method.
Documentum Administrator User Guide contains the instructions on running the MOVE_INDEX
administration method.
ESTIMATE_SEARCH
The ESTIMATE_SEARCH administration method returns the number of results matching a particular
full-text search condition.
ESTIMATE_SEARCH returns one of the following:
• The exact number of matches that satisfy the SEARCH condition, if the user running the method
is a superuser or there are more than 25 matches.
• The number 25 if there are 0-25 matches and the user running the method is not a superuser.
• The number -1 if there is an error during execution of the method.
Errors are logged in the session log file.
Any user can execute this method. However, the user’s permission level affects the return value.
The ESTIMATE_SEARCH administration method is not available, if the connected repository is
configured with the xPlore search engine.
Documentum Administrator User Guide contains the instructions on running the ESTIMATE_SEARCH
administration method.
MARK_FOR_RETRY
The MARK_FOR_RETRY administration method finds content that has a particular negative
update_count property value and marks such content as awaiting indexing. Use MARK_FOR_RETRY
at any time to mark content that failed indexing for retry. Note that MARK_FOR_RETRY does
not take the update_count argument.
When the UPDATE_FTINDEX method fails, it changes the update_count property for the content
object associated with the bad content to the negative complement of the update_count value in
the fulltext index object. For example, if the update_count of the full-text index object is 5, the
update_count property of the bad content object is set to -5 (negative 5). Documentum Content Server
DQL Reference Guide contains more information.
The MARK_FOR_RETRY method returns TRUE if the operation succeeds or FALSE if it fails.
You must have system administrator or superuser privileges to run the MARK_FOR_RETRY
administration method.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 309
Methods and Jobs
Documentum Administrator User Guide contains the instructions on running the MARK_FOR_RETRY
administration method.
MODIFY_TRACE
The MODIFY_TRACE administration method turns tracing on and off for full-text indexing
operations.
The MODIFY_TRACE method returns TRUE if the operation succeeds or FALSE if it fails.
You must have system administrator or superuser privileges to run the MODIFY_TRACE
administration method.
Documentum Administrator User Guide contains the instructions on running the MODIFY_TRACE
administration method.
GET_LAST_SQL
The GET_LAST_SQL administration method retrieves the SQL translation of the last DQL statement
issued.
Any user can run GET_LAST_SQL.
Documentum Administrator User Guide contains the instructions on running the GET_LAST_SQL
administration method.
LIST_RESOURCES
The LIST_RESOURCES administration method lists information about the server and the server’s
operating system environment.
You must have system administrator or superuser privileges to run the LIST_RESOURCES
administration method.
Documentum Administrator User Guide contains the instructions on running the LIST_RESOURCES
administration method.
LIST_TARGETS
The LIST_TARGETS administration method lists the connection brokers to which the server is
currently projecting. Additionally, it displays the projection port, proximity value, and connection
broker status for each connection broker, as well as whether the connection broker is set (in server.ini
or the server config object).
Any user can run LIST_TARGETS.
Documentum Administrator User Guide contains the instructions on running the LIST_TARGETS
administration method.
310 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
SET_OPTIONS
The SET_OPTIONS administration method turns tracing options on or off. You can set the following
options:
Option Action
clean Removes the files from the server common area.
crypto_trace Cryptography and remote key management
information.
debug Traces session shutdown, change check, launch
and fork information.
docbroker_trace Traces connection broker information.
i18n_trace Traces client session locale and codepage. An
entry is logged identifying the session locale and
client code page whenever a session is started.
The SET_OPTIONS method returns TRUE if the operation succeeds or FALSE if it fails.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 311
Methods and Jobs
You must have system administrator or superuser privileges to run the SET_OPTIONS administration
method.
Documentum Administrator User Guide contains the instructions on running the SET_OPTIONS
administration method.
RECOVER_AUTO_TASKS
Run the RECOVER_AUTO_TASKS administration method to recover workflow tasks that have been
claimed, but not yet processed by a workflow agent associated with a failed Content Server.
If a Content Server fails, its workflow agent is also stopped. When the server is restarted, the
workflow agent recognizes and processes any work items it had claimed but not processed before the
failure. However, if you cannot restart the Content Server that failed, you must recover those work
items already claimed by its associated workflow agent so that another workflow agent can process
them. The RECOVER_AUTO_TASKS administration method performs that recovery.
Documentum Administrator User Guide contains the instructions on running the
RECOVER_AUTO_TASKS administration method.
WORKFLOW_AGENT_MANAGEMENT
Run the WORKFLOW_AGENT_MANAGEMENT method to start and shut down a workflow agent.
Documentum Administrator User Guide contains the instructions on running the
WORKFLOW_AGENT_MANAGEMENT administration method.
If the workflow agent startup or shutdown process fails, the Administration Method Results page
displays an error message indicating the process failure and provides additional information. There
several reasons why a workflow agent startup or shutdown process can fail:
• The network is down.
• The Content Server containing the workflow agent is down.
• The Content Server projects to a connection broker that is not listed in the dfc.properties of the
client running Documentum Administrator.
If the repository is not reachable, the Parameters page displays the Workflow Agent Current
Status as Unknown.
REGEN_EXPRESSIONS
By default, dmbasic expression generates the INTEGER data type. Use the following procedure to
convert INTEGER to LONG:
312 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
This page displays the results of running an administration method. For information on the results,
click the method name.
The following are content methods:
• CAN_FETCH, page 297
• CLEAN_LINKS, page 298
• DELETE_REPLICA, page 298
• DESTROY_CONTENT, page 298
• EXPORT_TICKET_KEY, page 298
• GET_PATH, page 298
• IMPORT_REPLICA, page 299
• IMPORT_TICKET_KEY, page 299
• MIGRATE_CONTENT, page 299
• PURGE_CONTENT, page 303
• REPLICATE, page 304
• RESTORE_CONTENT, page 304
• SET_STORAGE_STATE, page 304
The following are database methods:
• DB_STATS, page 305
• EXEC_SQL, page 305
• MAKE_INDEX, page 308
• DROP_INDEX, page 305
• MOVE_INDEX, page 309
• FINISH_INDEX_MOVES, page 306
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 313
Methods and Jobs
This section describes how to choose a file on the server file system.
Jobs
Jobs are repository objects that automate method object execution. Methods associated with jobs are
executed automatically on a user-defined schedule. The properties of a job define the execution
schedule and turn execution on or off. Jobs are invoked by the agent exec process, a process installed
with Content Server. At regular intervals, the agent exec process examines the job objects in the
repository and runs those jobs that are ready for execution. Any user can create jobs.
When a repository is created, it contains jobs for:
• CA Store (EMC Centera and NetApp SnapLock stores)
• Content
• Data Dictionary
• Distributed Content
• Docbase
314 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
• Federation
• Fulltext
• Other
• Replication
• Workflow
You can create additional jobs to automate the execution of any method and you can modify the
schedule for executing existing jobs.
Documentum Platform and Platform Extensions Installation Guide contains more information on
federation and replication jobs.
Job descriptions
These jobs are automatically created with each repository. The descriptions discuss arguments that
can be modified for each job.
• ACL replication (dm_ACLReplication), page 316
• ACL replication (dm_ACLRepl_repository), page 316
• Archive, page 332
• Audit Management, page 317
• Consistency Checker, page 319
• Content Replication, page 325
• Content Warning, page 327
• Data Dictionary Publisher, page 329
• Database Space Warning, page 330
• Distributed operations (dm_DistOperations), page 332
• Dmclean, page 334
• Dmfilescan, page 338
• Federation copy (dm_FederationCopy), page 342
• Federation export (dm_FederationExport), page 342
• Federation import (dm_FederationImport), page 342
• Federation status (dm_FederationStatus), page 343
• Federation update (dm_FederationUpdate), page 343
• File Report, page 343
• Group Rename, page 347
• Dm_LDAPSynchronization, page 347
• Log Purge, page 350
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 315
Methods and Jobs
The ACL Replication job first sets external ACLs for replication within a repository federation and
then launches ACL (permission set) replication. It is installed in an inactive state. Documentum
Platform and Platform Extensions Installation Guide contains the information on replication and
replication jobs.
The dm_ACLRepl_ job replicates ACLs to repositories in a federation. There is one job for each
member repository, and repository is the first 19 bytes of the repository’s name. It is an internal
template job that is installed in an inactive state. Do not edit or remove this job. Documentum Platform
and Platform Extensions Installation Guide contains the information on replication and replication jobs.
When users import documents in asynchronous mode, there may be instances where some or
all content may not be immediately replicated from BOCS to ACS. This might happen if the
Documentum Messaging Services (DMS) server was not available or there were network issues
between BOCS, DMS, and/or ACS.
The Asynchronous Write job polls for content still in a parked state and generates new messages for
the DMS server to pass to BOCS to request the upload of the parked content. After execution, the
job lists all content objects that had yet to be moved from the parked state and for which messages
were sent to the DMS server. If a BOCS server receives a request to migrate content that is has
already processed, it will ignore the request.
316 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
This job is inactive by default, but should be enabled whenever asynchronous mode is allowed. The
job is scheduled to run daily at 2:00 a.m. by default.
Audit Management
The Audit Management tool deletes audit trail entries. When an audited event occurs, an audit trail
entry is created for that event. If the audit trail entries are not removed periodically, the tables for
the dm_audittrail object type can grow quite large, and performance degrades when audited events
occur. The Audit Management tool automates the task of removing unneeded audit trail objects.
The tool runs under the Documentum installation owner’s account to execute the dm_AuditMgt job.
The job uses the PURGE_AUDIT administration method to remove the audit trail entries from the
repository. Consequently, to use this tool, the Documentum installation owner must have Purge
Audit privileges. All executions of the tool are audited. The generated audit trail entry has the
event name dm_purgeaudit.
The cutoff_days and custom_predicate arguments determine which audit trail objects to remove. The
cutoff_days argument specifies the age of the objects to delete. The custom_predicate argument is
then applied to those items meeting the age requirement.
By default, the cutoff_days argument is set to 90 and the custom_predicate argument is set to remove
only audit trail objects generated by system-defined events. (The tool does not delete audit trail
objects generated by user-defined events by default.)
To change the age cutoff, reset the cutoff_days argument.
To choose the objects to remove from the subset selected by cutoff_days, change the custom_predicate
argument. By default, the custom predicate includes three conditions:
• delete_flag=TRUE
• dequeued_date=value (value is computed using the cutoff_days argument)
• r_gen_source=1
You cannot change the first two conditions. The third condition, r_gen_source=1, directs the server to
delete only audit trail objects generated by system-defined events. If you want to remove only audit
trail objects generated by user-defined events, reset this to r_gen_source=0. If you want to remove
audit trail objects generated by both system- and user-defined events, remove the r_gen_source
expression from the custom predicate.
You may also add other conditions to the default custom predicate. If you add a condition that
specifies a string constant as a value, you must enclose the value in two single quotes on each side.
For example, suppose you want to remove only audit trail entries that record dm_checkin events. To
do so, add the following to the custom_predicate:
event_name=''dm_checkin''
dm_checkin is enclosed by two single quotes on each side. Do not use double quotes. These must
be two single quotes.
The Audit Management tool generates a status report that lists the deleted dm_audittrail entries. The
report is saved in the repository in /System/Sysadmin/Reports.
If an error occurs while the tool is executing, the server sends email and inbox notification to the
user specified by the -auditperson argument.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 317
Methods and Jobs
The Audit Management tool is installed in the inactive state. The first time you execute the tool,
it may take a long time to complete.
Arguments
Table 92, page 318, lists the arguments to the Audit Management tool.
318 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
Guidelines
Audit trail entries are the result of audited events. The more events you audit, the more audit trail
entries are generated in a fixed period of time.
You must decide if there are any reasons to keep or maintain audit trail entries. For example, you
may want to keep certain items for traceability purposes. If so, leave this tool inactive or set the
cutoff_days argument to a value that will save the audit trail items for a specified length of time.
After you have made your decisions, formulate a scheduling plan.
If you do not supply a value for custom_predicate or cutoff_days, all system-generated dm_audittrail
entries older than 90 days are deleted.
Report sample
Consistency Checker
The Consistency Checker tool scans the repository and reports any inconsistencies such as type
or object corruption, objects that reference a user, group, or other object that is nonexistent in
the repository and so forth. The tool does not attempt to fix any of the inconsistencies. Contact
OpenText Global Technical Services for assistance in correcting errors in your repository found
by the consistency checker.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 319
Methods and Jobs
Appendix D, Consistency Checks, lists the consistency checks conducted by the tool and the error
number assigned to each.
The job generates a report that lists the categories checked and any inconsistencies found. The report
is saved to the repository in /System/Sysadmin/Reports/ConsistencyChecker. If no errors are found,
the current report overwrites the previous report. If an error is found, the current report is saved as a
new version of the previous report.
It is recommended that you run this tool on a repository before upgrading the repository to a new
version of the Documentum Server.
The Consistency Checker job is active by default, running once a day.
The Consistency Checker job is implemented as a script called consistency_checker.ebs. You can run
the script manually, from the operating system prompt. The syntax is:
dmbasic -fconsistency_checker.ebs -eEntry_Point --repository_
name superuser password
repository_name is the name of the repository against which you are running the consistency checker,
superuser is the user name of a repository superuser, and password is the password for the superuser’s
account.
When you run the consistency checker from the command line, the results of the checks are directed
to standard output.
Arguments
Report sample
Here is a sample of a Consistency Checker report. This run of the tool found X inconsistencies.
Beginning Consistency Checks.....
Repository Name: buzzard
Server Version: 5.1.0.63 Win32.SQLServer
Database: SQLServer
#################################################
##
## CONSISTENCY_CHECK: Users & Groups
##
## Start Time: 09-10-2002 10:15:55
##
##
#################################################
Checking for users with non-existent group
WARNING CC-0001: User 'docu' belongs to
non-existent group ''
WARNING CC-0001: User 'engr' belongs to
non-existent group ''
320 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 321
Methods and Jobs
dm_sysobject_r entries
Checking for sysobjects with missing
dm_sysobject_s entry
#################################################
##
##
## CONSISTENCY_CHECK: Folders and Cabinets
##
## Start Time: 09-10-2002 10:16:02
##
##
#################################################
Checking for folders with missing dm_folder_r table
entries
Checking for folders that are referenced in dm_folder_r
but not in dm_folder_s
Checking for dm_folder objects that are missing an
entry in dmi_object_type
Checking for dm_folder objects that are missing
corresponding dm_sysobject entries
Checking for folders with non-existent ancestor_id
Checking for cabinet that have missing dm_folder_r
table entries
Checking for cabinets that are missing an entry in
dmi_object_type
Checking for folder objects with missing
dm_sysobject_r entries
Checking for folder objects with null r_folder_path
#################################################
##
##
## CONSISTENCY_CHECK: Documents
##
##
## Start Time: 09-10-2002 10:16:03
##
##
#################################################
Checking for documents with a dm_sysobject_s entry
but no dm_document_s entry
Checking for documents with missing dm_sysobect_s
entries
Checking for documents with missing dmi_object_type
entry
#################################################
##
##
## CONSISTENCY_CHECK: Content
##
## Start Time: 09-10-2002 10:16:03
##
##
##
#################################################
Checking for content objects that reference
non-existent parents
Checking for content with invalid storage_id
Checking for content objects with non-existent format
#################################################
##
322 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
##
## CONSISTENCY_CHECK: Workflow
##
##
## Start Time: 09-10-2002 10:16:03
##
##
#################################################
Checking for dmi_queue_item objects with non-existent
queued objects
Checking for dmi_workitem objects that reference
non-existent dm_workflow objects
Checking for dmi_package objects with missing
dmi_package_s entries
Checking for dmi_package objects that reference
non-existent dm_workflow objects
Checking for workflow objects with non-existent
r_component_id
Checking for workflow objects with missing
dm_workflow_s entry
Checking for work item objects with missing
dm_workitem_s entry
################################################
##
##
## CONSISTENCY_CHECK: Types
##
## Start Time: 09-10-2002 10:16:04
##
##
################################################
Checking for dm_type objects with a non-existen
t dmi_type_info object
Checking for dmi_type_info objects with a non-existent
dm_type object
Checking for type objects with corrupted property
positions
Checking for types with invalid property counts
#################################################
##
##
## CONSISTENCY_CHECK: Data Dictionary
##
## Start Time: 09-10-2002 10:16:04
##
##
#################################################
Checking for duplicate dmi_dd_attr_info objects
Checking for duplicate dmi_dd_type_info objects
Checking for any dmi_dd_attr_info objects that are
missing an entry in dmi_dd_common_info_s
Checking for any dmi_dd_type_info objects that are
missing an entry in dmi_dd_common_info_s
Checking for any dmi_dd_attr_info objects that are
missing an entry in dmi_dd_attr_info_s
Checking for any dmi_dd_type_info objects that are
missing an entry in dmi_dd_type_info_s
################################################
##
##
## CONSISTENCY_CHECK: Lifecycles
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 323
Methods and Jobs
##
## Start Time: 09-10-2002 10:16:11
##
#################################################
Checking for sysobjects that reference non_existent
policy objects
Checking for any policy objects that reference
non-existent types in included_type
Checking for any policy objects with missing
dm_sysobject_s entry
Checking for any policy objects with missing
dm_sysobject_r entries
Checking for policy objects with missing dm_policy_r
entries
Checking for policy objects with missing dm_policy_s
entry
################################################
##
##
## CONSISTENCY_CHECK: FullText
##
## Start Time: 09-10-2002 10:16:11
##
################################################
Checking for tdk index objects that point to
non-existent fulltext index objects
Checking for any tdk collect objects that point to
non-existent tdk index objects
Checking for any fulltext index objects that point
to non-existent tdk index objects
Checking for any tdk index objects that point to
non-existent tdk collect objects
Checking for any non-orphaned dmr_content objects
that point to types that do not exist
Checking for any non-orphaned dmr_content objects
that point to non-existent formats
Checking for any dmr_content objects that point to
a non-existent fulltext index
Checking for any fulltext index propertys that are
no longer in dm_type
#################################################
##
##
## CONSISTENCY_CHECK: Indices
##
## Start Time: 09-10-2002 10:16:11
##
#################################################
Checking for dmi_index objects that reference
non-existent types
Checking for types with non-existent dmi_index
object for <type>_s table
Checking for types with non-existent dmi_index
object for <type>_r table
Checking for index objects with invalid property
positions
################################################
##
##
## CONSISTENCY_CHECK: Methods
##
324 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
Content Replication
The Content Replication tool automates content replication between the component storage areas
of a distributed storage area. The tool uses dump and load operations, but unlike manual dump
and load operations, only requires enough temporary disk space to transfer the largest individual
content file to be replicated.
By default, the tool processes the content files in batches. It retrieves up to 500 content files (the
default batch size) and releases resources in the source database before replicating the files. You can
adjust the size of the batches by setting the -batch_size argument. Each execution of the job may
process multiple batches, depending on the number of content files to be replicated and the batch size.
If the -batch_size argument is set to 0, the DQL hint FETCH_ALL_RESULTS 0 is used in the query.
All files to be replicated are cached in the Content Server’s memory and transferred individually. Set
-batch_size to 0 only if you have a very large amount of memory available.
If the -batch_size argument is set to 1, the FETCH_ALL_RESULTS hint is not used and query results
are not cached.
If the -batch_size argument is set to any value greater than 1 and content transfer operations fail for
the whole batch, the job exits and displays an error message.
The job uses a login ticket to connect to each source server. If you include the -source_servers
argument, the job connects only to the servers in the list. If you do not include that argument, the job
attempts to connect to each server in the repository.
Note: The clocks on the host machines of the source servers must be using UTC time and must be
synchronized with the host machine on which the job runs. The login ticket for the job is valid for
5 minutes. If the clocks are not synchronized or the machines are using times set to different time
zones, the source server to which the job is connecting may determine that the ticket has timed out
and the job will fail.
A content replication job looks for all content not locally present, gets the files while connected to
other sites, and performs an IMPORT_REPLICA for each content file in need of replication. The
job generates a report that lists each object replicated. The report is saved to the repository in
/System/Sysadmin/Reports/ContentReplication.
Note: If the report was run against the content at a remote distributed site, the report name will have
the site’s server config name appended. For example, if London is a remote site, its report would be
found in /System/Sysadmin/Reports/ContentReplicationLondon.
Installing the tool suite at a site creates a content replication job for the installation site. In a
distributed environment, the job’s argument values for the remote sites are based on those of the
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 325
Methods and Jobs
Content Replication job for the primary site, but the job name and target server will be unique for
each site. The job name has the format:
dm_ContentReplicationserverconfig.object_name
The job’s target_server property identifies the local server performing the replication using the format
repository.serverconfig@hostname.
The ContentReplication job is inactive by default.
Arguments
Table 93, page 326, describes the arguments for the tool.
326 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
Report sample
Content Warning
The Content Warning tool notifies you when disks that you use for content storage approach a
user-defined capacity. The notification is sent to the repository Inbox of the queueperson and as
an email message. The tool also generates a report that is stored in the Reports folder under the
Sysadmin folder in the System cabinet.
The tool determines where the repository is storing its content and then uses operating system
commands to determine whether these disks are reaching the specified threshold. When the
disk space used meets or exceeds the value in the tool’s percent_full argument, a notification
is sent to the specified queueperson and a report is generated and saved to the Docbase in
/System/Sysadmin/Reports/ContentWarning.
Note:
• If the tool was run against the content at a remote distributed site, the report name will have the
site’s server config name appended. For example, if London is a remote site, its report would be
found in /System/Sysadmin/Reports/ContentWarningLondon.
• The dm_ContentWarning job may not work properly when the disk space is in terabytes scale.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 327
Methods and Jobs
Arguments
Table 94, page 328, describes the arguments for the tool.
Report sample
328 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
The Data Dictionary Publisher tool publishes the data dictionary information. The data dictionary is
information about object types and properties stored in internal objects by Content Server and made
available to client applications through the publishing operation. Publishing the information creates
dd type info and dd attr info objects. These are persistent objects whose properties store the data
dictionary information. Client applications that use the data dictionary information can reference or
query these objects and their properties. (For more information about the data dictionary, refer to
Content Server Fundamentals.)
Data Dictionary Publisher generates a status report that is saved in the repository in
/System/Sysadmin/Reports/DataDictionaryPublisher.
Arguments
Report sample
Connected To sqlntX.sqlntX
Job Log for System Administration Tool
DataDictionaryPublisher
-----------------------------------------------
This job log consists of three distinct parts:
1) All print statements from the execution of the job
2) The report for the tool which is saved as a
separate document in the Docbase in
/System/Sysadmin/Reports.
3) The trace file results from the trace API,
if the job's trace level is > 0.
Note: The report and trace file are also maintained
under the Documentum log location in:
$DOCUMENTUM/dba/log/<docbase hex id>/sysadmin
They are overwritten each time the job executes.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 329
Methods and Jobs
Start of log:
-------------
DataDictionaryPublisher Tool Completed at
11/8/2000 12:15:25. Total duration was 0 minutes.
Calling SetJobStatus function...
--- Start
c:\Documentum\dba\log\000145df\sysadmin\
DataDictionaryPublisherDoc.txt report output ----
DataDictionaryPublisher Report For DocBase sqlntX
As Of 11/8/2000 12:15:24
DataDictionaryPublisher utility syntax:
apply,c,NULL,EXECUTE_DATA_DICTIONARY_LOG
Executing DataDictionaryPublisher...
Report End 11/8/2000 12:15:25
--- End
c:\Documentum\dba\log\000145df\sysadmin\
DataDictionaryPublisherDoc.txt report output ---
Arguments
330 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
Report sample
Here is a sample of a Database Space Warning report. It shows the total number of blocks allocated
for the database, how many are currently used for tables and indexes, the percentage used of the
total allocated, and the number of free blocks. It also lists the number of fragments for all tables and
indexes with more than max_extents fragments and lists the number of Documentum indexes in
the repository.
Database Block Allocation
Table Index TotalUsed Free Total %Used/Total
620 647 1,267 81,929 83,196 2
Here is a sample Inbox message sent by the Database Space Warning tool:
Take a look at your DBMS tablespace--it's 90% full!
You have 8 fragmented tables in your DBMS instance
--you may want to correct this!
You are missing some Documentum indexes-contact Support!
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 331
Methods and Jobs
DOCBASE: test1
EVENT: FraggedTables
NAME: DBWarning.Doc
SENT BY: dmadmin
TASK NAME: event
MESSAGE:
You have 18 fragmented tables in your DBMS instance
--you may want to correct this!
The dm_DistOperations job performs inter-repository distributed operations. These tasks include:
• Propagating distributed events (dmi_queue_items) across repositories
• Creating checkout references for remote checkout operations
• Refreshing reference links
The dm_DistOperations job is configured to run every five minutes by default. Do not change the
schedule.
It is installed in the repository in an inactive state.
Archive
The Archive tool automates archive and restore between content areas. Archive older or infrequently
accessed documents to free up disk space for newer or more frequently used documents. Restore
archived documents to make the archived documents available when users request them. For
complete information on configuring archiving, refer to Archiving and restoring documents, page 459.
The Archive tool is active by default, and runs once daily.
Arguments
Table 97, page 332 describes the arguments for the tool
332 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
Guidelines
The Archive tool puts all the documents it is archiving in one dump file. This means you must move
the entire dump file back to the archive directory to restore a single document in the file. If the files
are extremely large, this can be a significant performance hit for restore operations.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 333
Methods and Jobs
Dmclean
The Dmclean tool automates the dmclean utility. The utility scans the repository for orphaned
content objects, ACLs, annotations (dm_note objects), and aborted workflows. The utility also scans
for the workflow templates created by the SendToDistributionList command (a Documentum
Desktop command that routes a document to multiple users concurrently) and left in the repository
after the workflow completed. The utility generates a script to remove these orphans. The Dmclean
tool performs dmclean’s operations and (optionally) runs the generated script.
When the agent exec program invokes the script, the tool generates a report showing what content
objects, content files, ACLs, notes and workflow templates would be removed upon execution of the
generated script. The status report is saved in /System/Sysadmin/Reports/DMClean.
Note: If the tool was run against the content at a remote distributed site, the report name will have
the site’s server config name appended. For example, if London is a remote site, its report would be
found in /System/Sysadmin/Reports/DMCleanLondon.
Whether the generated script runs is controlled by the tool’s clean_now argument. This
argument is set to TRUE by default. If you set it to FALSE, the script is not run, and
you will have to run it manually to remove the orphan objects. The script is stored in
%DOCUMENTUM\dba\log\hexrepositoryid\sysadmin ($DOCUMENTUM/dba/log/hexrepositoryid/
sysadmin).
The Dmclean tool is installed in the inactive state.
Arguments
Table 98, page 334, describes the arguments for the tool.
334 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
Guidelines
If you are using distributed content, Dmclean requires the default storage area for dm_sysobjects
to be the distributed store.
How often you run Dmclean will depend on
• Your business rules
• The size of the repository
• The amount of storage capacity
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 335
Methods and Jobs
Typically, including notes and ACLs in the operation noticeably increases the execution time of the
tool, so you may want to reset these arguments to FALSE on some runs.
If you prefer to review what and how much will be deleted before executing the script, set the
clean_now argument to FALSE. (You will have to execute the script manually after inspection.)
Report sample
336 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
folder.
# /System/Distributed References/Workflow folder
exists.
# Making /System/Distributed References/VDM folder.
# /System/Distributed References/VDM folder exists.
# Making docbase config object.
# Making server config object.
#
# Documentum, Inc.
#
# dmclean cleans up orphan content, annotation,
# internal ACL, and unused SendToDistributionList
# workflow template objects. Instead of immediately
# destroying the orphan content objects, dmclean
# generates an API script, which can
# be used for verification before cleanup actually
# happens.
# This is done in this manner because deleted content
# objects by mistake are difficult to recover.
# dmclean, however, cleans up all unused annotations
# and internal ACLs.
# To remove orphan content objects after verification,
# do the following in iapi:
#
# % iapi <DOCBASE> -U<USER> -P<PWD>
# API> @<SCRIPT_NAME>
# API> quit
#
# Starting to clean up unsed content objects...
# Content object 060003e880002100 has parent
# count of zero.
apply,c,060003e880002100,DESTROY_CONTENT
getmessage,c
close,c,q0
# Content object 060003e880002101 has parent
# count of zero.
apply,c,060003e880002101,DESTROY_CONTENT
getmessage,c
close,c,q0
# Content object 060003e880002105 has parent
# count of zero.
apply,c,060003e880002105,DESTROY_CONTENT
getmessage,c
close,c,q0
# Content object 060003e88000210c has parent
# count of zero.
apply,c,060003e88000210c,DESTROY_CONTENT
getmessage,c
close,c,q0
# Content object 060003e880002114 has parent
# count of zero.
apply,c,060003e880002114,DESTROY_CONTENT
getmessage,c
close,c,q0
# Content object 060003e880002119 has parent
# count of zero.
apply,c,060003e880002119,DESTROY_CONTENT
getmessage,c
close,c,q0
# Count of objects with zero parent count was: 6
# Content cleanup complete.
# Starting to clean up unused subcontent objects...
# SubContent cleanup complete.
# Starting to Remove unused annotations...
# Total number of annotations removed: 0
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 337
Methods and Jobs
Dmfilescan
The Dmfilescan tool automates the dmfilescan utility. This utility scans a specific storage area or all
storage areas for any content files that do not have associated content objects and generates a script
to remove any that it finds. The tool executes the generated script by default, but you can override
the default with an argument. The dmfilescan utility, page 456 provides detailed information about
the dmfilescan utility.
Dmfilescan also generates a status report that lists the files it has removed. The report is saved in the
repository in /System/Sysadmin/Reports/DMFilescan.
Note: If the tool was run against the content at a remote distributed site, the report name will have
the site’s server config name appended. For example, if London is a remote site, its report would be
found in /System/Sysadmin/Reports/DMFilescanLondon.
Dmfilescan is installed in the inactive state.
Arguments
Table 99, page 338, lists the arguments for the tool. Refer to the description of the dmfilescan utility in
The dmfilescan utility, page 456, for instructions on specifying values for the -from and -to arguments.
338 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
Guidelines
Typically, if you run the Dmclean tool regularly, it is not necessary to run the Dmfilescan tool more
than once a year. By default, the tool removes all orphaned files from the specified directory or
directories that are older than 24 hours. If you wish to remove orphaned files younger than 24 hours,
you can set the -force_delete flag to T (TRUE). However, this flag is intended for use only when you
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 339
Methods and Jobs
must remove younger files to clear diskspace or to remove temporary dump files created on the
target that were not removed automatically. If you execute Dmfilescan with -force_delete set to
T, make sure that there are no other processes or sessions creating objects in the repository at the
time the job executes.
If you are using distributed content, dmfilescan requires the default storage area for dm_sysobjects
to be the distributed store.
Report sample
340 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 341
Methods and Jobs
00000962/80/00/03'
# Reading directory
'/u127/dm/data/boston2/replica_content_storage_01/
00000962/80/00/09'
# Reading directory
'/u127/dm/data/boston2/replica_content_storage_01/
00000962/80/00/0a'
# Reading directory
'/u127/dm/data/boston2/replica_content_storage_01/
00000962/80/00/0c'
# Reading directory
'/u127/dm/data/boston2/replica_content_storage_01/
00000962/80/00/07'
# Reading directory '/u127/dm/data/boston2/
temp_replicate_store/00000962'
# Directory /u127/dm/data/boston2/temp_replicate_store/
00000962 is empty
# 0 orphan files were found
#
# Cleaning up content indexes ...
------- End /u116/dm/dmadmin/dba/log/00000962/sysadmin/
0900096280012800.bat output
------------------------
Destroying DMFilescan result file with ID 0900096280012800...
Report End 9/17/96 11:09:54 AM
The Federation Copy tool transfers LDIF files, which contain user and group information, to member
repositories from the governing repository. The job is installed in an inactive state. Documentum
Platform and Platform Extensions Installation Guide contains the information on repository federations
and the federation jobs.
The Federation Export tool exports user and group information from the governing repository to
an LDIF file. The job is installed in an inactive state. Documentum Platform and Platform Extensions
Installation Guide contains the information on repository federations and the federation jobs.
The Federation Import tool imports an LDIF file that contains user and group information into a
member repository. The job is installed in an inactive state. When you create a federation, the job is
activated in the member repositories. Documentum Platform and Platform Extensions Installation Guide
contains the information on repository federations and the federation jobs.
342 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
The Federation Status tool polls the members of a federation to determine the current status of
any Federation Import jobs running on the member repository. The job is installed in an inactive
state. When you create a federation, the job is activated in the governing repository. Documentum
Platform and Platform Extensions Installation Guide contains the information on repository federations
and the federation jobs.
The Federation Update tool executes on the governing repository of a federation to run all other
methods in sequence, pushing user, group, and ACL changes to the member repositories. The job
is installed in an inactive state. When you create a federation, the job is activated in the governing
repository. Documentum Platform and Platform Extensions Installation Guide contains the information on
repository federations and the federation jobs.
File Report
The File Report tool assists you in restoring deleted repository documents. It generates a report that
lists all documents in the repository and their corresponding content files. Using that report in
conjunction with a file system backup, you can restore the content file of a deleted document. Using a
report to restore a document, page 344 provides instructions on restoring a document.
If a document must be recreated, these reports identify which files must be restored to rebuild the
document. The system administrator matches lost documents to the file names so that the content
files can be recovered. This feature is especially useful for restoring a single document (or a small set
of documents) to a previous state, which cannot be done from database backups.
The File Report tool as installed, runs a full report once a week against all file storage areas in the
repository. It is possible to run incremental reports and reports that only examine a subset of the
storage areas for the repository. Creating incremental or partial-repository reports, page 344 provides
instructions to set up reports.
Note: File Report only provides a mechanism for restoring the document content. The document
metadata must be restored manually.
File Report saves the generated report to /System/Sysadmin/Reports/FileReport.
The File Report tool is installed as inactive.
Guidelines
Set up the File Report schedule on the same interval as the file system backups. For example, if
nightly backups are done, also run File Report nightly and store the resulting report with the backups.
We recommend scheduling nightly incremental reports and generating full repository reports on a
less frequent basis (weekly or biweekly).
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 343
Methods and Jobs
If your repository is so large that creating full reports is not practical or generates cumbersome files,
set up multiple jobs, each corresponding to a different storage area.
Usage notes
A File Report job creates an incremental report if its -incremental_report argument is set to TRUE.
Incremental reports only include documents that have changed since the last File Report was run.
If you include the -storage_area argument, the job generates a report on the documents in the
specified storage area.
If you include the -folder_name argument, the job generates a report on documents in the specified
folder.
Including both the -storage_area and -folder_name arguments generates a report on those documents
in the specified folder that are also stored in the given storage area.
To create a job that generates incremental reports or only reports on some storage areas, copy an
existing File Report job object and set its properties and arguments as needed. Provide a new name
for the copy that identifies it meaningfully.
Creating a job, page 375, provides instructions for creating new jobs, and the Documentum System
Object Reference manual contains a description of the dm_job object’s properties. You can create or
copy a job using Documentum Administrator.
344 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
The best way to do this is to use a Documentum client to recreate the object metadata and then
use a DFC session on the server machine to restore the content.
If you need to restore renditions of the document pages manually, use an addRendition method.
You can restore documents that have only one content file using the client’s Import function if
the content files are directly accessible by the client. Because the content files restored from file
system backups are written to the server storage areas, you must either directly access those
directories from the client or copy the restored files to a network disk and import them from there.
If the document has multiple pages, use DFC methods to restore it.
Arguments
Table 100, page 345, lists the arguments for the tool.
directory_path/file_name
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 345
Methods and Jobs
Report sample
The following sample report describes a single-page Word document with a PDF rendition.
090015b4800004f1 /roger/research/newproject_2
roger 6/16/95 20:00:47 1.7 msw6 0
/u120/install/dmadmin/data/rogbase2/content_storage_01
/000015b4/80/00/02/52.txt
346 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
Group Rename
The Group Rename tool renames repository groups. This tool works in conjunction with
Documentum Administrator. To rename a group, you must use the Groups pages in Documentum
Administrator to identify the group and its new name. Documentum Administrator offers you two
options for actually executing the rename operation:
• Running the Group Rename tool immediately after you identify the new name
• Queuing the operation until the next scheduled execution of the Group Rename tool
You cannot use a set method to change a group name. You must go through Documentum
Administrator and either a manual or automatic Group Rename execution to change a group name.
The Group Rename tool generates a report that lists the changes made to the repository objects for the
group rename. The report is saved in the repository in /System/Sysadmin/Reports/GroupRename.
The tool is installed in the inactive state.
Documentum Administrator User Guide contains the instructions on changing the method name.
Arguments
Dm_LDAPSynchronization
The dm_LDAPSynchronization tool finds the changes in the user and group information in an LDAP
directory server that have occurred since the last execution of the tool and propagates those changes
to the repository. If necessary, the tool creates default folders and groups for new users. If there are
mapped user or group properties, those are also set.
The tool can:
• Import new users and groups in the directory server into the repository
• Rename users in the repository if their names changed in the directory server
• Rename groups in the repository if their names changed in the directory server
• Inactivate users in the repository that if they were deleted from the directory server.
When using iPlanet, you must enable the changelog feature to use the inactivation operation.
Instructions for enabling the changelog feature are found in the iPlanet documentation.
The behavior of the tool is determined by the property settings of the dm_ldap_config object. The tool
has four arguments that you can use to override the property settings controlling which operations
the tool performs. These are listed in Table 101, page 348.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 347
Methods and Jobs
The dm_LDAPSynchronization tool requires the Java method server. Ensure that the Java method
server in your Content Server installation is running.
The dm_LDAPSynchronization tool generates a report that is saved in the repository in
/System/Sysadmin/Reports/LDAPSynchronization. The tool is installed in the inactive state. After it
is activated, it is executed once a day at 4 a.m. by default. Before you set it to the active state, you
must define the ldap config object for the repository.
From Content Server 7.x versions, return codes of the dm_LDAPSynchronization job have been
modified as follows:
• SYNC RETURN SUCCESS = 0
• SYNC RETURN FAILURE = -1
• SYNC RETURN WARNING = 1
Arguments
Table 101, page 348, describes the arguments for the tool.
348 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 349
Methods and Jobs
You can execute the dm_LDAPSynchronization tool manually from the command line. The syntax is
java com.documentum.ldap.LDAPSync -docbase_name repositoryname -user_name
superuser_login -method_trace_level integer -full_sync true
where repositoryname is the name of the repository, superuser_login is the login for a Superuser, and
integer is the required trace level for the method.
Use the LDAP server’s object name to identify the server in the -source_directory argument. If you
want to identify multiple servers, use the following syntax:
ldap_config_obj_name+ldap_config_obj_name{+ldap_config_obj_name}
where ldap_config_object_name is the object name value of the ldap config object for the LDAP
directory server. For example:
ldap_engr1+ldap_engr2+ldapQA
Log Purge
The Log Purge tool deletes old log files. Table 102, page 350, lists the log files deleted by Log Purge.
350 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
Arguments
Table 103, page 351, lists the arguments for the tool.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 351
Methods and Jobs
Guidelines
Your business rules will determine how long you keep old log files and result log files. However, we
recommend that you keep them at least 1 month as you may need them to debug a problem or to
monitor the result of a method or job.
We recommend that you run this tool daily. This will ensure that your repository never has log files
older than the number of days specified in the cutoff_days argument.
Report sample
The following is a sample of a Log Purge report. Its start_date property is set to June 3, 1996. The
cutoff_days argument is set to 30 so that all logs older than 30 days will be deleted. The report looks
for server and connection broker logs, session logs, and result logs from method objects and job
objects (older than 30 days) and destroys them.
LogPurge Report For DocBase boston2
As Of 7/25/96 7:18:09 PM
Parameters for removing Logs:
-----------------------------
- Inbox messages will be queued to boston2
- Logs older than 30 days will be removed...
Looking for server and connection broker logs in the log
location...
Log Location: log
Log Location File Path: /u106/dm/dmadmin/dba/log
Changing directory to server log location:
/u106/dm/dmadmin/dba/log
Looking for session logs...
The top-level session log directory is:
/u106/dm/dmadmin/dba/log/00000962
Changing directory to:
/u106/dm/dmadmin/dba/log/00000962/boston2
Removing /u106/dm/dmadmin/dba/log/00000962/
boston2/01000962800008be
Removing /u106/dm/dmadmin/dba/log/00000962/
boston2/01000962800008e0
Removing /u106/dm/dmadmin/dba/log/00000962/
boston2/0100096280000904
Removing /u106/dm/dmadmin/dba/log/00000962/
boston2/0100096280000e28
Removing /u106/dm/dmadmin/dba/log/00000962/
boston2/0100096280000e72
Removing /u106/dm/dmadmin/dba/log/00000962/
boston2/0100096280000ed7
Changing directory to:
352 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
/u106/dm/dmadmin/dba/log/00000962/dmadmin
Removing /u106/dm/dmadmin/dba/log/00000962/
dmadmin/01000962800008b9
Removing /u106/dm/dmadmin/dba/log/00000962/
dmadmin/01000962800008ba
Removing /u106/dm/dmadmin/dba/log/00000962/
dmadmin/01000962800008b7
Removing /u106/dm/dmadmin/dba/log/00000962/
dmadmin/01000962800008b8
Changing directory to:
/u106/dm/dmadmin/dba/log/00000962/tuser3
Removing /u106/dm/dmadmin/dba/log/00000962/tuser3/
01000962800008fd
Changing directory to:
/u106/dm/dmadmin/dba/log/00000962/tuser1
Changing directory to:
/u106/dm/dmadmin/dba/log/00000962/agentexec
Removing /u106/dm/dmadmin/dba/log/00000962/agentexec/
agentexec.log.save.06.11.96.09.43.37
Changing directory to:
/u106/dm/dmadmin/dba/log/00000962/tuser4
Removing /u106/dm/dmadmin/dba/log/00000962/tuser4/
01000962800008fe
Removing /u106/dm/dmadmin/dba/log/00000962/tuser4/
0100096280000900
Removing /u106/dm/dmadmin/dba/log/00000962/tuser4/
0100096280000902
Removing /u106/dm/dmadmin/dba/log/00000962/tuser4/
0100096280000944
Removing /u106/dm/dmadmin/dba/log/00000962/tuser4/
0100096280000947
Removing /u106/dm/dmadmin/dba/log/00000962/tuser4/
0100096280000948
Removing /u106/dm/dmadmin/dba/log/00000962/tuser4/
0100096280000949
Removing /u106/dm/dmadmin/dba/log/00000962/tuser4/
010009628000094a
Removing /u106/dm/dmadmin/dba/log/00000962/tuser4/
010009628000094d
Removing /u106/dm/dmadmin/dba/log/00000962/tuser4/
010009628000094e
Removing /u106/dm/dmadmin/dba/log/00000962/tuser4/
0100096280000955
Removing /u106/dm/dmadmin/dba/log/00000962/tuser4/
trace.tmp
Changing directory to:
/u106/dm/dmadmin/dba/log/00000962/tuser2
Removing /u106/dm/dmadmin/dba/log/00000962/tuser2/
0100096280000e73
Changing directory to:
/u106/dm/dmadmin/dba/log/00000962/sysadmin
Changing directory to:
/u106/dm/dmadmin/dba/log/00000962/tuser5
Looking for result logs from dm_method objects...
Destroying Result.users_logged_in object
Destroying Result.users_logged_in object
Destroying Result.dmclean object
Destroying Result.dmclean object
Destroying Result.dmclean object
Destroying Result.dmclean object
Destroying Result.users_logged_in object
Destroying Result.users_logged_in object
Looking for result logs from dm_job objects...
Destroying 06/01/96 11:40:27 boston1 object
Destroying 05/31/96 11:40:41 boston1 object
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 353
Methods and Jobs
Queue Management
The Queue Management Tool deletes dequeued Inbox items. Whenever an item is queued to a user’s
Inbox, an object of type dmi_queue_item is created for that queued item. When users forward or
otherwise remove an item from their Inboxes, the corresponding dmi_queue_item object is marked
dequeued, but it is not removed from the repository. If these dequeued items are not removed,
the tables for the dmi_queue_item type grow quite large, and performance degrades when users
access their Inboxes. The Queue Management tool automates the task of removing these unneeded
dmi_queue_item objects.
The cutoff_days and custom_predicate arguments determine which dmi_queue_items are removed.
The cutoff_days argument specifies the age of the objects you want to delete. The custom_predicate
argument is applied to those items meeting the age requirement, allowing you to delete all or only
some of them. For example, the tool could delete all dequeued dmi_queue_items that are older
than 30 days and were queued to a specific user.
The tool generates a status report that provides you with a list of the deleted dmi_queue_items. The
report is saved in the repository in /System/Sysadmin/Reports/QueueMgt.
If there is an error in the tool’s execution, an email and Inbox notification is sent to the user specified
by the -queueperson argument.
The Queue Management tool is installed in the inactive state.
354 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
Arguments
Table 104, page 355, lists the arguments for the tool.
Note: The tool creates a base qualification that contains two conditions:
• delete_flag = TRUE
• dequeued_date = value (computed using cutoff_days argument)
Any qualification you add is appended to the base qualification.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 355
Methods and Jobs
Guidelines
Dequeued items are the result of moving objects out of an inbox. Objects are placed in inboxes by
workflows, event notifications, archive and restore requests, or explicit queue methods. Objects are
moved out of an inbox when they are completed or delegated.
You must decide if there are any reasons to keep or maintain dequeued items. For example, you
may want to keep dequeued items for auditing purposes. If so, leave this tool inactive or set the
cutoff_days argument to a value that will save the dequeued items for a specified length of time.
After you have made your decisions, formulate a scheduling plan.
Note: The first time you execute the Queue Management tool, it may take a long time to complete if
dequeued items have never been deleted before.
Report sample
The Remove Expired Retention Objects (RemoveExpiredRetnObjects) tool removes objects from the
repository whose content, stored in EMC Centera storage area, has an expired retention date. The
tool does not remove the actual content files or the associated content objects.
The tool invokes the CHECK_RETENTION_EXPIRED administration method to determine
which SysObjects to remove from the repository. By default, the tool operates only on objects
stored in EMC Centera storage areas that require a retention date. You can also direct the tool to
operate on EMC Centera storage areas that allow but do not require a retention date by setting the
INCLUDE_ZERO_RETENTION_OBJECTS argument. The tool never includes objects stored in
EMC Centera storage areas that do not allow retention periods. Refer to the guidelines for more
information.
After the tool runs the method to find the objects, it uses a destroy method to remove them from
the repository.
356 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
The tool generates a status report that provides you with a list of the deleted objects. The report is
saved in the repository in /System/Sysadmin/Reports/RemoveExpiredRetnObjects. For each deleted
object, the report lists the following properties:
• r_object_id
• object_name
• a_storage_type
• r_creation_date
• retention_date
The retention_date property is a computed property.
The tool is installed in the inactive state.
Arguments
Table 105, page 357, describes the arguments for the tool.
Guidelines
A EMC Centera or NetApp SnapLock storage area can have three possible retention period
configurations:
• The storage area may require a retention period.
In this case, the a_retention_attr name property is set and the a_retention_attr_req is set to T.
• The storage area may not allow a retention period.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 357
Methods and Jobs
In this case, the a_retention_attr name property is not set and the a_retention_attr_req is set to F.
• The storage area may allow but not require a retention period.
In this case, the a_retention_attr name property is set , but the a_retention_attr_req is set to F.
By default, the method does not include objects whose content has a 0 retention period because the
assumption is that such content is meant to be kept forever. However, in a storage area that allows
but does not require a retention period, a 0 retention period can be result from two possible causes:
• The user deliberately set no retention period, and consequently, the server set the retention
period to 0
• The user specified a retention date that had already elapsed. When this occurs, the server sets the
retention period to 0.
Because the meaning of 0 is ambiguous in such storage areas, the tool supports the
INCLUDE_ZERO_RETENTION_OBJECTS argument to allow you to include content with a zero
retention in storage areas that allow but do not require a retention period.
If you set INCLUDE_ZERO_RETENTION_OBJECTS to T, when the tool examines objects in storage
areas that allow but do not require a retention period and it will remove from the repository any
object with an expired or zero retention period. the tool does not remove the actual content files or
associated content objects. (You must run dmclean to remove those.)
The Documentum Content Server DQL Reference manual contains information on the underlying
method.
Report sample
Rendition Manager
The Rendition Manager tool removes unwanted renditions of versioned documents. A rendition is
a copy of a document’s content in a different format than the original. Renditions, like the original
content files, are stored in storage areas. Over time, unneeded renditions from previous versions
358 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
of documents can take up noticeable amounts of disk space. (For information about renditions,
refer to Content Server Fundamentals.)
The tool’s arguments define which renditions are removed. The tool can delete renditions based
on their age, format, or source (client- or server-generated). The tool removes the content objects
associated with unwanted renditions. The next execution of the Dmclean tool automatically removes
the renditions’ orphaned content files (assuming that Dmclean’s clean_content argument is set to
TRUE).
Note: Renditions with the page modifier dm_sig_template are never removed by Rendition Manager.
These renditions are electronic signature page templates; they support the electronic signature feature
available with Trusted Content Services.
The report generated by the tool lists the renditions targeted for removal. The report is saved in the
repository in /System/Sysadmin/Reports/RenditionMgt.
The Rendition Manager tool is installed in the inactive state.
Arguments
Table 106, page 359, describes the arguments for the Rendition Management tool.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 359
Methods and Jobs
all
none
or a list of formats
360 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
all
none
or a list of formats
Guidelines
The Rendition Management tool removes all renditions that meet the specified conditions and are
older than the specified number of days. For example, if you execute this tool on July 30 and the
-cutoff_days argument is set to 30, then all renditions created or modified prior to June 30 are
candidates for deletion. On July 31, all renditions created or modified before July 1 are removed.
We recommend that you run this tool with the -report_only argument set to TRUE first to determine
how much disk space renditions are using and what type of renditions are in the repository. With
-report_only set to TRUE, you can run the tool several times, changing the other arguments each
time to see how they affect the results.
We recommend that you have a thorough knowledge of how and when renditions are generated
before removing any. For example, client renditions, such as those added explicitly by an
Addrendition method, may be difficult to reproduce if they are deleted and then needed later.
Content Server renditions are generated on demand by the server and are generally easier to
reproduce if needed.
To ensure that your repository never has rendition files older than the number of days specified in
the -cutoff_days argument, run this tool daily.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 361
Methods and Jobs
Note: The first time you execute the Rendition Management tool, it may take a long time to complete
if the old renditions have never been deleted before.
Report sample
362 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
Only repositories where you have installed Site Caching Services 5.2 or above contain this job and its
associated method. It is similar to the Log Purge job.
Files are considered old and are deleted if they were modified prior to a user-defined cutoff date. By
default, the cutoff date is 30 days prior to the current date. For instance, if you run SCS Log Purge on
July 27, all log files that were modified before June 28 are deleted. You can change the cutoff interval
by setting the -cutoff_days argument for the tool.
SCS Log Purge generates a report that lists all directories searched and the files that were deleted.
The report is saved in the repository in /System/Sysadmin/Reports/SCSLogPurge.
The SCS Log Purge tool is installed in the inactive state.
The State of the Repository Report tool generates a report to help you troubleshoot repository
problems. A partial list of the information included in the report is:
• The property values in the docbase config object
• Server initialization information from the server.ini file
• The directory paths defined by the location objects in the server config object
• Version numbers of your server, RDBMS, and operating system
The report is saved in the repository in /System/Sysadmin/Reports/StateOfDocbase.
The State of the Repository tool is installed in the active state.
Arguments
Report sample
Here is a sample report from the State of the Repository tool. The example shows all of the sections in
the tool’s report, but truncates entries in some sections in the interests of space.
StateOfDocbase Report For Docbase dm_master As Of 4/12/1999 09:26:32
Docbase Configuration:
Description:The Test Repository
Federation Name:<dm_master is not in a Federation>
Docbase ID:22000
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 363
Methods and Jobs
Security Modeacl
Folder Security:On
Authorization Protocol:<Not defined>
Database:SQLServer
RDBMS Index Store:<Not defined>
Mac Access Protocol:none
Server Configuration:
Server Name:dm_master
Server Version:4.0 Win32.SQLServer7
Default ACL:Default ACL of User
Host Name:bottae1
Install Owner:dmadmin
Install Domain:bottae1
Operator Name:dm_master
Agent Launcher:agent_exec_method
Checkpoint Interval:300 seconds
Compound Integrity:On - Server enforces integrity for virtual documents
Turbo Backing Store:filestore_01
Rendition Backing Store:<Not defined>
Web Server Location:BOTTAE1
Web Server Port:80
Rightsite Image:/rs-bin/RightSit
Server Locations:
events_locationD:\DOCUMENTUM\share\data\events
common_locationD:\DOCUMENTUM\share\data\common
temp_locationD:\DOCUMENTUM\share\temp
log_locationD:\DOCUMENTUM\dba\log
system_converter_location D:\DOCUMENTUM\product\4.0\convert
user_converter_location<Not defined>
verity_locationD:\DOCUMENTUM\product\4.0\verity
user_validation_location <Not defined>
assume_user_locationD:\DOCUMENTUM\dba\dm_assume_user.exe
change_password_locationD:\DOCUMENTUM\dba\dm_change_password.exe
signature_chk_locD:\DOCUMENTUM\dba\dm_check_password.exe
stage_destroyer_location<Not defined>
Set Information:
CLASSPATH=C:\PROGRA~1\DOCUME~1\DFCRE40\lib\dfc.jar;C:\PROGRA~1\DOCUME~1\Classes;
C;\Netscape\ldapjava\packages
COLORS=white on blue
COMPUTERNAME=BOTTAE1
ComSpec=C:\WINNT\system32\cmd.exe
CVSROOT=godzilla.documentum.com:/docu/src/master
CVS_SERVER=cvs1-9
DM_HOME=D:\DOCUMENTUM\product\4.0
DOCUMENTUM=D:\DOCUMENTUM
HOMEDRIVE=C:
HOMEPATH=\
LOGONSERVER=\\BOTTAE1
NUMBER_OF_PROCESSORS=1
OS=Windows_NT
Os2LibPath=C:\WINNT\system32\os2\dll;
Path=D:\DOCUMENTUM\product\4.0\bin;C:\PROGRA~1\DOCUME~1\DFCRE40\bin;
D:\DOCUMENTUM\product\3.1\bin;C:\WINNT\system32;C:\WINNT;
c:\program files\maestro.nt;C:\PROGRA~1\DOCUME~1\Shared;
c:\SDK-Java.201\Bin;c:\SDK-Java.201\Bin\PackSign;c:\Winnt\Piper\dll;
c:\Program Files\DevStudio\SharedIDE\bin;
c:\Program Files\DevStudio\SharedIDE\bin\ide;D:\MSSQL7\BINN;
c:\cvs1.9;c:\csh\bin;c:\csh\samples;C:\DOCUME~1\RIGHTS~1\product\bin
PATHEXT=.COM;.EXE;.BAT;.CMD
PROCESSOR_ARCHITECTURE=x86
PROCESSOR_IDENTIFIER=x86 Family 5 Model 2 Stepping 5, GenuineIntel
PROCESSOR_LEVEL=5
364 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
PROCESSOR_REVISION=0205
PROMPT=$P$G
SystemDrive=C:
SystemRoot=C:\WINNT
TEMP=C:\TEMP
TMP=C:\TEMP
USERDOMAIN=BOTTAE1
USERNAME=dmadmin
USERPROFILE=C:\WINNT\Profiles\dmadmin
windir=C:\WINNT
adm_turbo_sizedbo 1:1:1
dm_federation_logdbo 15:7:3
dm_portinfodbo 1:1:1
dm_queuedbo 1:1:1
Number of Documents by Type:
crtext 11
mdoc55 9
maker55 5
<NO CONTENT> 2
msw8template 2
vrf 2
wp6 2
excel5book 1
excel8book 1
excel8template 1
ms_access7 1
ms_access8_mde 1
msw6 1
msw8 1
powerpoint 1
ppt8 1
ppt8_template 1
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 365
Methods and Jobs
ustn 1
Total: -------------
44
Number of Documents by Storage Area:
filestore_01 40
dm_turbo_store 4
Total: -------------
44
Content Size(KB) by Format:
FormatLargestAverageTotal
mdoc5515885772
crtext 10115436
text19621254
vrf 192119238
maker553722114
FormatLargestAverageTotal
Content Size(KB) Summary:
filestore_01
Largest Content: 196
Average Content: 31
Total Content: 2,092
dm_turbo_store
Largest Content: 8
Average Content: 5
Total Content: 34
------------------------
GTotal Content: 2,127
GTotal Rendition: (0.00% of total content)
Number of Users and Groups:
Named Users 4
Groups 2
ACL Summary:
Number of ACLs: 33
Number of Internal ACLs: 29
Number of External System ACLs: 4
Number of External Private ACLs:
Swap Info
Note: The Swap Info tool is not installed if Content Server is running on an HPUX machine.
The Swap Info tool uses operating system commands to retrieve information about swap space usage
and availability. The tool generates a report but does not issue warnings because there is no realistic
way to determine if the swap space is too low as this determination has too many variables. The
status report is saved in the repository in /System/Sysadmin/Reports/SwapInfo.
366 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
Note: If the tool was run at a remote distributed site, the report name will have the site’s server
config name appended. For example, if London is a remote site, its report would be found in
/System/Sysadmin/Reports/SwapInfoLondon.
The Swap Info tool is installed in the active state.
Arguments
Table 108, page 367, describes the arguments for the tool.
Report sample
The format of the report generated by Swap Space Info varies by operating system. Here is a sample
of a report run against the Solaris operating system:
SwapInfo Report For DocBase boston2
As Of 7/26/96 4:00:59 PM
Summary of Total Swap Space Usage and Availability:
total: 59396k bytes allocated + 49216k reserved =
108612k used, 287696k available
Swap Status of All Swap Areas:
swapfile dev swaplo blocks free
/dev/dsk/c0t3d0s1 32,25 8 717688 626640
Report End 7/26/96 4:00:59 PM
Update Statistics
The Update Statistics tool generates current statistics for the RDBMS tables owned by the repository
owner. Generating statistics is always useful, particularly after you perform load operations or if
table key values in the underlying RDMBS tables are not normally distributed.
When you run the tool against an Oracle or Sybase database, the tool uses a file that
contains commands to tweak the database query optimizer. For Oracle, the file is named
custom_oracle_stat.sql. For Sybase, it is named custom_sybase_stat.sql. The file is stored in
%DOCUMETNUM %\dba\config\repository_name ($DOCUMETNUM /dba/config/repository_name).
You can add commands to this file. However, do so with care. Adding to this file affects query
performance. If you do add a command, you can use multiple lines, but each command must end
with a semi-colon (;). You cannot insert comments into this file.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 367
Methods and Jobs
The -dbreindex argument controls whether the method also reorganizes database tables in addition
to computing statistics. For SQL Server and DB2, you can set the argument to either READ or FIX.
Setting it to READ generates a report on fragmented tables but does not fix them. Setting it to FIX
generates the report and fixes the tables. (In either case, the report is included in the overall job report.)
For Sybase, the -dbreindex argument is only effective if set to FIX, to reorganize the tables. Setting it
to READ does not generate a report on Sybase. If you include the -dbreindex argument set to FIX, the
repository owner (the account under which the tool runs) must have sa role privileges in the database.
The -dbreindex argument has no effect on a Oracle database.
The tool generates a report that is saved in the repository in System/Sysadmin/Reports/UpdateStats.
The exact format of the report varies for each database.
The Update Statistics tool is installed in the active state, running once a week. Because this tool can be
CPU and disk-intensive, it is recommended that you run the tool during off hours for database use.
Consult with your RDBMS DBA to determine an optimal schedule for this tool.
Arguments
Table 109, page 368, lists the arguments for the tool.
368 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
Guidelines
When the job is run with -dbreindex set to FIX, the report will say:
-dbreindex FIX. If rows appear below, the corresponding
tables have been reindexed.
Change to -dbreindex READ if you do not want to reindex
in the future.
Report sample
The Update Statistics report tells you when the tool was run and which tables were updated. The
report lists the update statistics commands that it runs in the order in which they are run. Here is a
sample of the report:
Update Statistics Report:
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 369
Methods and Jobs
A complimentary application, AMP is provided that collates usage data from multiple global
registries and can generate a variety of reports and documents about software usage. Appendix F,
AMP and Usage Tracking, provides more details about this feature.
Content Server tracks software usage by recording login times. The Content Server global registry
contains a registered table, dm_usage_log. This table contains a record of the first and the latest login
time for each user of each application that connects to Content Server. A user, dm_report_user, was
created when the global registry was configured. This user has read-only access to the dm_usage_log
table. The initial password for dm_report_user is the global registry user password.
The dm_usageReport job runs monthly to generate a usage report. The Viewing job reports, page
392 section contains the information to view the report. You can also generate a current report. The
Running jobs, page 392 section contains the information to generate a current report.
The information stored in dm_usage_log can also be exported from the global registry by using a
utility program. Execute the following Java utility:
java com.documentum.server.impl.method.license.ExportUsageLog
repository dm_report_user password
Where repository is the global registry name and password is the dm_report_user password. Use
your OS shell tools to redirect the output to a file.
The UserChgHomeDb tool changes a user’s home repository. This job works in conjunction with
Documentum Administrator. To change a user’s home repository, you must connect to the repository
using Documentum Administrator and make the change through the Users pages. Documentum
Administrator gives you two options for performing the change:
• Execute the UserChgHomeDb tool immediately after you save the change
• Queue the change, to be performed at the next scheduled execution of UserChgHomeDb.
You cannot change a user’s home repository using a set method. When a user’s home repository
changes, the change must be cascaded to several other objects that make use of it.
The UserChgHomeDb tool generates a report that lists the objects changed by the operation. The
report is saved in the repository in /System/Sysadmin/Reports/UserChgHomeDb.
The User Chg Home Db tool is installed in the inactive state.
Arguments
370 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
User Rename
The User Rename tool changes a user’s repository name. This job works in conjunction with
Documentum Administrator. To change a user’s name, you must connect to the repository using
Documentum Administrator and make the change through the Users screens. Documentum
Administrator gives you two options for performing the change:
• Execute the User Rename tool immediately after you save the change
• Queue the change, to be performed at the next scheduled execution of User Rename.
You cannot change a user’s name using the Set method. When a user’s name changes, the change
must be cascaded to many other objects that make use of it.
The User Rename tool generates a report that lists the objects changed by the operation. The report is
saved in the repository in /System/Sysadmin/Reports/UserRename.
The User Rename tool is installed in the inactive state.
Arguments
Report sample
This sample report was generated when the tool was run in Report Only mode.
Job: dm_UserRename
Report For Repository example.db_1;
As Of 3/6/2000 12:00:27 PM
==============3/6/2000 12:00:28 PM===============
Reporting potential changes in repository example.db_1
when renaming user 'dm_autorender_mac' to 'test'.
The following user rename options were specified:
Execution Mode: Report Only
Checked out Objects: Unlock
WARNING: There are 15 sessions currently open. It is
recommended that user rename is performed in single
user connection mode.
================== DM_USER OBJECT ================
Object type : dm_user
Object id : 1100162180000103
Name : dm_autorender_mac
propertys referencing user dm_autorender_mac: user_name
-----------------------------------------------------
==== ACL Objects referencing user dm_autorender_mac ===
-----------------------------------------------------
Object type : dm_acl
Object id : 450016218000010c
Name : dm_450016218000010c
propertys referencing user dm_autorender_mac:
owner_name
-----------------------------------------------------
**** Number of ACL objects affected: 1
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 371
Methods and Jobs
372 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
Version Management
The Version Management tool removes unwanted versions of documents from the repository. This
tool automates the destroy and prune methods. (Refer to Content Server Fundamentals for a discussion
of how versioning works.) The tool removes only the repository object. It does not remove content
files associated with the object. To remove content files, use the Dmclean tool, described in Dmclean,
page 334.
The arguments you define for the tool determine which versions are deleted. For example, one
argument (keep_slabels) lets you choose whether to delete versions that have a symbolic label.
Another argument (custom_predicate) lets you define a WHERE clause qualification to define which
versions are deleted. (Refer to the Content Server DQL Reference Manual for instructions on writing
WHERE clauses.)
The Version Management tool generates a status report that is saved in the repository in
/System/Sysadmin/Reports/VersionMgt.
The Version Management tool is installed in the inactive state.
Arguments
Table 110, page 373, lists the arguments for the tool.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 373
Methods and Jobs
Guidelines
We recommend that you have a thorough knowledge of what prior versions mean for your business
requirements. If you need to keep all versions to satisfy auditing requirements, do not run this tool at
all. Individual users or departments may also have needs and requirements for older versions. Needs
for disk space may also affect the decisions about how many older versions to keep.
Run this tool initially with the -report_only argument set to TRUE to determine how much disk
space versions are using and how many versions are in the repository. With -report_only set to
TRUE, you can run the report several times, changing the other arguments each time to see how
they affect the results.
If you are using the -cutoff days argument to ensure that your repository never has only versions
older than a specified number of days, run this tool daily. If you are using -keep_latest argument
to keep only a specified number of versions, you can run this tool less frequently. The frequency
will depend on how often new versions are generated (thereby necessitating the removal of old
versions to keep the number of versions constant).
You can use this tool for one-time events also. For example, after a project is completed, you might
remove all older versions of the project’s documentation. (You must set the arguments appropriately
for such occasions and reset them after the job is finished.)
374 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
Note: The first execution of the tool may take a long time to complete if the old versions have never
been deleted before.
Report sample
WfmsTimer (dm_WfmsTimer)
The WfmsTimer tool checks running workflows for expired activity timers. Workflow designers can
set timers that send a message to the workflows supervisor when an activity fails to start or complete
within a given time frame. The tool also sends an email message to the activity’s performer. The
WfmsTimer tool is installed in the inactive state. When activated, the tool runs every hour by default.
Creating a job
Before you create a job, determine which method the job runs or create a Docbasic script, Java
method, or other program to perform the task. If you create your own script, method, or program,
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 375
Methods and Jobs
you must then create a method object referencing the program. The Methods, page 291 section
contains the information on creating method objects.
The New Job and Job Properties pages are identical for standard jobs, replication jobs, records
migration jobs, remove expired retention objects, BOCS caching jobs, and job sequences. The
following topics contain the instructions on creating a specific type of job:
• Creating replication jobs, page 381
• Creating records migration jobs, page 386
• Creating remove expired retention objects jobs, page 387
• Creating BOCS caching jobs, page 388
• Creating job sequences, page 389
376 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
The default end date is 10 years from the current date and time.
After Specifies the number of invocations after which the job
becomes inactive.
Documentum Administrator User Guide contains the instructions on changing a job schedule.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 377
Methods and Jobs
378 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
If you assign a user-defined method to a job, that method must contain the code to generate a job
report. If you turn on tracing, only a DMCL trace is generated.
The Locating a method for a job, page 380 section contains the
instructions to locate a method.
Arguments Specifies the method arguments.
• Repository name
• Job ID
• Trace level
Documentum Administrator User Guide contains the instructions on assigning a method to a job.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 379
Methods and Jobs
380 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
The From Source tab displays when you are creating or modifying a replication job and is used to
select the source repository for the replication job. The source repository is the repository from
which objects are replicated.
The Creating replication jobs, page 381 section contains the instructions on how to access the New
Replication Job - Source page and create new replication jobs.
Documentum Administrator User Guide contains the instructions on selecting the source repository
for a replication job.
The To Target tab displays when you are creating or modifying a replication job and is used to
select the target repository for a replication job. The target repository is the repository to which
objects are replicated.
The Creating replication jobs, page 381 section contains the instructions on how to access the New
Replication Job - To Target page and create new replication jobs.
Documentum Administrator User Guide contains the instructions on selecting the target repository.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 381
Methods and Jobs
The Replication Options tab displays when you are creating or modifying a replication job pages are
is used to set replication job options.
The Creating replication jobs, page 381 section contains the instructions on how to create new
replication jobs.
382 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
You can choose a replication source or target folder on the Choose a folder page.
Documentum Administrator User Guide contains the instructions on choosing a folder.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 383
Methods and Jobs
On the Choose a storage page, select a storage area and then click OK.
On the Replication Options tab, you select a replication mode and a security mode.
The replication modes are:
• Federated mode, which can be used whether or not the source and target repositories are in a
federation.
• Non-federated mode, which is named external replication mode in the Documentum Platform
and Platform Extensions Installation Guide. This mode can be used whether or not the source and
target repositories are in a federation.
The security modes determine how a permission set is assigned to replica objects in the target
repository. The security modes are:
• Preserve
• Remap
Depending on whether you selected federated or non-federated (external) mode, the two security
modes behave differently and replica objects are stored differently, as described in Table 116, page 385.
Documentum Platform and Platform Extensions Installation Guide contains information on the two
replication modes.
384 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
If the storage area does not exist in the target repository, replica
objects are stored in the default storage area designated in the
replication job.
Non-Federated and Preserve • If the permission set of a replicated object exists in the target
repository, the replica is assigned that permission set.
If the storage area does not exist in the target repository, replica
objects are stored in the default storage area designated in the
replication job.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 385
Methods and Jobs
If the storage area does not exist in the target repository, replica
objects are stored in the default storage area designated in the
replication job.
Non-Federated and Remap • The replica is assigned the default replica permission set
designated in the replication job.
386 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
Use the Rules tab on the New Records Migration Job - Rules or Job Properties - Rules page to define
which documents are migrated by a records migration job.
Documentum Administrator User Guide contains the instructions on setting the rules of a records
migration job.
Use the Selection Criteria page to define selection criteria for a records migration job. At least one
criterion must be selected. The four primary choices are not mutually exclusive; you can select any
combination of the following:
• Select documents by location
• Select documents by age
• Select documents by attributes
• Select documents by version
• Search all versions
Documentum Administrator User Guide contains the instructions on defining selection criteria.
Set the version criteria for a records migration job on the Define Version page. At least one version
criterion must be selected.
Documentum Administrator User Guide contains the instructions on setting the version criteria for a
records migration job.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 387
Methods and Jobs
The caching rules specify the caching options and the content to be selected for caching to the BOCS
servers.
The Creating BOCS caching jobs, page 388 section contains the instructions on how to create a BOCS
caching job.
388 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 389
Methods and Jobs
Use the Connection Info tab on the New Job Sequence or Job Properties page to select repositories
and to designate the jobs to run in a job sequence.
390 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
Click Edit to designate the job dependencies for each job that
must run after another job completes. Select the listed job(s)
that must run before the current job runs, then click OK. Each
job sequence must include one job that has no predecessors.
This job is the first job to run. The jobs in the sequence run in
parallel except when a job has a predecessor.
To access the Choose jobs page, click Add in the Job Sequence Information section on the Connection
Info tab of the New Job Sequence or Job Properties page.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 391
Methods and Jobs
Documentum Administrator User Guide contains the instructions on selecting jobs for a job sequence.
You can designate job dependencies in a job sequence. A dependency defines which job(s) must run
before the current job is run.
Access the Choose jobs dependency page by clicking Edit in the Job Sequence Information section on
Connection Info tab of the New Job Sequence or Job Properties page.
Note: Each job sequence must include one job that has no predecessors. This job is the first to run.
The jobs in the sequence run in parallel except when a job has a predecessor.
Documentum Administrator User Guide contains the instructions on setting job dependencies.
Running jobs
Jobs typically run at predetermined intervals. The jobs that exist in all repositories have default
schedules when they are created. The Changing the schedule of a job, page 377 section contains
the instructions on modifying a job’s schedule.
Most jobs pass standard arguments to the method executed by the job. The arguments are set on
the Method tab for each job, and can be modified in most cases.
You can run a job manually (at a time other than the scheduled run time). Note that a job invoked in
this fashion runs when the agent exec process starts the job, not when you click Run. The agent exec
process polls the repository every five minutes, so the start of the job is delayed up to five minutes,
depending on when you clicked Run and when the agent exec process last polled the repository.
Documentum Administrator User Guide contains the instructions on running a job.
392 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
Deleting jobs
Use the instructions in this section to delete a job.
Documentum Administrator User Guide contains the instructions on deleting jobs.
Managing jobs
This section contains information and procedures for managing jobs and job sequences. Included are
the following topics:
• Activating or inactivating a job, page 394
• Disabling all jobs, page 394
• Modifying agent exec behavior, page 394
• Creating and maintaining a repository connection file for job sequences, page 395
• Recovering from a job sequence failure, page 398
• Interpreting a job sequence status report, page 399
• Executing dm_run_dependent_jobs independently, page 399
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 393
Methods and Jobs
When you set a job to inactive, the agent exec process ignores the job when it polls the repository and
the job is never started by agent exec. When you set a job to active, the agent exec examines the job
when it polls the repository and executes the job on the schedule defined in the job.
A job’s activation status is recorded in its is_inactive property. Use Documentum Administrator
to change the status.
A job can be set to inactive automatically if you have set a maximum number of executions for the job.
In such cases, the job is inactivated after the specified number of executions are completed. Similarly,
if you specify an expiration date for a job, it is inactivated on that date.
To disable all job executions, set the agent_launcher property in the server config object to an empty
string ("") and stop and restart the server. Stopping the server stops the current running agent exec
process. When you restart the server, the agent_exec process is not launched.
The agent exec process controls the job execution. It runs continuously, polling the repository at
intervals for jobs to execute. By default, only three jobs are allowed to execute in a polling cycle and
tracing for the process is turned off.
You can change these default parameters, including the polling interval. The behavior is controlled
by command line arguments in the method_verb argument of the method object that invokes the
agent exec process. The arguments can appear in any order on the command line. You must have
Superuser privileges to change the agent_exec_method.
The agent exec process runs continuously, polling the repository at specified intervals for jobs to
execute. The default polling interval is controlled by the setting in the database_refresh_interval key
in the server.ini file. By default, this is set to 1 minute (60 seconds).
To change the polling interval without affecting the database refresh interval, add the
-override_sleep_duration argument with the desired value to the agent_exec_method command line.
Use Documentum Administrator to add the argument to the command line. For example:
.\dm_agent_exec -override_sleep_duration 120
The polling interval value is expressed in seconds (120 is 2 minutes expressed as seconds). The
minimum value is 1 second.
394 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
By default, the agent exec executes up to three jobs in a polling cycle. You can configure only
to a maximum of 500 jobs in a polling cycle. To change the maximum number of jobs that can
run in a polling cycle, add the -max_concurrent_jobs argument with the desired value to the
agent_exec_method method command line. For example:
.\dm_agent_exec -max_concurrent_jobs 5
You can load balance at the job scheduling level. By default, this feature is disabled. Valid values are
either 0 (false) or 1 (true). For example:
.\dm_agent_exec -enable_ha_setup 1
The agent exec always sleeps for 30 seconds between launching jobs. This value can be changed using
an argument. By default, the value is 30 seconds. For example:
.\dm_agent_exec -job_launch_interval 10
Tracing for the agent exec process is turned off by default (trace level = 0). To turn it on, use
Documentum Administrator to add the -trace_level argument to the agent_exec_method method
command line. For example:
.\dm_agent_exec -trace_level 1
Setting the trace level to any value except zero turns on full tracing for the process.
The log file is named agentexec.txt and is stored in the %DOCUMENTUM%\dba\log\repository_
id\agentexec ($DOCUMENTUM/dba/log/repository_id/agentexec) directory.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 395
Methods and Jobs
server_connect_string,[domain],user_name,password
Using this file is optional. If the dm_run_dependent_jobs method does not find a matching entry
in the file or if the file does not exist, the method attempts to use a trusted login to invoke the
sequenced job.
The file is typically maintained by Documentum Administrator when you edit or modify a job
sequence. You can, however, use the dcf_edit utility to edit the file directly. Refer to The dcf_edit
utility, page 396 for instructions.
The only requirement is that the value you define for the server connection string in the file must
match the value specified in the job_docbase_property for the job in the sequence.
You can use commas or backslashes in the values specified for the server connection string, domain,
and user name by escaping them with a backslash. For example, "doe\,john" is interpreted as "doe,
john", and "doe\\susie" is interpreted as "doe\susie".
You cannot use a backslash to escape any characters except commas and backslashes.
The dcf_edit utility allows you to add, remove, or replace entries in a repository connection file. It
also allows you to backup the entire file. The utility is installed with Content Server as a method
implemented using a Java class. The class is:
documentum.ecs.docbaseConnectionFile.DCFEdit
You can run the utility as a method from Documentum Administrator or as a Java command line
utility. Table 119, page 397 lists the arguments accepted by the method or on the command line.
396 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
Argument Description
-server_config server_config_ Identifies the repository to which the utility will connect.
name
This argument is required for Add and Remove operations, but
is invalid for Backup operations.
-login_domain domain_name The domain of the user identified in the -login_user argument
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 397
Methods and Jobs
Argument Description
-f repository_filepath Path to the repository connection file.
• remove
• backup
If the controlling job exits with a status of 1, it typically means that one or more jobs in the sequence
failed to complete successfully. To recover from that situation, take the following steps:
1. Examine the controlling job’s status report to determine which jobs failed.
398 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Methods and Jobs
Use Documentum Administrator to view the job’s status report. Interpreting a job sequence
status report, page 399 describes the entries in the report.
2. Examine the job reports of the failed jobs and the session and repository log files to determine the
cause of the failure.
3. Correct the problem.
4. Run dm_run_dependent_jobs as a method, with the -skip argument, to re-execute the failed jobs.
Executing dm_run_dependent_jobs independently, page 399, describes the arguments that you
can include when you run the method independently of the job.
The dm_run_dependent_jobs method, called by a job sequence’s controlling job, generates a status
report. You can view the status report using Documentum Administrator. Table 120, page 399 lists
the events recorded in the report and describes their format.
You can execute the dm_run_dependent_jobs method independently of the controlling job. Use
Documentum Administrator to run the method manually.
Table 121, page 400, lists the arguments accepted by the method. Some arguments are required
and some are optional.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 399
Methods and Jobs
400 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Chapter 14
Alias Sets
Field Description
Name The name of the alias set.
Description A description of the alias set.
Owner The name of the alias set owner.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 401
Alias Sets
Property Description
Name The name of the alias.
Category The category to which the alias belongs.
Value The value assigned to the alias.
Description A description of the alias.
Documentum Administrator User Guide contains the instructions on viewing or removing aliases.
Field Description
Name The name of the alias.
• Cabinet Path
• Folder Path
• Group
• User
• User or Group
• Unknown
402 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Alias Sets
Field Description
Value The value for the category property. Click Get Value
to select a value from a list of values associated with
the category you previously selected.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 403
Alias Sets
404 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Chapter 15
Formats
Formats
Format objects define file formats. Content Server only recognizes formats for which there is a
format object in the repository. When a user creates a document, the format of the document must
be a format recognized by the server. If the format is not recognized by the server, the user cannot
save the document into the repository.
The Content Server installation process creates a basic set of format objects in the repository. You
can add more format objects, delete objects, or change the properties of any format object. In
Documentum Administrator, all formats are located on the Administration > Formats node.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 405
Formats
• ft_preferred
406 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Formats
Documentum Administrator User Guide contains the instructions on viewing, creating, or modifying
formats.
Deleting formats
You can delete formats. However, you cannot delete a format if the repository contains content
files in that format.
Documentum Administrator User Guide contains the instructions on deleting formats.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 407
Formats
408 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Chapter 16
Types
Type categories
Object types are sorted into the following categories:
• Standard object type
Standard object types are all types that are not aspect, lightweight, or shareable types.
• Aspect property object type
Aspect property object types are internal types used by Content Server and DFC to manage
properties defined for aspects. These types are automatically created and managed internally
when properties are added to aspects. They are not visible to users and user applications.
• Lightweight object type
Lightweight object types are a special type used to minimize the storage footprint for multiple
objects that share the same system information. A lightweight type is a subtype of its shareable
type.
• Shareable object type
Shareable object types are the parent types of lightweight object types. A single instance of a
shareable type object is shared among many lightweight objects.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 409
Types
Lightweight objects are useful for object groups with many identical attribute values. A single copy
of the shared parent object shares all the redundant information among the lightweight objects.
Type properties
Properties are the fields that comprise an object definition and the field values describe individual
instances of the object type. When an object is created, its properties are set to values that describe
that instance of the object type. All properties have a data type that determines what values can be
stored in the property.
Managing types
In Documentum Administrator, types are managed on the Types page under the Administration
> Types node. On the Types page, you can filter types by selecting All, DCTM Types, or Custom
Types from the list box. Types whose names are displayed as underlined links have subtypes. If you
click the name, the subtypes are displayed. To navigate back to a previous list page, click a link in the
breadcrumb at the top of the page. The Category and Parent Type columns only appear on the Types
page if the High-Volume Server license is enabled and the Content Server version is 6 or later.
From the Types page, you can:
• Create, modify, and delete shareable object types.
• Create, modify, and delete lightweight sysobject types.
• Convert heavyweight object types to a shareable object type.
• Convert heavyweight object types to a lightweight sysobject type.
• Convert heavyweight object types to a shareable type and lightweight syobject type.
Assignment policies determine the correct storage area for content files. A new type inherits a default
assignment policy from the nearest supertype in the type hierarchy that has an active assignment
policy associated with it. After the type is created, associate a different assignment policy with the
type.
Documentum Content Server Fundamentals Guide contains more information on types. Documentum
Content Server System Object Reference Guide contains the information on the system-defined object
types, including the properties of each type.
410 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Types
cases, if you later try to add a property to the type with the same name as the deleted property,
you receive an error message.
Any changes made to a type apply to all objects of that type, to its subtypes, and to all objects of any
of its subtypes.
Options are:
• Standard: This is the default and is for heavy
types.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 411
Types
412 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Types
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 413
Types
• Full fulltext
Attribute tab
Attribute Name The name of the attribute. This field is
display-only in modify mode.
Type The property type.
Size The size of the property, if the property is the
String type.
414 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Types
Selecting a type
Documentum Administrator User Guide contains the instructions on selecting types.
Deleting types
You can only remove a user-defined type from the repository if:
• You are the owner of the type or have superuser privileges.
• The type has no subtypes.
• There are no existing objects of that type in the repository.
You cannot remove system-defined types from the repository. If you delete an object type with an
associated assignment policy, the assignment policy is not removed. You can delete it manually.
You cannot delete a shareable type that is shared by a lightweight sysobject. Delete the dependent
lightweight objects first.
Documentum Administrator User Guide contains the instructions on deleting types.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 415
Types
416 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Chapter 17
Storage Management
Storage
The storage area contains information about existing stores and pages for creating various store types.
To access the storage area, select Administration > Storage Management > Storage. The Storage list
page displays with a list of existing stores and location objects. If a storage system complies with
the NFS or UNIX file system or CIFS (on Microsoft Windows) file system protocols and standards,
Documentum can use this storage system. The first ten storage areas in the repository are displayed
in the order in which they were created.
A repository can contain the following storage objects:
Linked Store Linked stores do not contain content, but point to the actual
storage area, which is a file store.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 417
Storage Management
Mount Point Mount point objects represent directories that are mounted
by a client.
External File Store External file stores do not store any content. They point to
the actual file system.
External Free Store External free stores do not store any content. They point to a
CD-ROM or user-defined storage.
For example, the XML file store is an external free store used
specifically to optimize performance with XML content files.
External URL Store External URL stores do not store any content. They point to
a URL.
NetApp SnapLock The NetApp SnapLock Store is a retention store for content
Store that is retained for a specified time. Retention stores are often
used for storing massive amounts of unchanging data, such as
email archives or check images.
EMC Centera Store The EMC Centera Store is a retention store for content that
is retained for a specified time. Retention stores are often
used for storing massive amounts of unchanging data, such as
email archives or check images.
Atmos Store The Atmos store is a storage system comprised of several
distributed services running on hardware nodes connected
via a network. The nodes run a collection of services to store,
retrieve, categorize, and manage the data in the system or
cloud.
ViPR Store ViPR is a software-defined storage platform that abstracts,
pools, and automates a data center’s underlying physical
storage infrastructure. It provides a single control plane to
data center administrators for heterogeneous storage systems.
Distributed Store Distributed stores do not contain content, but point to
component storage areas that store the content.
418 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Storage Management
File stores
A file store is a directory that contains content files. It is the basic storage type of a repository. Each
file store has a corresponding location object. You can create a location object pointing to the file
system directory that corresponds to the file store before creating the file store or you can select
the location while creating the file store. In the latter case, Documentum Administrator creates
the location object for you.
• Thumbnail Content
• Streaming Content
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 419
Storage Management
420 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Storage Management
Space Info tab The Space Info tab only displays for an existing
file store.
Active Space/Files The space used by the file store and the number
of files.
Orphaned Space/Files The amount of orphaned space in the file store
and the number of orphaned files.
Documentum Administrator User Guide contains the instructions on the following:
• Creating, viewing, or modifying file stores
• Moving file store storage area
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 421
Storage Management
This section describes the instructions to configure Data Domain and Isilon NAS file stores.
Before configuring, please ensure the following for Windows:
• Content Server host and NAS storage host should be in same domain.
• Domain Administrator only can install Content Server on the Content Server host.
Note: The data directory must not be a top-level directory on a SAN or NAS device such
as \\ip_address. For SAN or NAS, enter the complete path including a shared device
and at least one level of directory. Here is an example of a valid data directory on a
SAN or NAS device: \\ip_address\Documentum\data. The default data directory is
$DOCUMENTUM/data.
Click Next.
e. Select Yes for the Is this a NAS or SAN device option and click Next.
f. Continue with the options in the Content Server Configuration Program and complete
it. Documentum Platform and Platform Extensions Installation Guide contains the detailed
instructions.
Once the Documentum Content Server Configuration Program is complete, the NFS file store share
is created.
422 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Storage Management
Linked stores
A linked store is a storage area that does not contain content files. Instead, it contains a logical link
to the actual storage area, which is a file store.
Linked stores are not available in a Documentum 6 or later repository. However, linked stores are
available in a 5.3x repository. On Windows hosts, the actual storage area is implemented as a shared
directory. On UNIX and Linux hosts, the linked store contains a logical link to the actual storage area.
Blob stores
The content in a blob store is stored directly in the repository rather than on the host file system of
the server. The content in a blob store is stored in rows in an RDBMS table. The content stored in a
blob store must be less than or equal to 64 KB.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 423
Storage Management
Content stored in a blob store is ASCII or arbitrary sequences of 8-bit characters. This is designated
when creating the blob store. To allow arbitrary sequences of 8-bit characters, you can store ASCII in
the store, but if you decide on ASCII, you cannot store 8-bit characters.
You cannot define a blob storage area as the underlying area for a linked store or as a component of a
distributed storage area. That is, blob storage cannot be accessed through a linked store storage area
or through a distributed storage area.
Note that if a repository uses the DB2 database and two or more blob stores are created for the
repository, the first 16 characters in the name of each blob store must be unique.
• 8-bit Characters
Get Method To install a custom SurrogateGet, click Select Method and
browse to the method on the server host file system.
Distributed stores
A distributed store storage area does not contain content. Instead, it points to component storage areas
containing the content. The component storage areas in a distributed store can be any mixture of the
file store and linked store storage types, but all the components must store the same kind of content.
424 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Storage Management
Distributed storage areas are useful when repository users are located in widely separated locations.
You can define a distributed storage area with a component in each geographic location and set up
the appropriate content replication jobs to ensure that content is current at each location.
Documentum Platform and Platform Extensions Installation Guide describes how to implement and
administer a distributed storage area. The Documentum Content Server Object Reference manual lists
the properties defined for the distributed store object type.
If the repository uses the DB2 database and two or more blob
stores are created for the repository, the first 16 characters in
the name of each blob store must be unique.
Fetch Content Locally Only Indicates whether the server fetches content locally or from far
stores that are not available locally.
Get Method To install a custom SurrogateGet, click Select Method to access
the Choose a method page to select a method on the server
host file system.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 425
Storage Management
Components tab
Add Adds stores to the distributed store.
Select a store in the store list and click Remove to remove the
store from the distributed store.
Documentum Administrator User Guide contains the instructions on creating, viewing, or modifying
distributed stores.
External stores
External storage areas do not store content. Instead, external stores point to the actual storage area,
which can be a CD-ROM, a file system, a URL, or a user-defined store.
Data in an external store is not physically managed by Content Server. There are significant
limitations on content in an external store. For example, you cannot index content or the properties of
content in an external store.
External stores require a plug-in that you must create before you create an external store.
The plug-in can run on the server side or client side, although a client-side plug-in could
provide better performance. Documentum provides code for sample plug-ins in the
DM_HOME/unsupported/plugins directory.
There are three types of external stores:
• External file store
Use external file stores for legacy files in external file systems, optical disks, and CD-ROM files.
• External free store
External free store storage areas allow users to specify a token that is not a file path or a URL. An
external free store enables you to define your own token standard and means of retrieving the
content associated with the token. Write your own content retrieval mechanism through a DLL
plug-in, which is described by a plug-in object.
426 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Storage Management
You can also use the external free store pages to manually create XML stores. Use XML stores to
store and query large volumes of XML content. An XML store is a native XML database that is
fully optimized for XML content.
• External URL store
External URL stores provide support for token-mode operation where the token is a URL. The
tokens specified in the Setpath operation must follow the URL standard. The client and the
server do not validate the format of the URL.
Documentum Platform and Platform Extensions Installation Guide and Documentum XML Store
Administration Guide provide more information about external XML file stores.
Create the appropriate plug-ins before configuring the external store. You can create, view, or modify
an external file store, external free store, XML store, or external URL store.
Server tab The Server tab only displays for external file stores.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 427
Storage Management
The Select Root Location for Server page displays the server, location, and path that is the default root
of the content for server side plug-in execution.
Documentum Administrator User Guide contains the instructions on editing a server root location.
428 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Storage Management
Content Server supports distributed EMC Centera clusters in 5.3 SP3 and later repositories. The EMC
Centera store plug-in must be stored depending on different server locations:
• If all Content Servers are running on the same computer, the EMC Centera store plug-in must
be in a file store.
• If the Content Servers are running on different hosts, the EMC Centera store plug-in must be
stored in a file store that is shared by all Content Server instances or in a distributed store in which
each Content Server has at least one component defined as a near store.
To create a EMC Centera store, you must know the connection string of the EMC Centera storage
system.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 429
Storage Management
Retention Attribute Name The name of the retention attribute. The value must not be one
of the values specified as a content attribute name.
430 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Storage Management
You can add or modify storage parameters for the EMC Centera store.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 431
Storage Management
where:
• The primary cluster_id is the name or IP address of the Centera cluster to which the Content
Server writes.
• The secondary cluster_id is the name or IP address of the Centera cluster from which the
Content Server reads if it cannot read from the specified primary cluster.
Including a Centera profile is optional. The storage parameter property has a length of 1024
characters. Assign names to the Centera cluster nodes that are short enough to allow the full
connection string to fit within the property.
3. Click Add to move the value to the Storage Parameters section.
4. Enter more storage parameters, as necessary.
For example :
• To enable embedded blob use, enter the following parameter:
pool_option:embedded_blob:size_in_KB
where size_in_KB is the maximum size in kilobytes of the content that you want to store as
embedded blobs. For example, if you want to store all content that is 60 KB or smaller as
embedded blobs, set the storage parameter value as:
pool_option:embedded_blob:60
If embedded blob use has been enabled and content is written to a compressed EMC Centera
store, Content Server writes the content as linked blob if the original content size is greater
than the embedded blob threshold. This restriction still applies if the eventual compressed
content size is less than or equal to the embedded blob threshold. If the original content size is
less than the embedded blob threshold, the content is stored as embedded blob.
• To set the C-clip buffer size, enter the following parameter:
pool_option:clip_buffer_size:integer
where integer is an integer number representing the number of kilobytes. For example, to set
the buffer size to 200 KB, set the storage value parameter as:
pool_option:clip_buffer_size:200
• To change the maximum number of socket connections that the Centera SDK can establish
with the Centera host, enter the following parameter:
pool_option:max_connections:integer
where integer is an integer number from 1 to 999 specifying the maximum socket connections.
By default, the maximum number of socket connections is 99 on Windows platforms, and
1 on UNIX and Linux platforms.
5. Use the up and down arrows to sort the storage parameters.
Caution: If you have entered multiple parameters, the Centera connection string must be
in the first position.
6. When finished, click OK.
432 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Storage Management
EMC Centera stores allow you to save up to 62 metadata values with each piece of content saved in
the system.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 433
Storage Management
A repository can have multiple NetApp SnapLock stores. For ease of administration, maintenance,
and management, it is recommended that you use the same plug-in for all the NetApp SnapLock
stores.
On UNIX, mount the NetApp SnapLock store to local disk using NFS . Use the mount point path in
the NetApp SnapLock store object path. For example:
<snaplockhost:/path/to/use> </local/mount/point>
mount snapdisk:/u01/disk1 /dctm/snapstore
When you create the NetApp SnapLock store, use the name of the local mount path,
/dctm/snapstore.
434 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Storage Management
Retention Attribute Name The name of the retention attribute. The value must not be one
of the values specified as a content attribute name.
Atmos stores
An Atmos store is a software storage system that consists of several distributed services running on a
network of connected hardware nodes. Each node is attached to one more disk enclosures. The nodes
run a collection of services to store, retrieve, categorize, and manage the data in the system or cloud.
Content Server uses the ACS connector to communicate with the Atmos store. The ACS module
supports storing and retrieving of content through an HTTP interface.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 435
Storage Management
Managing authentication
The Web service uses a combination of the Token ID, and other request headers to produce
a signature that authenticates the user accessing the web service. It uses a combination of
various pieces of the message to validate the identity of the sender, integrity of the message, and
non-repudiation of the action. The Token ID that you received via e-mail from the portal agent
administrator consists of the subtenant ID, and the UID separated by a slash (/). The subtenant
ID is a randomly generated, 32 character alphanumeric string, which is unique to each customer.
The UID, however, is unique to a web-based application. The UID, which appears after the
slash, is comprised of a portion of the customer name, and a randomly generated string. For
example, if the customer name is ’ACME’, then the UID string appends the additional random
characters. The whole Token ID contains 53 uppercase characters including the slash (for example:
5f8442b515ec402fb4f39ffab8c8179a/ACME03GF52E8D8E581B5).
To complete the authentication operation, you must generate a signature using the shared secret,
which is associated with the UID. The shared secret is a value generated by the Storage Utility
Agent responsible for managing this application. The shared secret appears in the same e-mail
message that contains the Token ID. The following sample represents a typical shared secret:
MBqhzSzhZJCQHE9U4RBK9ze3K7U=
The prerequisite for plugin enabled stores is that ACS should always be running. ACS read/write
may be disabled through configurations, but ACS service itself should not be stopped. Ensure local
ACS is running for storing content in Atmos store. When you stop the ACS/JMS services, DFC
assumes normal content transfer operation. However, the Content Server understands that the
content belongs to the plugin enabled store and uses ACS connector to communicate to ACS for
storing content. The ACS Connector identifies the dm_acs_config object for the local ACS to access
436 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Storage Management
the acs_base_url for communicating with the ACS. If you stop the ACS services, it will fail and
Atmos storage will be shown as offline.
ViPR stores
ViPR is a software-defined storage platform that abstracts, pools, and automates a data center’s
underlying physical storage infrastructure. It provides a single control plane to data center
administrators for heterogeneous storage systems. Above the control plane, administrators can
deploy ViPR Services (Object, HDFS, and Block Services) on array- and commodity-based storage
that enable users to:
• Use ViPR file-managed storage as an object store
• Perform analytics on ViPR-managed storage
• Dynamically provision block commodity storage
ViPR enables software-defined data centers by providing the following features:
• Storage automation capabilities for multi-vendor block and file storage environments (control
plane or ViPR Controller).
• Object data management and analytic capabilities through ViPR Object and HDFS Services, which
creates a unified pool (bucket) of data across file shares and commodity servers (data path) .
• Management of multiple data centers in different locations with single sign-on data access from
any data center.
• Data replication between geographically dispersed data centers to protect against data center
failures with active-active functionality.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 437
Storage Management
438 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Storage Management
Mount points
A mount point object represents a directory that is mounted by a client. It is a useful way to aggregate
multiple locations that must be mounted.
• Public
• Private
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 439
Storage Management
Locations
The directories that a Content Server accesses are defined for the server by location objects. A location
object can represent the location of a file or a directory.
A location object contains a file system location for a specific file or directory. The server uses the
information in location objects to find the files and directories that it needs for successful operation.
Create the directory on the file system before creating a location object.
440 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Storage Management
• public
• private
If the security type is not set, the default value is the security
level of the referencing object, such an associated storage
object.
Documentum Administrator User Guide contains the instructions on creating or modifying locations.
Plug-ins
A plug-in is a shared library (on Unix or Linux systems) or DLL file (on Windows systems) for
retrieving content when an external store is in use.
You must create the plug-in. Documentum provides code for sample plug-ins in the
DM_HOME/unsupported/plugins directory. The sample plug-ins are examples and are not
supported by OpenText Documentum.
The API interface between the shared library or DLL and the server consists of C functions for the
plug-in library.
You can create the plug-in object that represents the plug-in.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 441
Storage Management
• SO (UNIX)
Note: The SL (HP-UX) file type is available only for pre-7.0
repositories.
Usage Type a comment on how the plug-in is used.
Documentum Administrator User Guide contains the instructions on creating or modifying plug-in
objects.
442 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Storage Management
retention-enabled storage area. If there are multiple retention-enabled storage areas in the repository,
you must select the target storage area. To set a retention date, you must belong to the Webtop
administrator role and have at least WRITE permission on the object, and the EMC Centera or
NetApp SnapLock store must be retention-enabled.
You can alternatively assign a retention period for content stored in a retention-enabled store. A
retention period is the amount of time for which the content must be retained. If a retention period is
defined, you cannot remove the file from the repository until that period has expired. For example, if
the retention period is set to five years and the current date is January 1, 2007, the content file cannot
be removed before January 1, 2012.
Documentum Administrator User Guide contains the instructions on setting or updating a retention
period or retention date for a document or other repository object.
Enabling WORM
2. Set the native_access attribute of dm_filestore to isilon (for Isilon) or datadomain (for Data
Domain) using the IAPI commands.
For example, to set to isilon, use the following command:
retrieve,c,dm_filestore where name = '<store_name>'
set,c,l,native_access
isilon
save,c,l
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 443
Storage Management
Note: WORM and non-WORM data cannot be combined on same filestore because WORM
feature cannot be applied automatically on existing content files. Instead, create new WORM
store and migrate existing contents to new store using the RPC, MIGRATE_CONTENT.
You need to configure the SmartLock containers (WORM folder) with the default retention date in
Isilon. Use the following command:
isi worm mkdir --path=<complete path for the new directory>
-d=<default retention offset>
To view the WORM status of a file or directory, use the following command:
isi worm info --path=<complete path of the file or directory> --verbose
Assignment policies
Assignment policies are sets of rules that DFC-based applications apply to determine the correct file
store or retention store for each new content file added to the repository. Assignment policies require
a Content Storage Services (CSS) license. Any client application built on DFC applies assignment
policies automatically if CSS is enabled in the repository.
Assignment policies can only be applied to the SysObject type and its subtypes, and are represented
in the repository by persistent objects. A particular object type can have only one associated
assignment policy. When a new content file is added to the repository, the assignment policy engine
determines whether the object type of the file has an active associated assignment policy. If there
is no active assignment policy for the type, the assignment policy engine determines whether the
supertype of the object has an active associated assignment policy. If there is an active assignment
policy for the file type or a supertype, the system applies the policy and stores the file accordingly.
If no policy is found or if none of the rules match in an applicable policy, the system uses the
default algorithm to determine the correct storage area. If none of the rules match in the applicable
assignment policy, the policy engine does not further search the type hierarchy.
Assignment policies consist of rules that define the criteria for storing content files in the correct
storage area. There are two types of rules:
• Standard rules
Standard rules determine storage area based only on the object format and content size. Standard
rules can have one to five criteria.
• Custom rules
Custom rules can be based on the values of any standard or custom SysObject property, provided
those values are present before an object is saved. There are no restrictions on the number
of conditions in a custom rule. The properties and values are specified using methods, such
as getString(), getInt(), or getRepeatingString(). Custom rules follow the Java syntax for any
conditional statements in the rule.
There is no syntactical difference between the two types of rules. During rule validation, a standard
rule is translated into the same syntax used for custom rules.
444 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Storage Management
Assignment policies are applied only to new content files, whether they are primary content files or
renditions. An assignment policy’s rules are applied in the order in which they are listed within a
policy. If a rule is met, the remaining rules are ignored. To match a rule, all conditions in the rule
must be satisfied. An assignment policy is applied when
• A content file is first saved or imported into the repository.
• A new version of a document is created, because versioning creates a new content file.
• A document is checked out and checked in and a new version results, the policy is applied to
the new version of the content file.
• An existing document is modified and saved as the same version of the document.
Assignment policies are not applied or enforced under the following conditions:
• An application sets the a_storage_type SysObject property.
If a_storage_type is set by an application, assignment policies do not execute for any of the
primary content pages (content added using a Setfile). Documentum client applications do not
generally set this property.
• The application specifies the storage location for a secondary rendition during an addrendition
call.
If a storage location is already provided, the policy engine does not execute the policy for this
particular secondary rendition.
• Assignment policies are not enabled.
• The properties of an existing documents are modified and saved the changes without checking
out and versioning the document. The content is saved into its current storage location.
• The DFC policy engine is turned off.
• Assignment policies are enabled but a policy does not exist for an object type or for any of the
types supertypes.
• A document does not satisfy any of the conditions in the applicable policy.
• The content is replicated (content associated with a replica object).
• The content is loaded into a repository with dump and load.
• The content generated by a refresh API.
• The content is associated with storage policies.
If the assignment policy engine encounters an error in a rule at runtime (for example, if a property
name is invalid), the assignment policy engine returns an error and the save operation on the
document or object fails. This behavior can be overridden by setting the DFC client-preference flag in
the dfc.properties file on the application server host where Webtop or Documentum Administrator
is installed:
dfc.storagepolicy.ignore.rule.errors=true
If this flag is set to true, the assignment policy engine ignores the faulty rule and attempts to apply
the next rule in the policy.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 445
Storage Management
Field Description
Name The name and a description for the assignment
policy. The name must be unique in the
repository and can be modified after the policy
is saved.
Description A description of the policy. Optional property.
Status Specifies whether the assignment policy is
active. The default status is Inactive. Select
Active to enable the policy and automatically
validate the rule syntax. The validation process
does not check whether property names in the
rules are valid.
Validate all of the rules defined for this policy Validates the rules for the policy if the policy
is active. The default is selected. If the policy
is created in the active state, the checkbox is
selected and grayed out.
446 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Storage Management
Field Description
Object types Select the object types to which the policy
applies.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 447
Storage Management
Example Rule 2:
sysObj.getString("subject").equals("Policies and Procedures") &&
sysObj.getOwnerName().equals("JSmith") --> filestore_03
Example Rule 3:
sysObj.getString("subject").equals("smith") &&
sysObj.getOwnerName().equals("john") --> filestore_03
Migration policies
Migration policies move content files from one storage area to another, based on the rules (conditions)
defined in the policy. Files are selected for migration based on format, content size, or date criteria.
The target storage area of a migration policy can be a file store or a retention store (EMC Centera or
NetApp SnapLock).
448 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Storage Management
Migration policies are jobs that execute the MIGRATE_CONTENT administration method. The
conditions are stored as job arguments. A Content Storage Services (CSS) license is required to create
content migration jobs. CSS is enabled using a license key when Content Server is installed or when
the Server Configuration Program is used to update the server installation.
Field Description
Name The name of the job. Mandatory property.
Job Type The type of job. Optional property. The default value is
Content.
Trace Level The trace level from 0 (no tracing) to 10 (a debugging level
of tracing).
Designated Server The server on which the migration policy is run. Select
a server from the drop-down list. The list displays each
registered servers. The default value is Any Running
Server.
State Specifies whether the policy is active or inactive. The
default value is Active.
Options
Deactivate on Failure Select to deactivate the job after a run fails to execute
correctly.
Run after Update Select to run the job immediately after it was updated.
Save if Invalid Select to save the job even if it is invalid.
The migration policy schedule determines when the migration job is executed.
Field Description
Next Run Date and Time Specifies the next start date and time for the job.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 449
Storage Management
Field Description
Repeat Specifies the time interval in which the job is repeated.
Frequency Specifies how many times the job is repeated.
The default end date is 10 years from the current date and time.
After Specifies the number of invocations after which the job
becomes inactive.
Rules can be standard rules, created by making choices from drop-down lists, or they can be
custom rules, which use DQL predicates. Custom rules can select content to be migrated only from
dm_sysobject and dmr_content objects. SysObject subtypes are not supported.
Field Description
Selected Objects
Simple selection Creates a migration rule based on preset values, such as
format, creation date, modification date, access date, or size.
450 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Storage Management
Field Description
Move objects where Specifies which objects to move. Select one of the criteria from
the drop-down list, as follows:
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 451
Storage Management
Field Description
Move options
Target Store The destination storage area to which the content files migrate.
Select a store from the drop-down list. The list includes
file stores and retention stores (EMC Centera and NetApp
SnapLock).
Batch Size The number of content files to include in a single transaction
during the migration operation. The default value is 500.
Maximum Count The maximum number of content files to transfer. To specify
an unlimited number of documents, type a zero [0] or leave
the field blank.
Content Migration Threads The number of internal sessions to use to execute the migration
policy. The default value is 0, indicating that migration
executes sequentially.
Field Description
Title The title of the object.
Subject The subject of the object.
Keywords Keywords that describe the object. Click Edit to access the
Keywords page. Enter a new keyword in the Enter new value
box and click Add.
Authors The author of the object. Click Edit to access the Authors page.
Type a new author in the Enter new value box and click Add.
Owner Name The owner of the object. Click Edit to access the Choose a user
page and select an owner.
Show more Click to view more SysObject properties of the migration
policy.
452 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Storage Management
Documentum Administrator User Guide contains the instructions on configuring migration policy
SysObject information.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 453
Storage Management
• An IDfSession.apply() method
• From the operating system prompt
Executing either utility through a DQL EXECUTE statement, an IDfSession.apply method, or the
operating system prompt is a two-step process. First, the utility must be executed to generate a script,
and the script is run to perform the actual operations. Executing the operation in two parts allows
checking which objects and files are going to be deleted before the work is actually performed.
Argument Description
-no_note Directs the utility not to remove annotations.
-no_acl Directs the utility not to remove orphaned ACLs.
-no_content Directs the utility not to remove orphaned content objects
and files.
-no_wf_templates Directs the utility not to remove orphaned
SendToDistribution templates.
-include_ca_store Directs the utility to include orphaned content objects
representing files stored in EMC Centera or NetApp
SnapLock storage.
Note: This argument is not supported when dmclean is run
through Documentum Administrator.
-clean_aborted_wf Directs the utility to remove aborted dm_workflows and
all related runtime objects.
-clean_deleted_lwso Directs the utility to remove deleted lightweight SysObjects
and their parents.
-clean_wf_method_exec_result Directs utility to delete workflow method output for
finished workflows.
454 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Storage Management
Argument Description
-clean_content_in_parallel Directs the utility to delete orphaned content objects
running in parallel.
-parallel_degree Directs the utility to define the degree of parallelism. It is an
integer type value and it cannot be a negative value.
Note: The default value of parallel_degree argument is 5.
If you need syntax help, enter the name of the utility with the -h argument at the operating system
prompt. The Running jobs, page 392 and Dmclean, page 334 sections contain information on running
dmclean using Documentum Administrator.
The executable that runs dmclean is launched by a method that is created when you install Content
Server. By default, the dmclean executable is assumed to be in the same directory as the Content
Server executable. If you moved the server executable, modify the method_verb property of the
method that launches dmclean to use a full path specification to reference the executable. You must
be in the %DM_HOME%\bin ($DM_HOME/bin) directory when you launch the dmclean executable.
The dmclean utility does not operate on content stored in EMC Centera or NetApp SnapLock storage
areas by default. If you want to remove orphaned content files from these retention type storage
areas, and their associated content objects, you must use run the dmclean utility from the command
line and include the -include_ca_store argument.
Removing the content object and content file fails if the storage system does not allow deletions or if
the content retention period has not expired. To find and remove the repository objects that have
expired content, use the RemoveExpiredRetnObjects administration tool. Then use dmclean with the
-include_ca_store argument to remove the resulting orphaned content files and content objects.
To run dmclean with the EXECUTE statement, use the following syntax:
EXECUTE do_method
WITH method = 'dmclean',
arguments = 'list of constraining arguments'
The dmclean utility can remove a variety of objects in addition to content files and content
objects. These objects include orphaned annotations (note objects), orphaned ACLs, and unused
SendToDistributed workflow templates. These objects are removed automatically unless you include
an argument that constrains the utility not to remove them. For example, including -no_note and
-no_acl arguments directs dmclean not to remove orphaned annotations and unused ACLs. If you
include multiple constraints in the argument list, use a space as a separator.
The utility automatically saves the output to a document that is stored in the Temp cabinet. The
utility ignores the SAVE argument in the DO_METHOD. The output is saved to a file even if this
argument is set to FALSE. The output is a generated IAPI script that includes the informational
messages generated by the utility.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 455
Storage Management
To run dmclean from the operating system prompt, use the following syntax:
dmclean -docbase_name name -init_file init_file_name [list
of constraining arguments]
Where name is the name of the repository against which to run the utility and init_file_name is the name
of the server.ini file for the repository’s server. The name and init_file_name arguments are required.
As dmclean is executing, it sends its output to standard output. To save the output (the generated
script) to a file, redirect the standard output to a file in the command line when you execute dmclean.
The dmclean utility can remove a variety of objects in addition to content files and content
objects. These objects include orphaned annotations (note objects), orphaned ACLs, and unused
SendToDistributed workflow templates. These objects are removed automatically unless you include
an argument that constrains the utility not to remove them. For example, including -no_note and
-no_acl arguments directs dmclean not to remove orphaned annotations and unused ACLs. If you
include multiple constraints in the argument list, use a space as a separator.
456 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Storage Management
Argument Meaning
-s storage_area_name The name of the storage object that represents
the storage area to clean. If this argument is not
specified, the utility operates on all storage areas
in the repository, except far stores.
-from directory1 Subdirectory in the storage area at which to
begin scanning. The value is a hexadecimal
representation of the repository ID used for
subdirectories of a storage area.
To run dmfilescan with the EXECUTE statement, use the following syntax:
EXECUTE do_method WITH method = 'dmfilescan',
[arguments = '[-s storage_area_name] [,-from directory1]
[,-to directory2]']
The utility automatically saves the output to a document that is stored in the Temp cabinet. The
utility ignores the SAVE argument of the do_method. The output is saved to a file even if this
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 457
Storage Management
argument is set to FALSE. The output is a generated script that includes the informational messages
generated by the utility.
To run the utility from the operating system, use the following syntax:
dmfilescan -docbase_name name -init_file init_file_name
[-s storage_area_name][-from directory1][-to directory2]
The dmfilescan utility sends the output to standard output. To save the generated script to a file,
redirect the standard output to a file on the command line when you run the utility.
The two arguments, -docbase_name and -init_file, are required, where name is the name of the
repository that contains the storage area or areas to clean and init_file_name is the name of Content
Server server.ini file.
Executing dmfilescan generates a script. The script comprises a series of remove commands that
remove orphaned files found by the utility. For each file, the script lists its data ticket and storage
ID. The script also contains a template DQL SELECT statement that can be used with the data ticket
and storage ID values.
The following example describes a script that was generated on a Windows host.
rem Documentum, Inc.
rem
rem This script is generated by dmfilescan for later verification
rem and/or clean-up. This script is in trace mode by default. To
rem turn off trace mode, remove '-x' in the first line.
rem
rem To see if there are any content objects referencing a this file
rem listed below, use the following query in IDQL:
rem
rem c:> idql docbase -Uuser -Ppwd
rem 1> select r_object_id from dmr_content
rem 2> where storage_id = 'storage_id' and data_ticket =
data_ticket
rem 3> go
rem
rem If there are no rows returned, then this is an orphan file.
rem
rem storage_id = '280003c980000100' and data_ticket = -2147482481
del \dm\dmadmin\data\testora\content_storage_01\000003c9\80\00\04\8f
rem storage_id = '280003c980000100' and data_ticket = -2147482421
del \dm\dmadmin\data\testora\content_storage_01\000003c9\80\00\04\cb
rem storage_id = '280003c980000100' and data_ticket = -2147482211
del \dm\dmadmin\data\testora\content_storage_01\000003c9\80\00\05\9d
. . .
458 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Storage Management
On UNIX:
% script_file_name
Make sure that you have the user permission to execute this file. On Windows, use File Manager to
add appropriate permission to your user account. On UNIX, use the following command:
% chmod ugo+x script_file_name
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 459
Storage Management
When the tool is finished, it sends a completion message to the user requesting the operation and
to the repository operator.
4. A user-defined DO_METHOD procedure moves the file from the archive directory to permanent,
offline storage.
460 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Chapter 18
Content Delivery
Label Information
Initial Publishing Date The date documents were first published using
this configuration.
Refresh Date The date of the last successful full refresh of the
content delivery configuration.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 461
Content Delivery
Label Information
Last Increment Date The date of the last successful incremental
publish event for the content delivery
configuration.
Increment Count The number of successful incremental updates
since the initial publish operation or last full
refresh.
Publishing Status Indicates whether the last publishing event
succeeded or failed.
Event Number Unique number generated internally for each
publishing operation.
Documentum Administrator User Guide contains the instructions on locating content delivery
configurations.
462 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Content Delivery
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 463
Content Delivery
464 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Content Delivery
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 465
Content Delivery
466 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Content Delivery
Synchronization Settings
Transfer is to live website If selected, Interactive Delivery Services
attempts to minimize user interruptions during
publishing. Leave cleared if users do not have
access to the site during publishing operations.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 467
Content Delivery
468 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Content Delivery
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 469
Content Delivery
agent_connection_
timeout=90
connect_thread_
timeout=90
470 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Content Delivery
lock_sleep_interval=90
lock_retry_count How many times IDS checks 30
whether the webc lock object
is unlocked. The value of this
key multiplied by the value
of lock_sleep_interval controls
the total amount of time for
which IDS waits to lock a
configuration with a lock object.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 471
Content Delivery
472 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Content Delivery
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 473
Content Delivery
If use_format_extensions is set
to FALSE, files are published
with the format extensions
defined in the repository for the
format.
If use_format extensions is
set to TRUE and a particular
extension is defined as valid for
a particular format, files of that
format with that extension are
published with the extension.
If use_format_extensions is
set to TRUE and a particular
extension is not defined as
valid for a particular format,
files of that format with that
extension are published with
the format extensions defined
in the repository for the format.
format Use with use_format_
extensions key. Takes the
format:
format.format_name=
semicolon-separated_
extensions
force_serialized When set to TRUE, single-item FALSE
publishes are performed
serially rather than in parallel.
474 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Content Delivery
• r_modified_date
• object_name
• i_chronicle_id
• r_version_label
• content_id
• i_full_format
• r_folder_path
additional_metatag_file_exts Allows exported attributes to No default value.
be added as metatags to file
formats with the extensions
asp, jsp, jht, and sht. Add them
as a semicolon-separated list:
additional_
metatag_extensions=
asp;jsp;jht;sht
export_relations When set to TRUE and FALSE
attributes are published,
relation objects (dm_relation
objects) are published to a
database table on the target.
clean_repeating_table_no_attrs Deprecated.
export_media_properties When set to true, attributes FALSE
of the dmr_content object and
dm_format object are exported
and published to the target.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 475
Content Delivery
For example:
additional_media_
properties=dmr_content.
x_range;dmr_content.z_
range
exclude_folders A semicolon-separated list
of absolute repository paths,
indicates the folders to be
excluded from a publishing
operation. When set, content
files and attributes from folders
indicated are not published.
For example:
exclude_folders=/acme.
com/images;/acme.com/
subdir
pre_webroot_switch_script A script to be run before online
synchronization takes place.
Documentum Interactive Delivery
Services User Guide contains
more information.
post_webroot_switch_script A script to be run after online
synchronization takes place.
Documentum Interactive Delivery
Services User Guide contains
more information.
full_refresh_backup When set to TRUE, the content FALSE
files and database tables on the
target host are backed up before
the synchronization phase
in a full-refresh publishing
operation.
476 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Content Delivery
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 477
Content Delivery
478 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Content Delivery
• TRICKLE/STEALTH (T):
When set to this value,
the file transfer uses the
available bandwidth to the
maximum rate. When there
is congestion due to other
file transfers, the transfer
rate is reduced down to the
minimum rate.
min_file_transfer_rate This is the minimum file 0 Mbps
transfer rate
max_file_transfer_rate This is the maximum file 1000 Mbps
transfer rate
wan_acceleration_log_details The file transfer process status FALSE
are captured in the content
delivery log files
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 479
Content Delivery
• FULL_CHECKSUM: When
set to this value, checks for
the checksum of both files. If
it matches, then transfer does
not take place
• SPARSE_CHECKSUM:
When set to this value, checks
for the sparse checksum of
both files. If it matches, then
transfer does not take place
480 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Content Delivery
If the number_of_failures
value is greater than the
decision_commit_rollback value,
a rollback is initiated on the
replication targets.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 481
Content Delivery
482 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Content Delivery
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 483
Content Delivery
Documentum Administrator User Guide contains the instructions on deleting content delivery
configurations.
Publishing objects
You can manually run a publishing job from the Interactive Delivery Services Configuration list page.
484 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Content Delivery
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 485
Content Delivery
Effective labels
Use effective labels to enable IDS to determine which documents to publish based on effective and
expiration dates.
The effective label specified in a content delivery configuration allows IDS to determine when to
publish a particular document and when to delete it from the website. IDS does this by examining the
repeating properties a_effective_label, a_effective_date, and a_expiration_date, which are properties
of the dm_sysobject type. These properties are inherited by all subtypes of dm_sysobject.
Each a_effective_label corresponds to a matching a_effective_date and a_expiration_date. Because
these are repeating properties, you can specify multiple effective labels, effective dates, and expiration
dates for each document. IDS looks for the effective and expiration dates matching a particular
effective label, and uses the dates to determine when to publish a document and when to withdraw
the document from the website.
For example, a document might have the effective label, effective date, and expiration date properties
set as follows:
486 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Chapter 19
Indexing Management
Indexing
A full-text index is an index on the properties and content files associated with documents or other
SysObjects or SysObject subtypes. Full-text indexing enables the rapid searching and retrieval of
text strings within content files and properties.
Full-text indexes are created by software components separate from Content Server. The index agent
prepares documents for indexing and Documentum xPlore creates indexes and responds to queries
from Content Server. Documentum xPlore Deployment Guide contains the information on installing
the index agent and xPlore.
You must have system administrator or superuser privileges to start, stop, or disable index agents,
start or stop xPlore, and manage queue items. Documentum xPlore Administration Guide contains the
information on editing the properties of the index agent configuration object and other full-text
configuration objects.
Ensure that the subpath is configured correctly in indexserverconfig.xml. For example, set
"sortable= true” for subpath “dmftmetadata//object_name”. Then, using DQL, you
can let xPlore to order by attribute object_name. For example:
select r_object_id from dm_sysobject search document
contains 'john' order by object_name
This is applicable for sorting results supported in xPlore with the appropriate index configuration.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 487
Indexing Management
Caution: Stopping the index agent interrupts full-text indexing operations, including updates
to the index and queries to the index. An index agent that is stopped does not pick up index
queue items or process documents for indexing.
Note: If the Content Server is in a projected to dormant state, then starting or stopping the index
agent works correctly. However, if the Content Server is in a dormant state, then starting or
stopping the index agent using Documentum Administrator does not work correctly. The status
of the index agent appears as Not Responding. The index agent logs contain the following
error: [DM_INDEX_AGENT_UNEXPECTED_DFC_EXCEPTION] Unexpected DfException:
context: Init Connector cause: [DM_SESSION_E_OP_DISALLOWED_IN_STATE_
UNLESS_ENABLED]error: "The operation (Opening a new transaction) is
disallowed when the server is in Dormant state unless enabled by Data
Center Managers on their sessions."
Documentum Administrator User Guide contains the instructions on starting or stopping index agents.
488 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Indexing Management
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 489
Indexing Management
• Indexing in Progress, which indicates that the object is being processed by the index agent or
xPlore federation
• Awaiting Indexing, which indicates that the index agent has not yet acquired the queue item and
started the indexing process
• Warning, which indicates that the index agent encountered a problem when it attempted to start
the indexing process for the object
If indexing generated a warning, information about the problem is displayed in red under the
queue item’s name and other properties.
Queue items that have failed indexing can be resubmitted individually, or all failed queue items can
be resubmitted with one command. Documentum xPlore Administration Guide contains the instructions
on resubmitting objects for indexing.
490 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Indexing Management
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 491
Indexing Management
492 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Chapter 20
Content Transformation Services
Management
A repository can be polled by multiple CTS instances. All CTS instances polling the repository are
displayed in the Content Transformation Services node in Documentum Administrator.
Documentum Administrator User Guide contains the information on the following:
• Understanding Content Transformation Services overview
• Changing the CTS user
• Configuring a CTS instance
• Viewing a CTS log file
• Viewing details of a CTS instance
• Controlling your CTS instance
• Reporting in Content Transformation Services
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 493
Content Transformation Services Management
494 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Chapter 21
Content Intelligence Services
Use Content Intelligence Services (CIS) to analyze the textual content of documents and know what
the documents are about without having to read them.
By default, CIS analyzes the content of the documents, including the values of the file properties.
You can change the default behavior and have CIS analyze the values of the Documentum object
attributes in addition to, or instead of, the content of the documents.
CIS performs several types of analysis:
• Categorization: By detecting predefined keywords in the document content, the categorization
identifies the category to which a document belongs. Categories for a subject area are organized
in a structure called a taxonomy. Categorization enables you to organize content in a logical
and consistent way.
• Entity detection: It relies on Natural Language Processing (NLP). Named entities are detected
by performing a semantic analysis of their context. If there is too little context, or if the context
is unclear, the detection can seem to be incomplete. You can use entity detection to find named
entities such as people names or company names in documents.
• Pattern detection: Some pieces of information always have the same form. Use the pattern
detection to retrieve this information when it is disseminated in text. For example, email
addresses, because they comply with a standard, can be extracted using pattern detection. Pattern
detection retrieves all pieces of information that match the pattern.
Documentum Administrator User Guide contains the information and instructions on the following:
• Understanding Content Intelligence Services in Documentum applications
• Configuring Content Intelligence Services in Documentum Administrator
• Building taxonomies for classic categorization
• Selecting and submitting the documents to analyze
• Managing analysis results
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 495
Content Intelligence Services
496 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Chapter 22
Resource Management
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 497
Resource Management
Monitoring resources
The <MBean name> Monitor page displays information for resource types that have been configured
for the server monitor interface. The monitor interface is available only for these MBean types:
• AcsServerMonitorMBean
• AcsServerConfigMBean
• JmxUserManagementMBean
• IndexAgent
498 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Resource Management
To manually configure:
1. The following changes are required in
\app\webcomponent\config\admin\resourcemanagement\resources\mbeanresourceslist_
component.xml.
Add the JMXBeans to the <mbeantypes> node list.
<mbeantypes>
<!--name denotes the exact name of MBean-->
<mbeantype name='IndexAgent'>
<!--onclickcomponent specifies the component to be invoked-->
<onclickcomponent>mbeanresourcemonitordialogcontainer</onclickcomponent>
</mbeantype>
</mbeantypes>
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 499
Resource Management
500 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Chapter 23
Cabinets, Files, and Virtual Documents
Documentum Administrator User Guide contains the information and instructions on the following:
• Managing cabinets, folders, and files
• Understanding home cabinets
• Creating cabinets
• Creating folders
• Creating files
• Working with files
• Deleting cabinets, folders, or files
• Moving files
• Copying files
• Viewing the clipboard
• Linking cabinets, folders, or files
• Managing subscriptions
• Enabling change notifications
• Managing relationships
• Understanding renditions and transformations
• Configuring PDF Annotation Services
• Understanding virtual documents
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 501
Cabinets, Files, and Virtual Documents
502 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Chapter 24
API and DQL
DQL Editor
The Dql Enter Query page enables you to test whether a DQL SELECT statement returns the expected
values. Use this page as a tool for testing DQL.
The number of rows returned by a DQL statement is limited based on the width of the rows
requested. The query results may be truncated. When this happens, a warning message appears.
API Tester
The API Tester page enables you to enter methods directly in the API text field by typing the method
name and its arguments as a continuous string, with commas separating the parts.
For example, the following command creates a folder:
API> create,s0,dm_folder
Note: Methods entered in the API text field bypass the Documentum Foundation Classes (DFC)
and directly access the Documentum Client Libraries (DMCL). Therefore, the DFC cannot perform
its usual validation of the methods.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 503
API and DQL
504 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Chapter 25
Search
Searches
Documentum Administrator offers different ways to search repositories and external sources. By
default, Documentum Administrator provides a simple search and an advanced search. If Federated
Search Services is installed on the Content Server host, administrators also have the option to create
search templates and configure smart navigation.
Documentum Platform and Platform Extensions Installation Guide contains more information on installing
Federated Search Services.
Search guidelines
In general, the following guidelines apply to searches:
• If a document cannot be indexed, it also cannot be searched. For example, documents that contain
binary content cannot be indexed.
• Only certain characters can be searched, such as alphabetic, numeric, extender, and custom
characters. Custom characters include Chinese, Japanese, Korean letters, and months.
Other characters, including punctuation, accent, and diacritical marks, and characters such as
| and #, are not indexed or searched. These characters are removed from the indexed text and
are treated as blank spaces. The xPlore federation treats characters such as !@#$%^_,.&;:()+=<
as white space.
• The plus and minus signs cannot be used as operators. You must use the AND operator, and
the OR instead.
• The asterisk, and the question mark can be used as wildcards.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 505
Search
Syntax Description
Quotation marks To search for an exact word or phrase, type quotation marks around the
around a word or word or phrase.
phrase: " "
For a simple search (including the Contains field in an advanced search),
if you do not use quotation marks, Documentum Administrator displays
files that contain both the exact words you typed as well as variations of
the words, such as scanning for the word scanner.
This option is disabled when searching for more than one word or if your
repository has not been indexed for variations.
506 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Search
Syntax Description
The AND and OR To get results that contain two search terms, type AND between the
operators terms. A term can be a word or quoted phrase.
To get results that contain at least one term, type OR between the words
or the quoted phrases.
You can string together multiple terms with the AND and OR operators.
The AND operator has precedence over the OR operator. For example,
if you type:
knowledge or management and discovery
then your results must contain either knowledge or they must contain
management, and discovery.
The NOT operator To get results that do not contain a term, type NOT before this term. The
term can be a word or a quoted phrase. Only the term that follows the
operator is taken into account.
The NOT operator can be used after the AND or OR operator, separated
by a space.
If you type Documentum OR NOT adapter, you get results that either
contain Documentum (and possibly contain adapter) or that do not
contain adapter. Use this syntax cautiously. It can generate a very large
number of results.
The NOT operator can be used alone at the beginning of the query. For
example, if you type NOT adapter, you get results that do not contain
adapter. Use this syntax cautiously. It can generate a very large number
of results.
The NOT operator is not supported for queries on external sources when
it is alone at the beginning of the query or if used with the OR operator.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 507
Search
Syntax Description
Parentheses around To specify that certain terms must be processed together, use parentheses.
terms: ( ) When using parenthesis, you must type a space before, and after each
parenthesis mark, as shown here: ( management or discovery )
Note:
• The operators AND, OR, and NOT are reserved words. To search a term that includes an operator,
use quotation marks. For example, if you search for "hardware and software", Documentum
Administrator returns documents with that string of three words. If you type hardware, and
software without quotation marks, Documentum Administrator returns all of the documents that
contain both words.
• The operators AND, OR, and NOT are not case-sensitive. For example, for your convenience, you
can type: AND, and, And.
508 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Search
Search results
Documentum Administrator User Guide contains the information and instructions on the following:
• Viewing search results
• Using smart navigation feature
• Monitoring search results in real time
• Saving search results from external sources
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 509
Search
• Case-sensitivity: If the repository is indexed, queries are case-insensitive by default, even using
quotation marks. If the repository is not indexed, then queries are case-sensitive. However, for
non-indexed repositories, case-sensitivity can be turned on, and off by the system administrator.
• Grammatical normalization (lemmatization): When you do not use quotation marks, DA
displays files that include variations of the words you typed in addition to the exact words. These
variations are based on the word’s root. This behavior depends on the configuration of the full-text
engine, and is called grammatical normalization.
• External sources: When querying an external source, the results displayed in DA depend partly
on the configuration of this source. For example, if the source does not return information on
dates, then dates cannot be filtered.
• Multiple repositories: As for external sources, the results depend on the configuration of each
repository. For example, the indexing may be set differently on various repositories.
Saved searches
Searches can be saved so that you can launch them regularly without redefining them, share them
between users, or to quickly retrieve the corresponding results. Documentum Administrator User
Guide contains the instructions on the following: Saving a search, Running a saved search, and
Editing a saved search.
510 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Chapter 26
Inbox
Documentum Administrator User Guide contains the information and instructions on the following:
• Understanding inboxes
• Opening a task or notifications
• Performing a task
• Completing a task
• Accepting a group task
• Rejecting a task
• Delegating a task
• Repeating a task
• Changing availability of tasks
• Understanding work queue tasks
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 511
Inbox
512 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Chapter 27
Workflows, Work queues, and
Lifecycles
Workflows
A workflow is an automated process that passes files and instructions between individuals in
sequence to accomplish specific tasks. When users are assigned a workflow task, the task appears in
their Inbox.
Workflows can include automatic tasks that the system performs, such as the execution of scripts.
Automatic tasks allow the integration of workflows and lifecycles.
The number of worker sessions available to execute automatic activities is controlled by the workflow
agent worker threads property value in the server configuration properties. By default, this value
is set to 3. You can reset the value to any positive number to a maximum of 1000. The Modifying
general server configuration information, page 46 section contains more information on the server
configuration properties.
You must stop and restart Content Server for your change to take effect. Reinitializing the server
does not make the change effective.
The sleep interval determines how long the master session sleeps after querying the repository for
activity information in the absence of a notification from Content Server. If the sleep interval expires
without a notification, the master session wakes up and queries the repository even though it has
not received a notification from Content Server. The default sleep interval is 5 seconds. You cannot
change this value in Documentum Administrator. Use IDQL to change the value.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 513
Workflows, Work queues, and Lifecycles
The sleep interval is controlled by the wf_sleep_interval property in the server config object. The
value is interpreted in seconds. You must stop and restart Content Server for your change to take
effect. Reinitializing the server does not make the change effective.
The system shutdown timeout property in the server configuration object sets the time that the
workflow agent attempts to shut down work items gracefully after receiving a shutdown command.
This feature is only applicable for repositories that use multiple Content Servers.
If the shutdown timeout period is exceeded (or is set to zero), the workflow agent shuts down
immediately. When the workflow agent does not shut down gracefully, automated tasks in certain
states can be corrupted. If tasks are corrupted, restarting the Content Server does not result in
resumption of the managed workflows. The server log file indicates when a graceful shutdown did
not occur. Use the RECOVER_AUTO_TASKS administration method to recover the automated tasks.
Note: In some cases, restarting the Content Server after an ungraceful shutdown can result in
automated tasks executing again.
If the timeout period is a negative value, Content Server waits for the workflow agent threads to
complete the automatic tasks held by workflow agent workers before shutting down gracefully.
The default system shutdown timeout setting is 120 seconds. The Modifying general server
configuration information, page 46 section contains more information on the server configuration
properties.
The notify new task attribute (wf_agent_notify_newtask) on the server configuration object enables
you to force immediate processing of automatic activities. Configure the Content Server to notify
the workflow agent to process automatic tasks immediately after the system creates them by setting
the wf_agent_notify_newtask attribute to TRUE. You cannot change this value in Documentum
Administrator. Use IDQL to change the value.
When the wf_agent_newtask attribute is set to TRUE, the following occurs:
• If the system creates automatic tasks when the workflow agent is processing the previously
collected tasks, then the workflow agent ignores the wf_sleep_interval and collects the next set of
automatic activities.
• If the system has not created an automatic task when the workflow agent is processing
the previously collected tasks, then the workflow agent sleeps for the time specified in
wf_sleep_interval.
• If the system creates tasks when the workflow agent is sleeping, then the agent wakes up
immediately and collects the next set of automatic activities.
When the wf_agent_notify_newtask attribute is set to FALSE, the workflow agent honors the value
of the wf_sleep_interval and sleeps for the time specified before the workflow agent collects the
next set of automatic activities for processing.
By default, the value for the wf_agent_notify_newtask attribute is TRUE.
514 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Workflows, Work queues, and Lifecycles
By default, tracing for the workflow agent is turned off. You can turn it on by executing a
SET_OPTIONS administration method with the -trace_workflow_agent option specified. For more
information about the SET_OPTIONS administration method, refer to SET_OPTIONS, page 311.
If you execute the SET_OPTIONS administration method, tracing starts immediately. It is not
necessary to restart the server. However, if you stop and restart the server, you must reissue the
SET_OPTIONS administration method to restart the tracing.
The trace messages are recorded in the server log file.
Disabling the workflow agent stops the execution of automatic activities. To disable the workflow
agent, set the workflow agent worker threads property in the server configuration properties to 0.
The Modifying general server configuration information, page 46 section contains more information
on the server configuration properties.
Stop and restart Content Server for the change to take effect. Reinitializing the server does not make
the change effective.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 515
Workflows, Work queues, and Lifecycles
Role Description
Queue_processor Works on items that are assigned by the system
from one or more work queue inboxes. Queue
processors can request work, suspend, and
unsuspend work, complete work, and reassign
their work to others.
Queue_advance_processor Works on items that are assigned by the
system from one or more work queue inboxes.
Additionally, selects tasks to work on from one
or more work queue inboxes.
Queue_manager Monitors work queues, assigns roles to queues,
and assigns users to work on queue items.
Queue managers can reassign, and suspend
tasks.
516 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Workflows, Work queues, and Lifecycles
Lifecycles
A lifecycle defines a sequence of states a file can encounter. Typically, lifecycles are designed for
documents to describe a review process. For example, a user creates a document, sends it off to other
users for review and approval. The lifecycle defines the state of the file at each point in the process.
The lifecycle itself is created using Documentum Composer and is deployed in the repository
as part of an application. Documentum Administrator manages the lifecycles that already exist
in a repository. All lifecycle procedures are accessed through the Tools menu in Documentum
Administrator.
References
Documentum Administrator User Guide contains the information and instructions on the following:
• Starting a workflow
• Sending a quickflow
• Viewing workflows
• Pausing a workflow
• Resuming a paused workflow
• Stopping a workflow
• Emailing the workflow supervisor or a workflow performer
• Processing a failed task in a workflow
• Changing the workflow supervisor
• Saving workflow information as a Microsoft Excel spreadsheet
• Viewing aggregated report for workflow performance
• Creating a workflow template
• Configuring the workflow agent
• Setting up a new work queue
• Setting up work assignment matching
• Understanding work queue policies
• Defining a queue category
• Defining a work queue
• Defining work queue override policies
• Managing work queue users
• Monitoring work queues
• Creating business calendars
• Assigning a lifecycle to a file
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 517
Workflows, Work queues, and Lifecycles
518 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Chapter 28
Performance and Tuning
This chapter provides recommendations and best practices to help you improve the overall
performance of the Documentum platform.
Note: The best practices and/or test results are derived or obtained after testing the product in the
OpenText testing environment. Every effort is made to simulate common customer usage scenarios
during performance testing, but actual performance results will vary due to differences in hardware
and software configurations, data, and other variables.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 519
Performance and Tuning
High availability Documentum server clusters — Server clusters (also called server sets) can be
active-active or active-passive. In an active-active cluster, there are two active load-balanced web
application servers, two active sets consisting of a Content Server and connection broker, one active
RDBMS with clustered standby server, one primary database with one synchronized standby, and
one primary content store with one synchronized standby. In an active-passive cluster, everything
is the same, except that there is only one active server plus connection broker set, with another
set as standby.
These cluster configurations provide partial high availability coverage with increased scalability.
The clusters can be managed with Documentum Administrator.
Disaster recovery — Disaster recovery is not the same as high availability. It assumes a total loss of
the production data center. Disaster recovery servers are separate and independent from the main
center. They share no resources, and each has an independent network infrastructure for WAN
replication. Both systems have the capacity to carry out full normal and emergency workloads. They
must be maintained to be compatible.
Failover for disaster recovery is manual, not automatic.
Enhancing query performance — Documentum Administrator User Guide describes how to monitor
query performance using the Update Statistics administration tool. It also describes how to limit
poorly performing subqueries for users who belong to many groups.
520 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Performance and Tuning
Type caching
With the type caching enhancements in Documentum 7.0, every session shares types from a global
cache thereby improving memory usage, which in turn can yield better concurrency and scalability.
You can apply the following best practices for better performance when a large number of types are
used.
Concurrency
• Unlike earlier versions of Documentum, the concurrency in Documentum 7.0 is not limited by the
availability of memory on the Content Server when a large number of types were used. With the
gains in concurrency seen in Documentum 7.0 for such use cases, additional physical memory
can be added to get more concurrency. Here is an observation using a low level DFC-based test
dealing with 1000 types of varying hierarchies.
• The bottleneck is more likely the server session limitation for a single Content Server. The
maximum number of sessions (that can run type related operations) on a single Content Server is
still limited by the max_concurrent_sessions setting on the server.
• Read the database tuning guidelines as performance in type caching can be vastly improved
by database tuning.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 521
Performance and Tuning
LDAP synchronization
LDAP integration for automated users and group management and authentication has become
a common practice. In Documentum deployments using LDAP integration, user and group
synchronization with Content Server repository has to perform well with minimal impacts to a
live Documentum system. This section covers some tuning tips and best practices for the new
LDAP Nested Group Synchronization (LDAP NG) feature in Documentum 7.0, to better utilize
and schedule LDAP NG jobs.
522 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Performance and Tuning
To achieve the highest synchronization throughput (and speed), it is recommended to set a value
that is best suited for the number of CPU cores in the host where Content Server is installed.
• The following table lists some observations on a host based on a Windows 2008 R2 based VM
template with 8 GB of RAM.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 523
Performance and Tuning
Content
Four Cores
Server
Number of 2 5 10 20 25
Parameters threads
Heap size 1024 1024 1024 1024 1024
Sync time 90 56 33 25 30
(minutes)
Through- 4.8 7.7 12.8 16.8 14.4
put (per
second)
524 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Performance and Tuning
• There is very little performance impact by extending the group entry size and hierarchy levels.
CPU and memory are not affected by the larger size of LDAP. From the test results, it can be seen
that the LDAP NG synchronization speed depends only on the number of Content Server cores
and job working threads.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 525
Performance and Tuning
Database tuning
• If the repository database is Oracle, then Oracle initialization parameter Cursor sharing should be
set to FORCE. It could reduce SQL hard parses, improve library hit (from 0 to 99 percent), and
reduce oracle CPU utilization (from 50 to 20 percent). By setting this parameter, the throughput of
traditional synchronization jobs will also improve.
• High redo activity is also seen during the running of a job. You can increase the redo log size or
number of redo logs to alleviate commits times.
526 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Performance and Tuning
The session management enhancements have different levels of gains based on how sessions are
created and used by the client transactions. The following list shows three classes of session usage:
• A: Reuse the existing connection (server session) and no authentication requirement (the same
user).
• B: Reuse the existing connection (server session) and perform authentication.
• C: Create a new connection (server session).
The performance implications in Documentum 7.0 for the three classes if session usages are below:
• The number of connections is much smaller in Documentum 7.0 than Documentum 6.7
(connections will no longer be occupied in the Level-1 pool).
• A user is more likely to reuse the other user’s session (class B) than to reuse his own session
(class A).
• When you access the Content Server in a later transaction, your previous connection would have
been used by others already. This will slightly affect the response time performance because
additional authentication is required (the average response time of class A is generally smaller
than that of class B).
• The average time of class B transactions is reduced from Documentum 6.7 to Documentum 7.0,
due to more efficient context switching.
• For a large number of concurrent users, the number of class C transactions is smaller because of
the following two reasons:
1. The default value of the dfc.session.reuse_limit parameter is increased from 100 to 5,000, so a
connection can be reused for more times before closed.
2. The connections in the Level-1 pool will not be closed by force (thereby saving on
creating/closing of connections), by using a more graceful queue algorithm.
In a Windows-based test involving short-living sessions, substantial gains were seen in response
times when using the following settings:
dfc.session.reuse_limit 5000
dfc.connection.reuse_threshold 50
dfc.connection.cleanup_check_window 180
dfc.connection.queue_wait_time 500
dfc.session.max_count 1000
concurrent_sessions 100
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 527
Performance and Tuning
In the same test, Documentum 7.0 also consumed less system resource than Documentum 6.7, as
shown by the following charts:
528 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Performance and Tuning
1. Increase the physical memory to fine tune the JVM memory requirements.
java_options = "-Xms32M -Xmx64M -XX:PermSize=64m
-XX:MaxPermSize=256m -XX:+UseSerialGC"
2. The operating system has restriction of only 4096 file descriptors per user.
Edit /etc/security/limits.conf and set the following:
csuser soft nofile 8192
csuser hard nofile 16384
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 529
Performance and Tuning
3. The kernel limits the number of user processes per user to 40.
Edit /etc/security/limits.conf and set the following:
csuser soft nproc 2047
530 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Appendix A
System Events
This appendix lists and describes the system events recognized by Content Server. You can register
most of these events for auditing. You can also use an IDfSysobject.registerEvent method to register
to receive an Inbox notification for any of the DFC, workflow, or lifecycle events.
Those events which cannot be registered for auditing or notification are noted in their descriptions.
This appendix contains the following topics:
• dm_default_set event, page 531
• DFC events, page 532
• Workflow events, page 536
• Lifecycle events, page 539
• Events sent to the fulltext user, page 540
dm_default_set event
This dm_default_set events are audited by default. The following table describes the events.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 531
System Events
DFC events
The following table describes the events arising from DFC methods. Events arising from methods
that are specific to workflows are described in Workflow events, page 536.
532 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
System Events
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 533
System Events
534 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
System Events
appendContent appendFile
bindFile iInsertFile insertContent
setContent setPath
dm_setoutput dm_process Setoutput Execution of a Setoutput method.
dm_setretention- dm_retainer Set Retention Change to status of a retainer
status Status object.
dm_signoff dm_sysobject Signoff Execution of a signoff method
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 535
System Events
Workflow events
The following table describes the events specific to workflows. Several API events described in DFC
events, page 532 are also applicable to workflows.
536 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
System Events
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 537
System Events
It is not possible to
register for this event.
dm_save_ Not applicable Not applicable Generated when a
workqueuepolicy workqueue policy
object is saved by the
Workqueue SBO.
It is not possible to
register for this event.
dm_selectedworkitem dm_process Select Workitem A work item is
acquired.
dm_startworkflow dm_process Start Workflow A workflow is started.
dm_startedworkitem dm_process Start Workitem A work item is
generated.
dm_suspended- dm_process Suspend Workqueue A task on a workqueue
workqueuetask Tasks is suspended.
538 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
System Events
Lifecycle events
Table 163, page 539 lists the events specific to lifecyles.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 539
System Events
540 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Appendix B
Populating and Publishing the Data
Dictionary
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 541
Populating and Publishing the Data Dictionary
[NLS_FILES]
NLS_data_dictionary_data_file_1
NLS_data_dictionary_data_file_2
. . .
NLS_data_dictionary_data_file_n
The non-NSL data dictionary files contain the data dictionary information that is not specific to a
locale.
The NLS data dictionary files contain the information that is specific to a locale.
542 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Populating and Publishing the Data Dictionary
You can include any number of data files in the initialization file. Typically, there is one file for the
non-NLS data and an NLS data file for each locale. You can reference the data files by name or full
path specification. If you reference a data file by name only, the data file must be stored in the same
directory as the population script or it must be in %DM_HOME%\bin ($DM_HOME/bin).
File structure
Each data file consists of sections headed by keywords that identify the object type and, if you are
defining information for a property, the property. Additionally, an NLS file must identify the locale
at the beginning of the file.
To specify the locale in an NLS file, place the following key phrases as the first line in the file:
• LOCALE=locale_name CODEPAGE=codepage_name
locale_name is defined as a string of up to five characters. When the locale is defined in a file, the
server resets the current session locale to the specified locale and the information in that data file is
set for the given locale.
codepage_name is the name of the code page appropriate for the specified locale.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 543
Populating and Publishing the Data Dictionary
Table 164. Locale-based configuration settings for the data dictionary files installed with Content Server
default_client_
codepage and
Locale locale_name codepage_name server_os_codepage
Arabic ar ISO-8859-6 ISO-8859-6
English en ISO-8859-1 ISO-8859-1
Chinese (Simplified) zh MS936 MS936
Dutch nl ISO-8859-1 ISO-8859-1
French fr ISO-8859-1 ISO-8859-1
German de ISO-8859-1 ISO-8859-1
Italian it ISO-8859-1 ISO-8859-1
Japanese ja Shift_JIS On Windows: Shift_JIS
On UNIX: EUC-JP
Korean ko EUC-KR EUC-KR
Portuguese (Brazilian) pt ISO-8859-1 ISO-8859-1
Russian ru Windows-1251 Windows-1251
Spanish es ISO-8859-1 ISO-8859-1
Swedish sv ISO-8859-1 ISO-8859-1
On clients, the Shift_JIS code page supports the NEC extensions.
If you want to define information for multiple properties of one object type, specify the type only
once and then list the properties and the settings:
TYPE=type_name
property=property_name
data_dictionary_property_settings
{property=property_name
data_dictionary_property_settings
The setting for one data dictionary property settings must fit on one line.
The Summary of settable data dictionary properties, page 545 section, lists the data dictionary
properties that you can set in data files. Examples of data file entries, page 549, shows some examples
of how these are used in a data file.
544 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Populating and Publishing the Data Dictionary
Data dictionary information is stored in the repository in internal object types. When you set data
dictionary information, you are setting the properties of these types. Some of the information applies
only to object types, some applies only to properties, and some can apply to either or both.
Table 165, page 545, lists and briefly describes the data dictionary properties that you can set using a
population script.
Including REPORT
(not_null_msg)
or ENFORCE
(not_null_enf) is
optional. If you
include both,
REPORT must
appear first.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 545
Populating and Publishing the Data Dictionary
COMMENT is
optional.
VALUE and
DISPLAY must be
set. Set each once
for each value that
you want to map.
Examples of data
file entries, page
549 contains an
example.
life_cycle LIFE_CYCLE= integer Object type No Valid values are:
Value Meaning
• Currently in use
• Obsolete
label_text LABEL_TEXT Object type Yes None
property
help_text HELP_TEXT Object type Yes None
property
comment_text COMMENT_TEXT Object type Yes None
property
is_searchable IS_SEARCHABLE Object type No None
property
546 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Populating and Publishing the Data Dictionary
Including REPORT
(primary_key_msg)
or ENFORCE
(primary_key_enf)
is optional. If
you include both,
REPORT must
appear first.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 547
Populating and Publishing the Data Dictionary
Including REPORT
(unique_key_msg)
or ENFORCE
(unique_key_enf)
is optional. If
you include both,
REPORT must
appear first.
548 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Populating and Publishing the Data Dictionary
FOREIGN_KEY=
type(attr)
REPORT=string
ENFORCE=string
Like other keys, you can set a foreign key at either the type level or the property level.
If you set the key at the type level, you must identify which property of the type participates in the
foreign key and which property in another type is referenced by the foreign key. The key phrase
FOREIGN_KEY defines the property in the object type that participates in the foreign key. The
keyword REFERENCES defines the property which is referenced by the foreign key. For example,
suppose a data file contains the following lines:
TYPE=personnel_action_doc
FOREIGN_KEY=user_name
REFERENCES=dm_user(user_name)
These lines define a foreign key for the personnel_action_doc subtype. The key says that a value in
personnel_action_doc.user_name must match a value in dm_user.user_name.
To define the same foreign key at the property level, the data file would include the following lines:
TYPE=personnel_action_doc
property=user_name
FOREIGN_KEY=dm_user(user_name)
REPORT and ENFORCE are optional. If you include both, REPORT must appear before ENFORCE.
Valid values for ENFORCE are:
• application
• disable
Here is an excerpt from a data file that sets non-NLS data dictionary information:
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 549
Populating and Publishing the Data Dictionary
This excerpt is from a data file that defines data dictionary information for the English locale.
#This sets the locale to English.
LOCALE = en
CODEPAGE = ISO_8859-1
550 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Populating and Publishing the Data Dictionary
property = a_effective_date
LABEL_TEXT = Effective Date
property = a_expiration_date
LABEL_TEXT = Expiration Date
property = a_effective_flag
LABEL_TEXT = Effective Flag
property = a_publish_formats
LABEL_TEXT = Publish Formats
property = a_category
LABEL_TEXT = Category
property = language_code
LABEL_TEXT = Language Code
property = authors
FOREIGN_KEY = dm_user(user_name)
REPORT = The author is not found in the repository.
ENFORCE = application
# Set property information for dmr_containment
TYPE = dmr_containment
property = a_contain_type
LABEL_TEXT = Containment Type
property = a_contain_desc
LABEL_TEXT = Containment Description
# Set property Information for dm_assembly
TYPE = dm_assembly
property = path_name
LABEL_TEXT = Path Name
# Set property Information for dm_relation
TYPE = dm_relation
property = r_object_id
LABEL_TEXT = Object ID
property = relation_name
LABEL_TEXT = Relation Name
property = parent_id
LABEL_TEXT = Parent ID
property = child_id
LABEL_TEXT = Child ID
property = child_label
LABEL_TEXT = Child Label
property = permanent_link
LABEL_TEXT = Permanent Link
property = order_no
LABEL_TEXT = Order Number
property = effective_date
LABEL_TEXT = Effective Date
property = expiration_date
LABEL_TEXT = Expiration Date
property = description
LABEL_TEXT = Description
This final example sets some constraints and search operators for the object types and their properties.
TYPE = TypeC
PRIMARY_KEY = Attr2, Attr3
REPORT = The primary key constraint was not met.
ENFORCE = application
UNIQUE_KEY = Attr2, Attr3
REPORT = The unique key constraint was not met.
ENFORCE = application
FOREIGN_KEY = Attr1
REFERENCES = TypeA(Attr1)
REPORT = TypeC:Attr1 has a key relationship with TypeA:Attr1
ENFORCE = disable
IS_SEARCHABLE = True
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 551
Populating and Publishing the Data Dictionary
TYPE = TypeC
property = Attr1
ALLOWED_SEARCH_OPS = =,<,>,<=,>=,<>, NOT, CONTAINS, DOES NOT CONTAIN
DEFAULT_SEARCH_OP = CONTAINS
DEFAULT_SEARCH_ARG = 3
TYPE = TypeD
LIFE_CYCLE = 3
PRIMARY_KEY = Attr1
REPORT = Attr1 is a primary key.
ENFORCE = disable
LABEL_TEXT = label t TypeD
HELP_TEXT = help TypeD
COMMENT_TEXT = com TypeD
IS_SEARCHABLE = True
UNIQUE_KEY = Attr1
REPORT = Attr1 is a unique key.
ENFORCE = application
FOREIGN_KEY = Attr1
REFERENCES = TypeC(Attr1)
REPORT = Attr1 has a foreign key relationship.
TYPE = TypeE
property = Attr1
IGNORE_IMMUTABLE = True
NOT_NULL
ENFORCE = application
ALLOWED_SEARCH_OPS = CONTAINS, DOES NOT CONTAIN
DEFAULT_SEARCH_OP = CONTAINS
DEFAULT_SEARCH_ARG = 22
READ_ONLY = True
IS_REQUIRED = True
IS_HIDDEN = True
LABEL_TEXT = property 1
HELP_TEXT = This property identifies the age of the user.
COMMENT_TEXT = You must provide a value for this property.
IS_SEARCHABLE = False
UNIQUE_KEY
FOREIGN_KEY = TypeB(Attr1)
REPORT = This has a foreign key relationship with TypeB:Attr1
ENFORCE = application
FOREIGN_KEY = TypeC(Attr2)
REPORT = This has a foreign key relationship with TypeC:Attr2
ENFORCE = application
552 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Populating and Publishing the Data Dictionary
username is the name of the user executing the script. The user must have system administrator or
superuser privileges.
password is the user’s password.
ini_filename is the name of the initialization file that contains the data files. This can be a full path
specification or only the file name. If you include just the file name, the file must be in the same
directory as the population script.
where localename is the name of the locale. For example, the data file for the German locale is
named data_dictionary_de.txt.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 553
Populating and Publishing the Data Dictionary
554 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Populating and Publishing the Data Dictionary
The Data Dictionary Publisher job is installed with the Documentum tool suite.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 555
Populating and Publishing the Data Dictionary
556 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Appendix C
High-Availability Support Scripts
OpenText Documentum provides a set of scripts that monitor processes to determine whether a given
process is running or stopped. These scripts are installed when a Content Server installation is
created. The scripts can be programmatically invoked from any commercial system management and
monitoring package. This appendix describes the scripts and which processes they affect.
• Monitoring scripts, page 557
• Processes not requiring a script , page 560
Monitoring scripts
Monitoring scripts are provided for Content Server, the connection broker, the Java method server,
and for the Index Agent.
The scripts must be run as the Documentum Content Server installation owner. Each script returns
success (the monitored process is running) as 0 or failure (the monitored process is stopped) as a
non-zero value.
Table 166, page 557, lists the processes that have monitoring scripts, the script names, and their
locations and command-line syntax.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 557
High-Availability Support Scripts
558 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
High-Availability Support Scripts
get,c,l,method_verb ./dm_agent_exec
(Unix) or .\dm_agent_exec.exe (Windows)
set,c,l,method_verb ./dm_agent_exec
-enable_ha_setup 1 (Unix) or
.\dm_agent_exec.exe -enable_ha_setup 1
(Windows) save,c,l
2. Kill the existing dm_agent_exec process.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 559
High-Availability Support Scripts
560 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Appendix D
Consistency Checks
General information
Consistency checks executed by the consistency checker job are sorted into tables that describe the
checks on a particular area of the repository. Each table includes the following information:
• Consistency check number
Each consistency check has a unique number. When an inconsistency is reported, the report
includes the consistency check number and some information about the particular inconsistency.
For example:
WARNING CC-0001: User docu does not have a default group
• Description
• Severity level
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 561
Consistency Checks
ACL checks
The consistency checks in the following table apply to ACLs.
562 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Consistency Checks
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 563
Consistency Checks
SysObject checks
The consistency checks in the following table apply to SysObjects.
564 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Consistency Checks
Document checks
The consistency checks in the following table apply to documents.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 565
Consistency Checks
Workflow checks
The consistency checks in the following table apply to workflows.
566 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Consistency Checks
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 567
Consistency Checks
Lifecycle checks
The consistency checks in the following table apply to document lifecycles.
568 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Consistency Checks
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 569
Consistency Checks
570 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Appendix E
Plug-in Library Functions for External
Stores
General recommendations
The following sections describe the C functions that you must implement to support Content Server
operations through the plug-in:
• Call dm_init_content once when the plug-in is loaded. Call dm_plugin_version once after the
plug-in is loaded.
• Use dm_open_content once for each getFile or getContent operation. Use dm_read_content
multiple times to read the content in 16k blocks.
• Use dm_close_content once for each dm_open_content call.
• Use dm_close_all once in a session, and call dm_deinit_content once before the plug-in is
unloaded.
• You can find sample code for a plug-in the unsupported directory.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 571
Plug-in Library Functions for External Stores
dm_close_all
The dm_close_all function is called by the plug-in when a session is terminated. The function is called
to let the plug-in library cleanup any internal data structure(s) for the specified session.
The function definition is:
void dm_close_all (long session)
Argument Description
session Identifies the terminated session.
dm_close_content
The dm_close_content function is called by the plug-in to perform internal cleanup. This function
is called after the read operation for the supplied handle is completed or or if the read operation is
interrupted. The function returns a boolean value.
The function definition is:
BOOL dm_close_content (long handle)
The following table describes the argument for the dm_close_content function.
Argument Description
handle Identifies the read request.
dm_deinit_content
The dm_deinit_content function performs global internal cleanup operations. The function is called
just before the server or client unloads the plug-in library, to let the plug-in perform any global
internal cleanup operations.
The function definition is:
void dm_deinit_content(void)
dm_init_content
The dm_init_content function initializes internal data structures. This is the first function called by
Content Server after the plug-in library is loaded.
572 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Plug-in Library Functions for External Stores
The following table describes the arguments for the dm_init_content function.
Argument Description
maxsession Contains the maximum number of concurrent sessions.
mode Indicates who is invoking the plug-in. The only valid value is 0,
indicating the server.
The function returns a positive value for successful initialization. A negative return value forces
the server to unload the plug-in library. This function should return a positive value when called
multiple times within the same address space.
dm_open_content
The dm_open_content function retrieves content.
The function definition is:
BOOL dm_open_content ( long session, char *other_args,
char *token, char *store_object_id, void *callback,
long *handle, long errcode)
The following table describes the arguments for the dm_open_content function.
Argument Description
session Indicates the session that needs to retrieve the content.
other_args Indicates the other_args supplied when executing a Mount method.
NULL for the dm_extern_url, dm_extern_free storage types and when
the ’token’ specified in a Setpath operation is an absolute path.
token Is the path-translated token for which to retrieve the content.
store_object_id Indicates the external storage object ID.
callback Is a function pointer that can be called by the plug-in library to retrieve
an attribute value for the supplied external storage object ID.
handle Identifies the read request. Filled in on initiaization and passed for
subsequent read operations.
errcode Contains error code in case of failure.
The plug-in DLL or shared library returns a positive value for successful initialization and fills in a
value for the handle. For subsequent read operations for this token, the handle value is passed. In
case of failure, the plug-in fills in an error code in errcode.
This function is called when the server or client needs to retrieve the content for the token.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 573
Plug-in Library Functions for External Stores
The handle enables the plug-in to be a multi-threaded application with each thread servicing a
particular read request, with a dispatching mechanism based on the handle value. For example, for
dm_extern_file store objects, other_args is the root path.
For client side plug-in configurations, if the Mount method has not been issued, the other_args
parameter is a pointer to the directory location represented by the def_client_root attribute.
For server side plug-in configurations, other_args points to the directory represented by the a_location
value for the current sever configuration. If no a_location is configured for the current server
configuration, it points to the directory represented by the def_server_root attribute.
The call back function (which is part of server and client) is of the form:
char *dmPluginCallback (long session, char *store_object_id,
char *attr_name, int position)
The call back function returns an attribute value in string form. The value for the position parameter
should be zero when requesting an attribute value for an single-valued attribute and should be zero
or greater for multi-valued attributes.
When this callback function is called for DM_TIME datatype attribute values, the returned string
format is mm/dd/yyyy hh:mi:ss.
Plug-in libraries can define the function pointer type as follows:
typedef char * (*DCTMPLUGINCALLBACK)(long, char *,char *,int)
dm_plugin_version
The dm_plugin_version function enables backward compatibility for enhancement in future releases.
This function is called once immediately after the plug-in is loaded into the process address space.
The plug-in protocol version is 1.0. Therefore, the plug-in must set ’major’ to 1 and ’minor’ to 0.
The definition of this function is:
void dm_plugin_version(unsigned int *major, unsigned int *minor)
The following table describes the arguments for the dm_plugin_version function.
Argument Description
major The major version number of the plug-in. The value of this argument
must be 1.
minor The minor version number of the plug-in. The value of this argument
must be set to 0.
574 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Plug-in Library Functions for External Stores
dm_read_content
The dm_read_content function requires the plug-in to return the content data into the location
pointed to by buffer supplied.
The definition of this function is:
long dm_read_content ( long handle, char *buffer,
long buffer_size, long *more_data, long *errcode)
The following table describes the arguments for the dm_read_content function.
Argument Description
handle Identifies the read request.
buffer Contains the location to return the content data; filled with zeros when
there is no more content to be read or end-of-file is reached.
buffer_size Contains the buffer size (16k).
more_data When positive, indicates more reading is required.
errcode Contains error code in case of failure.
The function returns the number of bytes read and filled into buffer.
The plug-in must maintain its own internal bookkeeping to start reading from the next byte after
the previous read.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 575
Plug-in Library Functions for External Stores
576 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
Appendix F
AMP and Usage Tracking
Connecting to AMP
AMP collects and displays usage tracking information gathered by the Content Server global registry.
It is recommended that you install AMP to access usage tracking data. AMP provides reports not
available with Content Server alone, it allows you to collect usage tracking data from more than one
global registry, and it can be configured to work with other products.
Required information
AMP requires the following information to collect usage tracking information:
• Host-The hostname or IP address of the host machine for the global registry.
• Username-The username to retrieve usage tracking information is dm_report_user.
• Password-The password for the user dm_report_user. At install time, this password is the same
password as specified for the user dm_bof_registry.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 577
AMP and Usage Tracking
• JMS Port-The port for the Java Method Server installed for the global registry. The default port
number is 9080.
• Global Registry-The name of the repository used as a global registry. This is the repository name
specified when the global registry was configured.
To create a policy:
1. Log in to AMP.
2. Select Administration > Policies > Create New.
3. In the Policy Name field, enter a name for the policy.
4. Select Documentum from the Products list.
5. Fill in the information for the Registry Information: Host, Username, Password, JMS Port,
and Global Repository.
6. Select Add.
The Registries box displays the registry information you have entered. Enter additional global
registries, if desired.
7. Enter the information for the Scan Frequency and select Save.
8. Select the green arrow icon left of the policy name to run the policy now (if desired). The status
bar indicates that policies are running.
After the policy has completed successfully, view the data by selecting Documentum and
viewing the information.
Usage Tracking
When a user logs into Content Server, the system makes an entry in a table managed by Content
Server global registry. If this is the first time a user has logged in, a new line is added to the table that
records the login name of the user, the name of the application used to log in, and the time of the
login. Consequent logins replace the latest use time and the login count in the table.
When a user logs into a Documentum application, that application, in turn, logs into Content
Server with the credentials of the user. Therefore, one login to an application that supports usage
tracking creates or modifies two lines in the table, one line for the application login and one line
for the Content Server login. If you use an application that does not support usage tracking, only
the Content Server line is created or modified.
For example, if a user logs in to Webtop, there are two lines modified in the global registry. One line
shows the Webtop login and one line shows the Content Server login, since Webtop supports usage
578 OpenText Documentum Content Server 7.3 Administration and Configuration Guide
AMP and Usage Tracking
tracking. If a user logs in to Content Server using IDQL, there is only one line modified to show the
Content Server login, because IDQL does not support usage tracking.
OpenText Documentum Content Server 7.3 Administration and Configuration Guide 579
AMP and Usage Tracking
Specific login times for a user can be obtained from the user object on the Content Server that the
user logged into. That particular Content Server is not necessarily the global registry that is used for
usage tracking.
580 OpenText Documentum Content Server 7.3 Administration and Configuration Guide