- Log in to post comments
Thanks Eric for the response. Actually I need a simple understanding. As much as it sounds stupid, I want to understand the workflow of Journal, WIJ and Database when we have a transaction.
My understanding is :
Transaction ----> Write deamon writes to WIJ ------> Write Deamon writes to Database--------> Journals are updated.
My Questions are:
1. What is the content of WIJ, these contains just pointers of data or actual data?
2. If Journals are written after data is committed to database then in case of application consistent snapshot creation, during iris freeze, database writes are suspended, so how the journal files are still getting generated. (I understand Write daemon does not play a role in Journal)
3. Suppose I have a time gap between IRIS freeze and snapshot generation and in between couple of journal files are generated. If I have snapshotted WIJ, Journal and database and on Secondary host I want to recover the latest data by applying from the updated journal, can we do that.
4. I am trying to snapshot WIJ, JNL and data and trying to start the instance in the secondary host by mapping the snapshots. But I am getting WIJ mismatch error following which Journal Recovery error. Why is that??
Thank you for providing your feedback
- Log in to post comments
Thank you, Vitaliy, for sharing the useful links. They have been very helpful.
I would also like to confirm whether there are any cache-related settings in Red Hat 9.4 that could be contributing to the increased frequency of WIJ errors in my environment.
- Log in to post comments
Messages logs is as follows:
*** Recovery started at Tue Mar 24 08:03:11 2026
Current default directory: /IRIS/mgr
Log file directory: /IRIS/mgr/
WIJ file spec: /WIJ/IRIS.WIJ
Recovering local (/WIJ/IRIS.WIJ) image journal file...
Starting WIJ recovery for '/WIJ/IRIS.WIJ'.
0 blocks pending in this WIJ.
WIJ pass # is 0.
Starting fast WIJ compare
Finished comparing 46897 blocks in 1 seconds
**WIJ blocks NOT matching the database ones are saved in MISMATCH.WIJ
03/24/26-08:03:12:363 (17204) 0 [Generic.Event] Global buffer setting requires attention. Auto-selected 25% of total memory.
03/24/26-08:03:12:520 (17204) 0 [Generic.Event] Allocated 36510MB shared memory
03/24/26-08:03:12:520 (17204) 0 [Generic.Event] 32017MB global buffers, 1020MB routine buffers, 64MB journal buffers, 2427MB buffer descriptors, 960MB heap, 5MB ECP, 16MB miscellaneous
03/24/26-08:03:12:522 (17204) 0 [Crypto.IntelSandyBridgeAESNI] Intel Sandy Bridge or AMD x8 AES-NI instructions detected.
03/24/26-08:03:12:522 (17204) 0 [SIMD] SIMD optimization level: AVX2
03/24/26-08:03:13:039 (17204) 0 [WriteDaemon.UsingWIJFile] Using WIJ file: /WIJ/IRIS.WIJ
03/24/26-08:03:13:039 (17204) 0 [Generic.Event] Jrn info from prior WIJ (imflags: 0):
wdpass: 0
jrnwdpass: 24
fspec: /JNL/JNL01/20260324.337
filecnt: 1203
fileoff: 162224368
prevfcnt: 1192
prevfileoeff: 97930564
min trans cnt: 1192
min trans index: 97930564
03/24/26-08:03:13:041 (17204) 0 [Generic.Event]
Startup of InterSystems IRIS [IRIS for UNIX (Red Hat Enterprise Linux 9 for x86-64) 2025.2 (Build 227U) Thu Jul 10 2025 11:11:23 EDT]
in /IRIS/bin/
with mgr: /IRIS/mgr
with wij: /WIJ/IRIS.WIJ
from: /IRIS/mgr/
OS=[Linux], version=[#1 SMP PREEMPT_DYNAMIC Wed Apr 10 10:29:16 EDT 2024], release=[5.14.0-427.13.1.el9_4.x86_64], machine=[x86_64]
nodename=[SISHA820G2-33].
numasyncwijbuf: 2, wdwrite_asyncio_max: 64, wijdirectio: on, synctype: 3
System Initialized.