Subject Re: [firebird-support] Does Firebird 2.0 requiere exclsuive access to create indexes?
Author Vlad Khorsun
> Hi there, four days ago I upgraded a database from FB 1.5 to 2.0. I
> recall that in version 1.5, exclusive access for tables was not
> required when creating new indexes. Now with 2.0 it seems the case, as

Firebird take read lock on table before create any index. This is guaranteed
no new keys will be inserted during index creation. All readers is not blocked,
only writers will be blocked until index creation finished.

I don't remember in which exact version this was introduced but it defenitely
was not in FB 1.5 - i.e. before this change newly created index may contain
keys not for all records.

> I get an error when creating a new index for the TRACKING table:
>
> Unsuccessful execution caused by system error that does not preclude
> successful execution of subsequent statements.
> lock conflict on no wait transaction.
> unsuccessful metadata update.
> object TRACKING is in use.

Use wait transaction. And ensure you have no long running transaction
which writes to this table.

Regards,
Vlad