P4DTI issue job000005

TitleTeamTrack integration may fail mysteriously on startup in future releases of TeamTrack
Statusclosed
Prioritynice
Assigned userGareth Rees
Productproject
OrganizationTeamShare
DescriptionFuture releases of TeamTrack may cause the integration to fail mysteriously on startup.
The schema additions have not been made but no error message explains this.
AnalysisThis is because TSServer::AddField doesn't report an error if the field fails to be added.
This defect is present in TeamShare API release 1.2 running on TeamTrack server version 4.02.
In at least three cases, the TSServer::AddField method fails to add a field to the TeamTrack database, but returns TS_OK to indicate success.
The first case is when a table id other than TS_TBLID_FIELDS is passed as the second argument to the method. In this case an incomplete record was added to the other table, but no field was added.
The second case is when the TS_TABLES table was inconsistent with the state of the database. In this case, nothing happened.
The third case was when the description of the field was invalid -- the length of an ordinary text field was 1024. In this case a record was added to the TS_FIELDS table but no field was added to the TS_CASES table. And afterwards any queries on the table TS_CASES table failed with no explanation.
It is essential that this defect is fixed, otherwise installation may be unreliable.
GDR says that this doesn't have much impact any more, as the replicator will fail later with a suitable error message. RB 2000-12-04
In changed_entities(), the replicator asks for the contents of one of the added fields; if the fields haven't been added then there will be a SQL error returned from TeamTrack explaining that the field does not exist. GDR 2000-12-30
How foundmanual_test
Evidence<http://info.ravenbrook.com/mail/2000/09/11/17-22-27/0.txt>
<http://info.ravenbrook.com/mail/2000/09/08/12-24-20/0.txt>
<http://info.ravenbrook.com/mail/2000/09/08/15-26-40/0.txt>
<http://info.ravenbrook.com/mail/2000/09/10/16-44-52/0.txt>
Test procedure<http://www.ravenbrook.com/project/p4dti/master/test/test_p4dti.py>
Created byGareth Rees
Created on2000-09-13 18:37:28
Last modified byGareth Rees
Last modified on2001-12-10 18:54:01
History2000-09-13 GDR Created.
2000-11-28 RB Added priority. Moved text to description.
2000-12-04 RB Downgraded from "essential" to "nice".
2000-12-30 GDR Moved text to analysis. Gave user impact.

Fixes

Change Effect Date User Description
2189 closed 2000-09-08 18:35:39 Gareth Rees Renamed dt-teamtrack.py to dt_teamtrack.py so that it will load as a Python module.
Added replicator test script replicator_test.py.
Miscellaneous improvements to the replicator.