TRN Mirror

{maketoc title=”N1MM Logger Transaction File Mirror Utility” shownum=y}

!!#Current Version Information
• V0.1, 2012-12-08, Beta release Candidate
Download Link:
In addition to its Access database (*.MDB) for contest logs, N1MM Logger also creates a transaction file named <logname>.TRN that can be used to restore a contest log in the event of a database failure. This utility program monitors that transaction file and makes copies on another disk drive.

*Provides a log recovery mechanism in the event of a hard drive or computer crash
*Mirror files can be on a second hard drive in the PC, a USB thumbdrive, or a networked drive
*Copies the N1MM Logger TRN file based on events (when the TRN file changed) or time (after n minutes since last copy)
*Only makes a mirror file when the TRN file has changed
*Creates n versions of the file, based on configuration settings
*Renames the mirror files using version numbers (filename(1).trn, filename(2).trn, filename(3).trn…)
*Stores latest settings and mirror version number in INI file for simple restarts.
{REMARKSBOX(type=”note” title=”Lowering Expectations: Problems that TRN_Mirror DOES NOT solve”)}The purpose of N1MM Logger’s transaction file, and this utility program that exploits it, is to save your previous QSOs in the event of a computer failure. TRN_Mirror does not replace your backup program, your secondary fail-over hard drive, your hot-swap standby PC — none of the items that you should have if you expect to recover from a serious failure and be back in the contest chair before the end of the contest.{REMARKSBOX}

{img src=”tiki-download_file.php?fileId=212&amp;display”}

!!#Computer Requirements
*Microsoft Windows XP or later
*Windows .NET framework v4.0 or later
NOTE: This is a Microsoft .NET application written in Visual Basic 2010. When attempting to run the software for the first time, you may be prompted to install the latest version of .NET on your computer.

Installing the program is simple, there is no setup program. Extract TRNMirror.EXE from the ZIP archive and save it to any directory on your PC. To run the program, use Windows Explorer to navigate to the directory in which you saved the program, then double-click on the program icon. You can also create a shortcut to the program on your desktop.

!!!#Set up Your Contest Log File First
Use N1MM Logger to create your contest log by selecting >File >New Log in Database. Configure the N1MM Logger Configurer under >Config >Configure Ports… >Other and ensure that you have checked “Keep log of all QSOs to facilitate recovery of log”
!!!#Launch TRNMirror.EXE and follow the numbered steps
#Select the contest transaction file in the N1MM Logger directory
**The name of the TRN file will consist of the log name, contest name, and contest date
**Example: ham.mdb – CQWPXCW – 2101-03-21.TRN
#Select the disk and directory location for the mirror file(s)
#Choose whether you want the mirror files created based on elapsed time or file update (see explanation below)
**If selecting a time-base trigger, choose how often you want the computer to check to see if the TRN file has changed
#Set the number of version files to be maintained (see explanation below)
#Press the <Start> button


Upon pressing the program <Start> button, TRNMirror makes an immediate copy of the transaction file (named <filename>(1).trn) and then passes control of the program to the selected trigger method
!!!!#Trigger Methods – Event-based or Time-based
The Event-based method monitors the Windows file system and triggers a file-copying event whenever the transaction file is updated. The advantage of the Event-trigger – when coupled with mirror versioning – is that your backup files can contain an incremental history of every recorded QSO in your contest log; the disadvantage is that the Event-based method consumes a little more CPU horsepower and will probably require more disk space than the Time-based method. ”In the interest of complete disclosure, however: to avoid the possibility of a single update being double- or triple- counted (a Visual Basic bug), the copy routine waits for a short time (250 milliseconds) before creating the new mirror file. In the unlikely event that two legitimate updates were made to the transaction file within those 250 milliseconds, only one version file will have been created.”

The Time-based method sets a timer and upon upon completion of the timed interval checks to see if the transaction file has been updated. If there had been an update during this interval, it copies the transaction file to a mirror file based on your versioning settings. Regardless whether the file had been updated or not, the program resets the timer and again waits the selected number of minutes before checking to see if the transaction file had been updated. The advantage of the Time-based method is that fewer mirror files are likely to be created during a long contest; the disadvantage is that – in the event of a computer failure – you may not have a complete record of every QSO up-to the point of the crash.

!!!!#Mirror Versioning
TRNMirror will maintain any number of previous versions of the mirror files, based on your version settings
*0 Versions – with zero (0) versions, the software will create and maintain a new mirror file with every copying event. If you use the Event-based method, that should equate to the number of QSOs in your log. If you use a Time-based method, the number of mirror files will depend on the length of the timed interval and number of QSOs in your log
*1 Version – with one (1) version, the software will create and maintain only one mirror file, replacing the existing mirror file with a new file upon every mirror copying event
*n Versions – with a setting from 2 to 10000 versions, the software will create and maintain a new mirror file with every copying event, while deleting previous mirror files that are lower in number than the adjusted version setting. For example, if the newest mirror file is <filename>(50).trn and versioning is set for 20, the software will delete <filename>(30).trn upon adding mirror number 50

!!!!#Resetting the Version Number
The Version number will continue counting as long as you continue to mirror the same source transaction file. If you select a new transaction file – the equivalent of selecting a different contest – the version count will be reset to one (1).

{REMARKSBOX(type=”warning” title=”Detail: When Does Version Numbering Fail?”)}Your settings are saved in the TRN_MIRROR.INI file when you press the <Start> or the <Pause> buttons. Pressing the <Pause> button saves the current version number at the end of a session so that you will resume with the correct sequential number. If you press <Cancel>, or your computer crashes, the version number stored in the INI file will not reflect the most recently used version number in your mirror file.{REMARKSBOX}