ADMINISTERING


Indexer tasks: Update and Updall

The Update and Updall tasks keep view indexes and full-text indexes up-to-date.

Update

Update is loaded at server startup by default and runs continually, checking its work queue for views and folders that require updating. The indexer uses modest system resources by waiting five seconds between each database update operation that is performs.

The Update task performs three different updating tasks:


Update maintains two queues of work -- an immediate queue and a deferred queue. Other server components, such as the router and replicator, post requests to the updater when changes are made to databases. Some requests are posted as deferred and some as immediate.

Table 1. Full-text index updates by update frequency
Update frequencyDescription
DailyPerformed by the nightly Updall task. If this nightly task is not run, the daily updating is not performed.
ScheduledPerformed by a Program document which runs Updall. You need to set the frequency to Scheduled and create the proper Program document. You can also use this method to update different databases at different times.
HourlyTriggered by the chronos task and performed by the update task if the update task is running. If the update task is not running, chronos performs the update. If the chronos task is not running, the update is not performed.
ImmediatePerformed by the Update task. If Update is not running, the update is not performed. All immediate requests are processed as they are received.
Deferred Deferred requests are held for 15 minutes before they are processed. Requests to update the same database that occur in that time are ignored as duplicate requests.

When a view or folder change is recorded in the queue, Update waits approximately 15 minutes before updating all view indexes in the database so that the update can include any other database changes made during the 15-minute period. After updating view indexes in a database, it then updates all databases that have full-text search indexes set for immediate or hourly updates.

When Update encounters a corrupted view index or full-text index, it rebuilds the view index or full-text index in an attempt to correct the problem. Update deletes the view index or full-text index and rebuilds it.

To improve view-indexing performance, and if your server has adequate CPU power, you can run multiple Update tasks.

Managing the update task and its use of system resources

The indexer is able to keep up with the update rate in the server's default configuration if the server has a low update rate, that is, if few changes are made to databases on the server. If a server has a high update rate due to heavy application database use, a large number of mail users, or a large volume of mail, the default resource usage configuration can cause the updater queues to become large. If you determine that the update queues are too large, determine a methodology for performing updates on that server. Long queues typically indicate that views and full-text indexes are not up-to-date.

Here are some sample scenarios and practices that you may want to use, and the steps used to implement them.


For more information, see UPDATE_ACCESS_FREQUENCY and UPDATE_NOTE_MINIMUM as well as other NOTES.INI settings.

Updall

Updall is similar to Update, but it doesn't run continually or work from a queue; instead you run Updall as needed. You can specify options when you run Updall, but without them Updall updates any view indexes or full-text search indexes on the server that need updating. To save disk space, Updall also purges deletion stubs from databases and discards view indexes for views that have been unused for 45 days, unless the database designer has specified different criteria for discarding view indexes. Use the NOTES.INI setting Default_Index_Lifetime_Days to change when Updall discards unused view indexes.

Like Update, Updall rebuilds all corrupted view indexes and full-text search indexes that it encounters.

By default Updall is included in the NOTES.INI setting ServerTasksAt2, so it runs daily at 2 AM. Running Updall daily helps save disk space by purging deletion stubs and discarding unused view indexes. It also ensures that all full-text search indexes that are set for daily updates are updated.

Note: When views are being rebuilt -- either through the Designer or Updall tasks -- all new server sessions that are attempted once the rebuild process has started are locked out. Therefore, it is recommended that changes to master templates, as well as complete view rebuilds, be scheduled for late at night, when users are far less likely to require access to the server.

The following table compares the characteristics of Update and Updall. For Updall, the table describes default characteristics. You can also modify some of these characteristics with Updall options.

Table 2. Comparison of Update and Updall
CharacteristicUpdateUpdall
When it runsContinually after server startup2 AM and when you run it
Runs on all databases? No. Runs only on databases that have changed.Yes
Refreshes views indexes?Yes Yes
Updates full-text indexes?Yes. Updates full-text indexes set for immediate and hourly updates.Yes. Updates all full-text indexes.
Detects and attempts to rebuild corrupted view indexes? YesYes
Detects and attempts to rebuild corrupted full-text indexes?YesYes
Purges deletion stubs?NoYes
Discards unused view indexes?Yes (after a view is unused for 45 days or according to a view discard option specified by a designer)Yes (after a view is unused for 45 days or according to a view discard option specified by a designer)
Ignores "Refresh index" view property? YesYes
Can customize with options?NoYes

Related concepts
Updall options
Updating database indexes and views
NOTES.INI Settings

Related tasks
Running the Updall task
Running multiple Update tasks
Changing the temporary folder used for view rebuilds