Simplifying CM:
Expanding
Possibilities
April 2009

Release News

Multi-threading server update

One of the sites which experienced multi-threading problems with the earlier 1.82 releases, has been running 1.82.06 without problems for three weeks now. Compared with pre-1.82 releases, 1.82.06 provides improved multi-user responsiveness and ability to utilize multicore systems. If you've been waiting for someone else to try it out first, now it's your turn.

What are the background tasks?

The SnapshotCM server's background thread has been present at least since the July, 2005 release. In the 1.82.06 release, it becomes more visible because of additional logging. Hence the question, what are the background tasks doing?

The background thread executes two tasks. The first looks for unreferenced files to clean up. When a file is marked deleted in all referencing snapshots, the cleanup of the history is delayed 30 days after the last active reference is removed. This allows time to recover deleted files, while still eventually cleaning up files that users really don't want any more. Note that as long as any snapshot has an active reference to any revision of a file, all revisions of that file will be kept. Only 30 days after the last active revision is unlinked or deleted will the cleanup occur.

The second background task compresses new large files and file versions. Large files are stored by the server as a separate file per revision. These files are initially stored as received (for better checkin performance) and the background task compresses these files. Compression saves space, and improves check out performance as the client does the expand.

Both tasks run in a measured way so as not to affect server responsiveness.

Release 1.82.06 increases the amount of logging performed. Earlier releases only logged the background thread start and stop. Now, each task start and stop is also logged.

Duplicate predecessor/success relationships

After updating to 1.82, dbck may report the following message:

Duplicate predecessor/successor relationship detected: ItemId=671272, revs=2,4.

This message indicates that a relationship between between two revisions is recorded twice in the database. This is a result of a long-time non-critical defect which created these in some cases of merge. Release 1.82 fixes the root problem and dbck was updated to detect and optionally fix these. Simply stop your server and run "dbck -y" to fix the problems. If you don't fix the problem after upgrading to 1.82, history may show duplicate information for the revisions indicated.

If you have any further questions about this release, please contact us.

Mailing Address: True Blue Software Company - 5214 Keystone Creek Ct. - Fort Collins, CO 80528-8556 - USA
Telephone: 970-223-1200 - FAX: 970-223-9270
E-Mail: sales@truebluesoftware.com - support@truebluesoftware.com

© 2010 True Blue Software Company. All rights reserved.