Mirror Backup vs. R/O Database Behavior - Scheduled Task for HL7 Message Dumps
I've created a scheduled task that dumps HL7 messages to flat files. It uses the OutputToLibraryStream() method of EnsLib.HL7.Message. I'd like to be able to run it on a mirror member host whether it's primary or backup.
When run against a database that's mounted read-only, it works fine. However, when I attempt to run it against a mirror backup database, I get the following error:
#5002: Cache error: <PROTECT>%LoadData+7^EnsLib.HL7.Message.1
Tracing that back to the source, I find:
Lock +(^EnsLib.H.MessageD(id)#"SE"):$zu(115,4)
Can someone help me understand how locking might behave differently on a "conventional" R/O database vs. a mirror backup R/O database? I can rationalize the behavior due to the fact that dejournaling is still doing sets/kills and that a lock would potentially mean bad things for mirror consistency, but I don't know why I wouldn't see this behavior on a database that is purposely mounted R/O.
Oh, and I'd also like to make this work :D