Developer ToolsFree calculatorPDF, Excel, Word exportIBM iAll IBM i (AS/400) ERPs tools

IBM i Journal Receiver Growth and Retention Calculator

This calculator estimates how many gigabytes of journal receivers a journaled IBM i ERP library writes per day and how much disk your retention policy needs, for commitment control, audit or HA replication. It is a transparent engineering estimate you calibrate against one day of your own receivers.

Your numbers

rows
rows
rows
bytes

Weighted average record length of the journaled files (DSPFD or QSYS2.SYSTABLES ROW_LENGTH).

*BOTH writes a before image (UB) and an after image (UP) for each update. Many HA products need *BOTH.

bytes

Fixed-length portion and headers per entry. Measure it (see the page) and lower it with RCVSIZOPT(*MINFIXLEN) and fewer FIXLENDTA options.

100 %

100% for full images. MINENTDTA(*FILE) or (*FLDBDY) can journal only changed data on updates; measure the real saving.

days
GB

THRESHOLD on CRTJRNRCV is in KB; 5 GB = 5242880 KB.

%

Leave at 0 unless you measured a saving, for example from omitting open and close entries with OMTJRNE(*OPNCLO).

Your results

Receiver growth per day
0.5867
GB of journal receiver written per day.
Disk for retained receivers
4.1071
GB on disk if receivers are kept online for the retention period.
Journal entries per day
1,050,000
Bytes per day
630,000,000
Receiver changes per day
0.1173
With MNGRCV(*SYSTEM) the system attaches a new receiver at the threshold.
Average bytes per entry
600

This is an engineering estimate, not an IBM formula. Calibrate entry overhead from your own receivers (SIZE and NUMBER_OF_JOURNAL_ENTRIES in QSYS2.JOURNAL_RECEIVER_INFO) before sizing disk.

Save results:

Retained receiver disk vs days kept

Sweeps Receivers kept online from 1 to 30, holding your other inputs fixed.

Get your journal sizing checked

Send one day of JOURNAL_RECEIVER_INFO output and your retention rules and we will return a calibrated sizing and receiver settings to review.

Optional. The tool and every export work without this. No spam.

Was this tool useful?

How to use it

Enter daily inserts, updates and deletes across the journaled files, the average record length, and whether files are journaled with *AFTER or *BOTH images. Keep entry overhead at 150 bytes until you measure it, and leave the update data slider at 100% unless you use MINENTDTA. Set how many days of receivers you keep online and the receiver threshold. The result gives GB per day, disk for the retained receivers, how many receiver changes a day to expect, and the average bytes per entry, which you can compare directly with a measured receiver.

  • Row counts per day can come from DISPLAY_JOURNAL summaries or application statistics
  • Use a weighted average record length if file sizes differ a lot
  • Add journals for other libraries separately and sum the results

The formula and its basis

Each insert writes one PT entry and each delete one DL entry, counted here as one record image plus overhead. Each update writes one UP entry with *AFTER, or a UB and a UP entry with *BOTH, so updates are multiplied by the image count. Bytes per day = (inserts + deletes) x (record length + overhead) + updates x images x (record length x kept% + overhead). GB per day divides by 1,073,741,824, retained disk multiplies by days kept, and receiver changes divide by the threshold. The fixed-length portion of each entry (job, user, program, timestamps and other FIXLENDTA items) is why overhead is an input: it varies with RCVSIZOPT and FIXLENDTA settings, so IBM gives a manual estimation method rather than one number.

Worked example and calibration

With the defaults: inserts and deletes give 450,000 x 600 = 270,000,000 bytes, updates give 600,000 x 600 = 360,000,000 bytes, so 630,000,000 bytes or about 0.59 GB per day across 1,050,000 entries, an average of 600 bytes per entry. Kept for 7 days that is about 4.1 GB, and a 5 GB threshold means a receiver change roughly every eight days. Switching to *BOTH adds about 0.34 GB per day. To calibrate, run SELECT JOURNAL_RECEIVER_NAME, SIZE, NUMBER_OF_JOURNAL_ENTRIES FROM QSYS2.JOURNAL_RECEIVER_INFO for a detached receiver: SIZE x 1024 / NUMBER_OF_JOURNAL_ENTRIES is your real bytes per entry. Adjust overhead until the calculator matches.

Receiver management and gotchas

Create receivers with a THRESHOLD in KB and the journal with MNGRCV(*SYSTEM) so the system attaches a new receiver at the threshold. DLTRCV(*YES) lets the system delete detached receivers, but only when nothing else needs them. RCVSIZOPT(*MINFIXLEN) reduces the fixed-length data per entry; *RMVINTENT removes internal entries; *MAXOPT1, *MAXOPT2 and *MAXOPT3 raise the maximum receiver size and sequence number limits. MINENTDTA(*FILE) or (*FLDBDY) can minimise update entries, but check that your HA product and any audit use support minimised entries first. Never delete receivers that HA software such as MIMIX, iTERA or QuickEDD, or your save strategy, has not yet processed.

Frequently Asked Questions

How do I check journal receiver size on IBM i?

Run SELECT JOURNAL_RECEIVER_NAME, SIZE, NUMBER_OF_JOURNAL_ENTRIES, STATUS FROM QSYS2.JOURNAL_RECEIVER_INFO WHERE JOURNAL_RECEIVER_LIBRARY = 'YOURLIB'. SIZE is in kilobytes. QSYS2.JOURNAL_INFO gives the total size and count of receivers per journal. On a green screen, WRKJRNA and WRKJRNRCV show the same information.

What does RCVSIZOPT(*MINFIXLEN) do?

*MINFIXLEN keeps the fixed-length portion of each journal entry to a minimum, which makes receivers smaller and journaling slightly cheaper. The trade-off is that entries carry less identifying data such as job, user and program, so check that audit and HA tools do not rely on it. The FIXLENDTA parameter controls which items are kept.

Should I journal with *AFTER or *BOTH images?

*AFTER is enough for recovery forward with APYJRNCHG and halves update entries. *BOTH adds before images, which you need to back changes out with RMVJRNCHG. Commitment control uses before images for rollback, and the system journals them for changes made under commitment control even with *AFTER, so those files grow faster than the *AFTER figure. Many HA products require *BOTH. Use the calculator to see the extra disk.

How many days of journal receivers should I keep?

Keep receivers at least until they are saved and every consumer has processed them: HA replication, audit extraction and any recovery point you promised. Many shops keep 3 to 14 days online and older receivers on backup media. The chart shows how retained disk grows with each extra day kept.

If you want your admins to ask how fast journals are growing, which files drive it and what is safe to delete, in plain English against your own IBM i, we can run that assistant on your servers.

ArchRay builder
Design the on-prem AI stack for IBM i (AS/400) ERPs: model, GPUs, RAG pipeline, guardrails
See memory, speed and cost as you swap parts, then export the diagram. Free, in your browser.
Open the builder

Keep exploring

Free tools

ERP fixes and how-tos

Guides

AI on your ERP

Integrations

Software