Troubleshooting
Problem
If Sybase SQL Anywhere server was killed or the machine or server crashed before the database was modified then subsequently checkpointed, the database could be corrupt. Then the database could cause the assertion error - 201117 "Attempt to close a file marked as dirty" when connecting to Rational projects.
Resolving The Problem
You can simply correct this problem by running the Test Datastore repair utility in Dbpopulate mode.
Dbpopulate: repairs the database files by creating new files (in the datastore) and populating them with data from the rtxml files. This repair utility also creates a backup of the existing tds.mdb files in locations specified by the user.
Creating a batch file for DBPopulate:
To create a dbpopulate batch file, open Windows Notepad and save the file with a .bat extension (repair.bat) onto your desktop. Add the following four lines to the bat file:
- cd "C:\Program Files\Rational\Rational Test"
rtdatastoreutils.exe -dbpopulate "D:\Projects\ProjectA\testdatastore" "D:\Projects\ProjectA\backuptds"
rtdatastoreutils.exe -dbpopulate "D:\Projects\ProjectA\testusersandgroups" "D:\Projects\ProjectA\backuptuag"
rtdatastoreutils.exe -dbpopulate "D:\Projects\ProjectA\testdatastore\defaulttestscriptdatastore" "D:\Projects\ProjectA\backupdtsds"
Save the bat file (choose File->Save)
Running the DBPopulate bat File:
To run the file, open a command prompt, change directory to the desktop and run the bat file.
Remember the \backup... folders must be empty each time the repair utility is run. Also, the repair utility will move (not copy) the tds.mdb files from each of the folders in the testdatastore and store them in the backup folders. It will then create new tds.mdb files in the correct folders within the testdatastore and populate each of the tds.mdb files from data stored in the rtxml files.
When the bat file is run, anomalies and inconsistencies in each tds.mdb file are reported to the console, and are written to a log file. The log file for a particular tds.mdb file is created in the folder where that tds.mdb file is located. The name of the log file is time-stamped so that the utility will always generate uniquely named log files. The file name format is “DatastoreUtils-Repair (month-day-year hour.minute.second). txt
Note: Running the utility in dbpopulate mode can take a long time to run against a Sybase SQL Anywhere datastore. To speed this up, stop the Sybase SQL Anywhere database server and manually move the tds.db and tds.log files in the TestUsersAndGroups, the TestDatastore and the DefaultTestScriptDatastore folders to another location. Then run the utility in dbpopulate mode. After doing that, start the Sybase SQL Anywhere database server again.
Was this topic helpful?
Document Information
More support for:
Rational TestManager
Software version:
2003.06.00, 2003.06.12, 2003.06.13
Operating system(s):
Windows
Document number:
81807
Modified date:
16 June 2018
UID
swg21195272