firebird
firebird copied to clipboard
Bugcheck 183 (wrong record length) could happen on replica database after UK violation on insert
The conditions:
- replica database contains a table with Primary Key and at least one Unique Key
- the record is being inserted and violates UK (not PK!)
- the correct error is put into replication.log:
ERROR: attempt to store duplicate value (visible to active transactions) in unique index <UK name>
Problematic key value is (...)
- after replication paused and resumed the same segment is applied again
- bugcheck happens:
ERROR: internal Firebird consistency check (wrong record length (183), file: vio.cpp line: 1450)
Also, Firebird can't be stopped after such bugcheck happens
QA note. Test name: functional/replication/test_bugcheck_in_rw_replica_after_conflicting_insert.py