-
Corrupted snapshot database | |
My snapshot database got totally hosed when I sorted it. I had over 30000
records in it. The sorted/corrupted version has 46,184. Virtually all of them
appear blank (no before and after icons). Many of them have "unknown user"
as the creator. Many of them are marked as private records.
Any idea on what happened and what I can do to avoid it in the future? |
The backup of the snapshot database is c:\sqdata\sqproof\sqproof.dbu
To restore the backup copy of the database,
- delete the current snapshot database (c:\sqdata\sqproof.db); and then
- rename the backup (.dbu) to the current database (.db).
I don't know what the problem is or was. I haven't experienced any
problems in the last several years with sorting the snapshot database. I
regularly sort my snapshot database on three different computers.
General comments:
- If your data is important to you, then make regular backups!
- When a snapshot or getin/getout database is sorted, the original is saved as .dbu.
- When the list, parse, or abbreviation database is edited, the original is saved as .dbu.
- So... As long as you don't try sorting a corrupted database, you can
still retrieve the entire contents of the original.
The following files should occasionally be backed up:
- the snapshot database (c:\sqdata\sqproof\sqproof.db)
- the getout database (c:\sqdata\squaredb\getout.dat)
- your sequences (c:\sqdata\seq*.seq)
- the 'dates' databases (c:\sqdata\sqused\sqused.db1 and c:\sqdata\sqused\sqused.db2)
-
Database consistency | |
I selected the menu item "Sequence / Proofread / Specified" and said "No prompts". One of the error messages I got is:
Sequence C2-96 line 6 -- Call not found:
HOCUS POCUS
Hocus Pocus [571]
The sequence I tested is ok in the graphical editor:
(This is a test, only),
Heads Pass The Ocean,
Extend The K,
(#formation#)
(Exit: Detour, Those Facing Start Dixie Grand, L.A.),
Hocus Pocus,
Split Counter Rotate 1/4,
Vertical Tag Back To A Wave,
R.L.G.
Any idea what could cause error messages like that where it
says "Call not found" but says "[571]" nevertheless ?
Is there a way to check the consistency of the snapshot database or to repair it? |
I tried the sequence given above on my machine in both the
'Edit Seq [Graphics]' and the 'Proofread | Specified' sections of the program. It worked fine.
The most probable cause for this error is that there is a problem with the snapshot database.
My guess is that you may have a bad record for "The K". You may have two records starting from the same position, one of which is
incorrect. CSDS uses a binary search of the snapshot database, so if two records match the formation, it will choose the first one (with the highest priority and the lowest fuzziness rating) that it finds. Since the order of the actual records accessed by a binary search depends upon the number of records in the database, the program could match on a different snapshot record than was used when the sequence was written.
In any case, there are two validation functions for the snapshot database:
- Snapshot | Validate | Record Access: -- (this is the validation function that should help you resolve the problem) -- for each record within the specified range, the program sets up all possible starting positions specified in the record and then tries to execute the specified call specified. If the 'execute call' function does not match the record itself, a message is output to the output file. Hence this function basically searches for
- duplicate records, and
- superfluous records (which aren't exactly duplicates, but if they are deleted then the specified call would still be executed in the exact same manner).
This function also finds occurrences when two records specify different ending formations for the same call from the same position, or when two records specify different roll attributes at the end of the call. I generally run this function on the snapshot database prior to major releases of CSDS. Feel free to run it, and experiment with the checkbox settings.
- Snapshot | Validate | Handle Lists: -- for each specified snapshot record, the program converts the handle list into a text string, then converts the text string back into a handle list. It then checks to see if the two handle lists match. Mismatches may indicate that there is a problem in the parse database, or the snapshot record may need to be edited to reflect the new handle list. A mismatch could also indicate that I need to rethink how the call is parsed.
-
Deleting or editing records | |
I created some snapshots soon after I got the program. I'm not
sure I want to keep them. How do I find them so I can delete or correct them ? |
- From the main menu, select 'Snapshot' followed by 'View a record'.
- From the view snapshot menu, select 'Change record' followed by 'Last
record in database'. (if the 'Last record in database' menu option is disabled, it means that
you are already positioned at the last record).
- Near the lower right-hand corner, just above the 'flags' frame, you should
see a box containing the author name (if you have a complete version of the program,
this field should have your name in it; otherwise, if you have the demo version, this field
will contain the word 'DEMO'). This box shows who created the
currently displayed snapshot record. All snapshot records created by you
should have this field set to your name (if you have the complete version) or to 'DEMO' (if you have
the demo version).
- To delete a record, press the F8 key, or select 'Toggle delete' from the menu.
Similarly, a deleted record can be undeleted the same way. A deleted record will
have the words RECORD MARKED AS DELETED
displayed in large red letters centered on the
screen. Records aren't physically deleted until the next time that the database is sorted. (and DEMO users can't
sort the database).
- To edit the current snapshot record, from the menu select 'Edit' followed
either by 'Edit data' to modify the dancer positions, or by 'Edit name of call' to modify the name of the
call.
- To display other snapshot records that you created, use the 'Change record' menu to select the
previous or next record in the database.
- Alternatively, to find the records that you created, you can use the
'Find' menu option followed by
'Find a record'. From this screen, click on the 'Match everything' tab;
then check the 'Author' checkbox
and select your name (or 'DEMO' if you have the demo version) from the dropdown list. Click the 'OK' button to start
the search. The program will search for and
then display a record that you created. At this point you can navigate to
each of your records by pressing
'F3' for the next record or 'Ctrl+F3' for the previous record.
-
Duplicate snapshot records | |
What happens if you get duplicate records in the snapshot database? For example, what if I
import some records and later import some of them again, what happens? |
From the main menu, select Snapshot followed by Validate record access. This option
processes records within the snapshot database and verifies that they can be accessed by the
program. In essence, for each record, it makes sure that the record will be accessed if dancers are
in the starting position as specified in the before picture. There is a check box option to Delete
duplicate records which, when checked, marks a record as deleted if the removal of that record
would not affect the program being able to execute the call from all the positions contained within
that record (i.e., if you have two identical records in the database, and you try to access them, only
one of them will be accessed. When Delete duplicate records is checked, the non-accessed
records are deleted).
-
extracting snapshots for another computer | |
How do I extract snapshot records that I’ve created on one system and put them into another
system? I will eventually have three machines doing this, and keeping the database in sync
concerns me… |
Designate one machine as the primary machine. This machine will store the primary copy of
the snapshot database.
Every so often, copy all newly created snapshot records from each of the non-primary machines to
the primary machine. (As long as the snapshot database has not been sorted on the non-primary
machines, all newly added records are at the end of the database). The newly added records can
be extracted via main menu option Snapshot followed by Export records. Export all records
outside the sorted region (this is the default) into an output file. Copy this output file onto the
primary machine. On the primary machine, use Snapshot followed by the import records
function to import the output file into the snapshot database. After importing records onto the
primary machine, sort the database on the non-primary machine. Every so often, sort the database
on the primary machine, break it up into pieces and/or zip it up and replace the snapshot databases
on each of the non-primary machines.
I usually copy records from my non-primary machines to my primary machine after I’ve entered
300 records or so. I usually replace the snapshot database on my non-primary machines every 3
months or so.
Note: Editing a snapshot record (as opposed to creating a new snapshot record) does not add a
record to the database, and hence the above mentioned procedure will not copy this change onto
the primary machine. The only way to get these changes is to manually edit the same record on
the primary machine. Hence, if you tweak a facing direction or active attribute of a snapshot
record within the sorted region of a non-primary machine, write yourself a note so that the same
change can be made later on the primary machine.
A similar procedure can be followed with the getin/getout databases.
-
Fix a Bad Snapshot | |
I made a wrong definition of a call, but can not find where to change
it. |
Do you mean you entered an incorrect snapshot?
If so, there are several ways to find it.
Method I:
- From the CSDS main menu, select 'Snapshot | View a Record';
- From the Snapshot View window's menu, select 'Find | Find All';
- In the 'Other' frame, check 'Author', make sure 'Equal to' is
selected, then select your name.
- If you know when you created it, you can also set the 'Last Modified'
filter.
- Press the 'OK button, and a list of your snapshots will appear.
- Find the offending one, and delete or edit it.
Method II:
- via Sequence Edit [Graphics]', bring up the offending sequence;
- Use F11 and F12 to position the sequence so the last line in the
'lines processed' window (upper left) contains the call that used
the bad snapshot record.
- Press Ctrl+S to bring up that snapshot record.
-
Removing a record | |
I added a bogus definition of a call to the snapshot database.
How do I remove it? |
There are several ways to do this.
From the main screen, goto 'Snapshot | View Record'. If the record in question is not already displayed,
you need to find it. Ctrl+F12 will go to the last record in the database. From there, press F11 as necessary until you locate it. (this assumes that you haven't sorted the snapshot database).
Press Ctrl+D to mark the record as deleted.
If you are writing a sequence and just entered an incorrect record, from the menu bar, select 'View | Last snapshot record used'. Press Ctrl+D to delete it.
-
sharing snapshots | |
Is having the records other create useful? What happens if, when the program has
widespread use, people pass around their additions to your database? How will databases stay in
reasonable shape? |
Each record in the snapshot database, the getin/getout databases, the list database, and the
parse database has an author field in which an author identification number is placed. Hence the
program can tell the source of the records, and can choose whether to update specific records or
not. The snapshot database and getin/getout databases can be searched on the author field to find
records created/edited by others. Also, when you receive program and database upgrades from
me, the upgrade process only replaces those records created by me (records created by you or
others are retained). In this manner, your databases are upgraded without destroying any records
that you have added/edited.
-
Unable to do 'Pass Thru' | |
I entered the Snapshot database to correct a new application that I had entered.
That worked fine, but now I find that the program won't respond to Pass Thru.
I apparently managed to erase the call inadvertently - how, I have no idea.
However, is there a way to restore the snapshot database to a previous issue
that contained Pass Thru? |
In the 'Sequence Edit [Graphics]' window, select the 'Flags' menu item.
Make sure all 4 flags starting with 'No' are unchecked.
If you're saying 'Pass Thru' when you should say 'Centers Pass Thru',
Add the word 'Centers'.
There is no restore command for the snapshot database, however,
Records are not physically deleted until the database has been sorted.
-
From the CSDS main menu, select 'Snapshot | View a Record'.
-
Then select 'Find | Find a Record'.
-
In the 'Exact Match' tab, enter 'Pass Thru'.
-
Press the 'OK' button.
-
Now cycle thru the Pass Thru records by pressing F3 (e.g., Find Next)
-
If a record has been deleted, it has a large pink banner near the top saying 'RECORD MARKED AS DELETED'.
-
To undelete the record, press the 'Del' key or 'Ctrl+D'.