BIND crash processing .jnl file for outbound IXFR
BIND 9.12.1-P2
Summary
Three authoritative servers all crashed at around the same time with:
13-Jun-2018 06:16:37.710 general: critical: journal.c:1663: INSIST(j->offset <= j->it.epos.offset) failed
13-Jun-2018 06:16:37.710 general: critical: exiting (due to assertion failure)
When trying to restart BIND, it fails to launch and logs the same lines as above.
Steps to reproduce
Restarting BIND reproduces the problem.
Removing the zone .jnl file and restarting resolves the problem.
It would appear that named is attempting to process an outbound IXFR request at the time of the crash, after having recently received a significantly-sized inbound update:
13-Jun-2018 05:40:30.552 xfer-in: info: transfer of 'XXXXXXXX/IN' from XX.XX.XX.XX#53: Transfer status: success
13-Jun-2018 05:40:30.552 xfer-in: info: transfer of 'XXXXXXXX/IN' from XX.XX.XX.XX#53: Transfer completed: 113359 messages, 27271720 records, 1800453680 bytes, 669.247 secs (2690267 bytes/sec)
13-Jun-2018 05:40:30.569 xfer-out: info: client @0xXXXXXXXXXX XX.XX.XX.XX#36227/key XXXX (XXXXXXXX): transfer of 'XXXXXXXX/IN': IXFR started: TSIG XXXX (serial 2018061320 -> 2018061321)
What is the current bug behavior?
named crashes
What is the expected correct behavior?
named doesn't crash
Relevant configuration files
Not yet available
Relevant logs and/or screenshots
See above
Possible fixes
I am wondering if the size of the .jnl file might be significant - ~4Gb