P4DTI issue job000335

TitleCan't update cases in a TeamTrack 5.0 database
Statusclosed
Prioritycritical
Assigned userGareth Rees
OrganizationTeamShare
DescriptionThe P4DTI stops with an error if it attempts to read certain records in a TeamTrack 5.0 database that has been converted from a TeamTrack 4.5 database.
Using TeamTrack build 5029b, I ran the "normal" test case from test_p4dti.py. It stopped with the following error:
TeamShare API error: ERROR: The 'Regular expressions don't support back-references' record could not be updated in the 'Issues' database table.
Too few parameters. Expected 1.
Exception Occured During Update
Too few parameters. Expected 1.

The same effect was observed with TeamTrack build 5034 and the API for that build.
AnalysisSee [1] for instructions on how to reproduce this.
Could this be a case of the database being corrupted during an upgrade? The database in question has been through two upgrades so far: I created it in TeamTrack 4.5, upgraded to TeamTrack 5.0 (build 5024c) and then to TeamTrack 5.0 (build 5029b).
The Windows Application Log contains three errors each time the problem occurs:

1. Exception occurred in file:
'D:\Reflex\Db\AppRecord.cpp', line 2399.
User: Id 6, 'P4DTI replicator'
The 'Regular expressions don't support back-references' record could not be updated in the 'Issues' database table.
Too few parameters. Expected 1.

2. Exception occurred in file:
'D:\Reflex\Db\AppRecord.cpp', line 2590.
User: Id 6, 'P4DTI replicator'
Exception Occured During Update
Too few parameters. Expected 1.
Last system error number: 203

3. Error occurred in file:
'D:\Reflex\Db\Field.cpp', line 1459.
CField::GetSQLType has been called with an unknown field type of 0. If you are in the middle of a Database Create or Copy, then your new database may be damaged. Please call Technical Support.
GDR 2001-06-30: TeamShare found a defect in the API that may be the cause of this [2].
GDR 2001-07-02: However, this didn't fix the problem. But the problem goes away if I delete the offending record from the CASES table (and then the P4DTI passes all the automatic test cases). This strongly suggests that the database became corrupted.
GDR 2001-07-24: This is caused by a defect in the TeamShare API. The defect is fixed in build 50101 of the TeamShare API; see [3].
How foundmanual_test
Evidence[1] <http://www.ravenbrook.com/project/p4dti/doc/2001-06-18/job000335/>.
[2] <http://info.ravenbrook.com/mail/2001/06/29/17-51-25/0.txt>
[3] <http://www.ravenbrook.com/project/p4dt...2001-07-24/release-1.1.3-test-report-2/>, item 2.
Observed in1.1.1
Test procedure<http://www.ravenbrook.com/project/p4dti/master/test/test_teamtrack.py>, section 2.6
Created byGareth Rees
Created on2001-06-18 16:52:32
Last modified byGareth Rees
Last modified on2001-12-10 19:45:35
History2001-06-18 GDR Created.
2001-06-30 GDR Referred to defect found by TeamShare.
2001-07-02 GDR Noted that the fix to that defect doesn't fix this one.
2001-07-24 GDR Re-opened (change didn't actually fix this problem). We found this in release 1.1.3; see [3].

Fixes

Change Effect Date User Description
14493 closed 2001-07-25 23:17:59 Gareth Rees Branched TeamShare API (pre-build 50102) to P4DTI version 1.1 product sources.