Rss Categories

Data Corruption

Author: Admin Reference Number: AA-00214 Views: 3293 Created: 2014-02-03 23:10 Last Updated: 2014-02-03 23:17 0 Rating/ Voters
Occasionally, you may receive a message from PhonePad that data corruption has occurred and that you need to repair the database. You can easily repair tables using the included DBRepair utility.

Repairs cannot be performed unless all PhonePad users are logged out of PhonePad as the repair process requires exclusive access to the database, so you should ask all users to log out before attempting to run a repair. PhonePad Admin provides an easy way to log all users out of PhonePad. Additionally, if you are running PhonePad in Remote Mode (Client/Server), you can stop the server to disconnect all users.

You should not need to repair the PhonePad database very often, if ever. If you find data corruption is occurring frequently then there is a problem that needs to be corrected. Read the following sections for more information on this.

How does data corruption occur?

Data corruption can be caused by the following:
  • A workstation crashes, is turned off, or rebooted while PhonePad is running on that workstation.
  • The workstation/server hosting the PhonePad database crashes, is turned off, or rebooted while other workstations running PhonePad are connected to the database.
  • A faulty Network Interface Card (NIC) on one or more machines running PhonePad (in many cases a NIC can appear to be working correctly even though it is not 100% functional).
  • An improperly wired network (incorrect grade of network cable or cables are too long).
  • Slow Operating System (OS) buffer flushing.
  • A laptop being disconnected from the network without closing PhonePad first.
  • An intermittent wireless network connection, or a weak signal on the wireless network.
What can be done to prevent data corruption?

Data corruption generally occurs when PhonePad suddenly terminates just as a data write is being performed. We have made a lot of changes to PhonePad's code in attempt to minimize data corruption (eg. minimize the amount of time it takes to write data), and we will continue to look at ways to improve this further. However, there are some things you can do to avoid corruption:
  • Always shut down PhonePad before powering off your machine. If you do a proper Windows logoff or shutdown, PhonePad should shut itself down correctly.
  • Check your network for any machines that repeatedly crash.
  • Check the Network Interface Card (NIC) on any machines that appear to be causing corruption.
  • Enable the ForceBufferFlush option under the System tab in DBConnect. Be careful with this option as it can severely affect system performance, ie. PhonePad may start responding extremely slowly on the affected workstation. Use it only on the machine that is crashing or being powered down incorrectly.
  • Install DBServer on the host system and use Remote Mode*.
  • Move computers closer to the wireless router, or install wireless repeaters.

* When PhonePad is run in Remote mode, it connects to the PhonePad database using TCP/IP. Only the server application (DBServer) has direct access to the database. This method prevents database corruption, unless of course the server crashes, reboots or is turned off without first shutting down DBServer. If the server is running Windows NT, 2000 or XP, DBServer can be run as a service and the process becomes totally automatic.