Subject Re: [Firebird-Architect] Bulk loader.
Author Martijn Tonies
Jim,

> Falcon handles those with in-memory, per-transaction structures called
> deferred indexes. Deferred indexes are search as per transaction
> visibility rules; for duplicate detection, all are searched. At commit
> time, the transaction's deferred indexes are squirted into the serial
> log in key order. The gopher thread does the index merge post-commit,
> after which point the deferred index object can be flushed. Firebird,
> of course, doesn't have a serial log, but the index merge idea could be
> adapted for superserver or Vulcan, but not classic.

Out of interest, do these "deferred indexes" also fix the issue that
Firebird is having with

update mytable set pkcol = pkcol + 1

Currently, this isn't possible, but if it's checked again at commit time
instead of right away, I can see this problem go away.

Martijn Tonies
Database Workbench - tool for InterBase, Firebird, MySQL, NexusDB, Oracle &
MS SQL Server
Upscene Productions
http://www.upscene.com
My thoughts:
http://blog.upscene.com/martijn/
Database development questions? Check the forum!
http://www.databasedevelopmentforum.com