Log file tables configuration for the Workflow Manager workspace in SQL Server

Complexity: Beginner Data Requirement: ArcGIS Tutorial Data for Desktop

Enterprise geodatabases use log file tables to maintain lists of selected records. Records are written to log file tables for later use by the application whenever a selection of a specific size is made, a reconciliation or post on a versioned database is performed, or a disconnected editing checkout is done in a client application. The log file tables store the ObjectIDs of the selected features so they can be redisplayed. This allows faster analysis and processing of information.

In ArcGIS, by default, log file tables are used if the selection set contains 100 or more records. ArcMap or any application, such as Workflow Manager, that runs on top of ArcMap, which performs selection sets, uses these log file tables. ArcSDE keeps track of large selections using the log file tables instead of the records being held in memory. The same applies when sorting, selecting, or updating records in the Workflow Manager tables. This selection threshold of 100 features is set in the registry. Although it can be changed, Esri does not recommend doing so. There is no proven performance reason for changing it, and doing so could even cause performance problems. Thus, log file tables store feature selections in ArcMap that have more than 100 records for each connected ArcSDE editor/viewer user.

Common configuration options

For SQL Server, the default log file configuration is session-based log files created in the temporary database (tempdb).

In most cases, the default ArcSDE log file table configuration for your database management system (DBMS) should be sufficient and is the recommended setting.

Another common option is the shared log files. You would only use shared log files if you do not want to create tables in the tempdb, you have a large number of concurrent sessions, and each session connects using an individual DBMS account.

Either configuration option is acceptable for the Workflow Manager workspace, but if you choose to store the log tables in the user schema (shared log files), instead of the tempdb (session-based), be sure to give CREATE TABLE privileges to each user accessing the Workflow Manager tables.

Settings to control storage

Log file options are set using specific parameters in the SDE_server_config and SDE_dbtune tables.

For session-based log files, the DBTUNE SESSION_TEMP_TABLE parameter must be set to 1 (true) to allow the session-based log file table to be created in tempdb. For shared log files, changing the SESSION_TEMP_TABLE parameter to be 0 (false) will create the SDE_LOGFILES, SDE_LOGFILE_DATA, and SDE_SESSION<SDE_ID> tables in the connecting user's schema; hence, the user requires CREATE TABLE permission.

Parameters in these tables are altered using the sdeconfig and sdedbtune commands, respectively. In SQL Server, the table created in tempdb is in the format ##SDE_SESSION<SDE_ID>. This table is truncated when the connecting application deletes its log files, and the table is dropped when the session disconnects. When using the default setting, users do not require CREATE TABLE permission in the database for the session table to be created in tempdb.

Related Topics

3/3/2014