Yes - you have it correct.

> It would seem that Server#1 never runs 4D Backup, because any restoration 
> would be done using Server#2.  Nevertheless, if Server#1 started up and 
> somehow choked, a "normal" behavior would be to restore from backup and 
> integrate the log file.  Since this behavior would be turned off, what is 
> the procedure you use if Server #1 won't start?  Do you copy the mirror on 
> Server #2 to Server#1?

- Yes, you'll never back up server #1 and you'll disable the automatic restore 
after crash feature.

- If server 1 crashes and you bring it up, 4D analyzes its current journal file 
and if any operations are not integrated in the data file, they are 
automatically integrated.

- If server 1 won't start (i.e. damage detected or the journal won't integrate 
for some reason), you'll need a recovery procedure.

> How do you handle the timing, so that [Server#2] knows that the file 
> transfer is complete and it is OK to integrate the log file?  Does 
> [Server#1] somehow send a 'I'm Done' message to [Server#2] in your 
> implementation?

You could send a message from #1 to #2. We just use an old-fashioned lock file. 
Write the lock file, copy the journal file, then delete the lock file. You 
could also copy the file with a .tmp extension, and when done rename .tmp to 
.journal (and your code would filter out .tmp files to prevent them from 
integrating). 

In our server, we ship a new journal file every 30 seconds. They are numbered 
sequentially, so you can sort them by file name and integrate a batch in the 
correct order.

> What do you do if [Server#1] dies to now point users to [Server#2], 
> assuming the Server application is a built application so that the server 
> address and port number are built into the (built) 4D Client?

Change the DNS entry, or manually copy the data file from #2 back to #1. We do 
the latter. It happens so infrequently that 10 minutes to recover isn't a big 
deal.

Jeff

**********************************************************************
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:[email protected]
**********************************************************************

Reply via email to