gbak can't activate unique key index when field is null
--------------------------------------------------------
Key: CORE-3675
URL: http://tracker.firebirdsql.org/browse/CORE-3675
Project: Firebird Core
Issue Type: Bug
Components: GBAK
Affects Versions: 2.5.1
Environment: windows 2008 and seven, debian, ubuntu desktop oneiric
Reporter: Edson Teixeira Marques
The situation is as follows:
A table has an alternate key constraint (unique). The expression of key is
composed of four distinct fields of the table. In two rows from the table, the
field of order 2 (in the expression of key), has the following "values" (in
quotes because is "null" is not value):null and ''(empty) respectively. That
is, in the record 'n' the field is set to null, in the record n+1 the same
field have the value''(empty). The other values of the other fields
components of the alternate key in these records have values equal to each
other. As illustrated below:
TABLE1
FIELD_A, FIELD_B, ..., FIELD_1 | FIELD_2 | FIELD_3 | FIELD_4, ..., FIELD_n
--------------------------------------------------
-----------------------------------------------
...
any, any, ..., any | any | any | any, ..., any
any, any, ..., x | null | y | z, ..., any
any, any, ..., x | | y | z, ..., any
any, any, ..., any | any | any | any, ..., any
...
--------------------------------------------------
-----------------------------------------------
('any': any values, different from each other. x, y and z can be any value,
but equals in the two rows)
What happens is that when I recover a ".fbk" of this database, gbak can not
activate the alternate key index coposed by FIELD_1, FIELD_2, FIELD_3 and
FIELD_4, because it believes there may be a violation of the unique key
constraint, however, if the TABLE1 does not have any records (no data), gbak,
obviously, can recover the database and enable the constraint and, in this
situation, I can insert all these records with all these values (that gbak
couldn't recover previously), and there's no unique key violation.
This issue has been identified in firebird 2.5.1. We tested the same database
in firebird 2.5.0 and this problem did not happen.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://tracker.firebirdsql.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure
contains a definitive record of customers, application performance,
security threats, fraudulent activity, and more. Splunk takes this
data and makes sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-novd2d
Firebird-Devel mailing list, web interface at
https://lists.sourceforge.net/lists/listinfo/firebird-devel