There is new upstream code that deals with handling large record lengths that needs to be grokked and merged in. From latest release:
The previous release fixed the handling of a new class of oversized, invalid,
binary MARC records, unfortunately it broke handling of other oversized
records that worked previously. This release restores that correct handling
of those invalid records, adds tests and data coverage, and also fixes a
related issue in the RawRecord classes handling of oversized binary MARC
records.
As with the previous release, if you never encounter oversized records, this
release is irrelevant, if you do (or even if you might) this release will handle a
few more classes of malformed records as well as can be expected.
Notice further that only the MarcPermissiveStreamReader class handles
these oversized records, the normal MarcStreamReader class will probably
just throw an exception and terminate.
The primary substantive difference in this version is changes to how
MarcPermissiveStreamReader class handles malformed binary MARC
directories. The directory consists of a 3-byte tag, a 4-byte ASCII encoded
field length, and a 5-byte ASCII encoded field offset. Some system decided
that when it encountered an illegal, oversize record (>99999 bytes long) a
reasonable solution would be to write the field offset as a 6-byte ASCII
encoded number. It also now will deal with records where the fields are
stored in an order different than the order of the directory entries.
If you aren't dealing with such benighted records, this update adds little value
for you.