Backup, restore and optimisation routines in Chandler Desktop
Backup and recovery, export and import, performance optimisation, backup optimisation
- focused on Chandler Desktop 1.0.2 and Apple Mac OS X 10.5.6
- with a little variation, the reassurance and guidelines should be equally applicable to users of other operating systems.
Status: draft
This document may be subject to change, based upon discussions elsewhere.
Routine at application Quit time
When Chandler Desktop receives a Quit command:
- it exports the essential subset of your repository to a file named
backup.chex
then quits.
The
Chandler is shutting down… /
Export… /
Back up… dialogue allows you to
Skip Back Up occasionally (click the button) or always (clear the tick from
[√] Back up data when quitting Chandler):
Recommendations:
- do not skip
- do allow the back up routines!
Routine at application launch time
Most often: Chandler Desktop will start normally, and as quickly as possible.
If Chandler Desktop encounters a problem whilst launching:
- follow the prompt to Quit (close) the application
- press the alt (option) key
- launch Chandler Desktop
- when Start-up Options for Chandler appear, release the alt key
- refer to the online help.
Periodic routines
Once a week, a launch of Chandler Desktop will:
- create a compressed archive of your
__repository__
- archive named
binary_backup.tgz
- import the essentials from
backup.chex
to produce an optimised __repository__
.
The time taken by these automated steps, once a week, is offset by the improved performance that you should realise with an optimised repository.
Hint: if you skip the exports at application Quit time, then you can not benefit from this automatic optimisation.
Update, 2009-01-20: routine or on-demand import from
backup.chex
may be associated with reversion to defaults such as positioning of the Chandler window and loss of preferences for synchronisation.
On-demand routines — whilst the application is running
In addition to the automated/periodic routines offered by Chandler Desktop, you may:
- export; Chandler Desktop will produce a
.chex
file:
- back up; Chandler Desktop will produce a
__repository__.???
directory comprising database files:
For some types of upgrade to the application, and for one type of recovery, Chandler Desktop:
- ignores the main
__repository__
- prefers to import from the corresponding (most recent)
*.chex
file.
Excluding from Time Machine the files that do not lend themselves to this type of backup
Whilst Chandler Desktop is running, normal changes to database files within the main
__repository__
tend to negate the files' value to backup systems such as Time Machine.
You may exclude
~/Library/Application Support/Open Source Applications Foundation/Chandler/????????.default/__repository__
(the
/????????.default/
part of that path varies from user to user).
Here's a screen shot of a successful exclusion of this main
__repository__
:
To backup systems such as Time Machine, there is greater value in
*.chex
files.
Disaster recovery — selecting from a Time Machine volume the files that are of greatest value
- Enter Time Machine
- aim primarily for
backup.chex
and other *.chex
files
- aim secondarily for
__repository__.???
and/or __repository__.backup.???
directories
- probably ignore
__repository__
— even if you did take a Time Machine backup of this main repository, there is a possibility/likelihood of inconsistency (some but not all database files therein may have been changed by Chandler Desktop during any Time Machine backup).
Some questions answered
What if I never bother to Save Changes?
We see
Save Changes in the
File menu but Chandler Desktop 1.0.2 never reminds us to save changes.
If we omit to use this command, does Chandler Desktop save changes automatically to its repository? If so, how often?
Can I trust the automated routines of Chandler Desktop and of Time Machine?
In my experience, using version 1.0.2 of Chandler Desktop on a MacBook Pro running Mac OS X 10.5.6:
More specifically: are the import and recovery routines of Chandler Desktop reliable?
In my experience: yes.
At export time my repository currently produces 37639 records from 12270 items, and whilst testing I do push the application fairly hard:
- performing obscure actions that are known to cause errors requiring closure of the application
- performing a more obscure action that is known to crash the application.
Following such errors: on most occasions, Chandler Desktop launches normally.
On just one occasion when discarding recent changes (
option 4 of 8 at startup) was insufficient for the application to launch normally, the default
backup.chex
file (
option 8, a.k.a. restore from snapshot) sufficed.
I do have
__repository___.???
directories etc., and Time Machine backups thereof, but in version 1.0.2 of Chandler Desktop, a resort to these has never been necessary.
How recent is recent? If I opt to discard recent changes (option 4 of 8 at startup): how much do I lose?
In my experience: I could never discern any loss, so I treated it as negligible. YMMV.
If discarding recent changes is not sufficient, if I must restore from a snapshot (option 8 at startup): how much do I lose?
Correction, 2009-01-20: this type of restoration is limited to
.tgz
sources. As
binary_backup.tgz
is normally written no more than once a week, and as that routine may be intentionally or unintentionally deferred, be prepared to lose up to one week's worth of changes, or more.
If you have a
.chex
(export) that is more recent than a binary
.tgz
you may prefer to first discard data (start with a fresh repository) then import from the most recent good
.chex
. See
Start-up Options for Chandler and
Chandler quits on launch or won't start in
Troubleshoot Chandler.
If confidence is reduced, can I perform additional exports and/or backups?
Yes.
-- GrahamPerrin - 10 Jan 2009