Myth |
Reality |
The database is
too big, and that's why it crashed. |
The size of the
database isn't actually the cause of data corruption.
We've seen brand-new databases become damaged after
only several weeks work. But we've also had shops
that have used Clients & Profits for many years
without incident. |
The database is
damaged every time a user's computer crashes. |
The Clients & Profits
database isn't particularly fragile. Something
as simple as a system crash isn't likely to cause
bad data. However, the reason why someone's computer
crashed may be a clue. So what might be crashing
the computer may also be corrupting the database. |
A user damaged
the database. |
Except for shutting down the computer or force-quitting while Clients & Profits is saving, a user's actions can't damage the database. The C&P database is not particularly sensitive or delicate, and it can handle all kinds of abuse before getting an error. The database is most vulnerable when saving something. So the worst problem -- and one that causes the most data damage -- is when a user gets a padlock cursor and thinks the system's frozen, then reboots. The data isn't damaged every time, but its more likely to occur at that moment. |
The database damage
just happened suddenly, for no reason. |
This may be true
for events like storms, power surges, or disk failures.
But usually there's a gradual deterioration of
some part of the hardware (like disk fragmentation
of the file server, or an overloaded router) that
slowly and subtlety corrupts the data. At some
point, you will use some part of the bad data and
discover the problem. |
The damage was
caused by a software bug. |
Clients & Profits
has little control over how data is saved and organized
on the file server -- that's the server's job.
If the network or file server has a problem, there's
nothing Clients & Profits can do except tell you
that there's a problem (e.g., the "bad pointer" error).
If it were a bug, the damage would generally be
consistent and occur frequently -- which isn't
the case. |
The damage was
caused by a software bug. |
Clients & Profits
has little control over how data is saved and organized
on the file server -- that's the server's job.
If the network or file server has a problem, there's
nothing Clients & Profits can do except tell you
that there's a problem (e.g., the "bad pointer" error).
If it were a bug, the damage would generally be
consistent and occur frequently -- which isn't
the case. |
All of our other
programs work just fine, so it must be Clients & Profits. |
Some events that cause data corruption are transient, such as a power surge that crashes the server while everyone's working. This causes all of the work on which each user was working to be possibly corrupted. All this happens in an instant. In most cases the server recovers itself automatically. The users don't notice anything more than a slight hesitation. But in a worse case (especially if a power surge is compounded with an almost-ready-to-break piece of hardware), a catastrophic crash occurs -- and your database is damaged. |
Database damage can happen out-of-the-blue, and we'll never know why. |
Some events that cause data corruption are transient, such as a power surge that crashes the server while everyone's working. This causes all of the work on which each user was working to be possibly corrupted. All this happens in an instant. In most cases the server recovers itself automatically. The users don't notice anything more than a slight hesitation. But in a worse case (especially if a power surge is compounded with an almost-ready-to-break piece of hardware), a catastrophic crash occurs -- and your database is damaged. |
The database needs
no maintenance. |
While there's no need to routinely reindex or repair a database, it does need attention. This mostly involves monitoring the database's growth every month, then making sure there's enough free space available on the hard disk. If the database size nears 256mb then a second segment must be added. A nightly backup must be maintained and tested to ensure its viability. Every year the database should be analyzed for outdated, unused data that can be purged. |