[Tex/LaTex] Very strange error suddenly appeared running Biber

biberbiblatex

I am on a Mac with MacTex 2020 and ran into a strange problem with Biber. Working on a document all was fine, I did not change the bibliography (says my git) and only fixing typos (not even adding cites) and suddenly latexmk stopped working after a Biber run, while that looked like

INFO - This is Biber 2.14
INFO - Logfile is 'doc.blg'
INFO - Reading 'doc.bcf'
INFO - Found 31 citekeys in bib section 0
INFO - Processing section 0
INFO - Globbing data source 'literature.bib'
INFO - Globbed data source 'literature.bib' to literature.bib
INFO - Looking for bibtex format file 'literature.bib' for section 0
INFO - LaTeX decoding ...
INFO - Found BibTeX data source 'literature.bib'

so harmless in my view. Then with --debug I additionally get in the end.

INFO - LaTeX decoding ...
warning: overriding existing definition of macro "jun"
warning: overriding existing definition of macro "jul"
warning: overriding existing definition of macro "sep"
warning: overriding existing definition of macro "jan"
[...]
warning: overriding existing definition of macro "nov"
INFO - Found BibTeX data source 'literature.bib'
Unicode::UCD: failed to find unicore/version in /var/folders/hm/gt63cn0j2r7bwbzw7c1hww1r0000gn/T/par-626572676d616e6e/cache-2f8a664c3c933a44d096bcc8d018a5e92bced897/inc/lib /var/folders/hm/gt63cn0j2r7bwbzw7c1hww1r0000gn/T/par-626572676d616e6e/cache-2f8a664c3c933a44d096bcc8d018a5e92bced897/inc CODE(0x7fd026aeb5a8) CODE(0x7fd026aebb90) at /var/folders/hm/gt63cn0j2r7bwbzw7c1hww1r0000gn/T/par-626572676d616e6e/cache-2f8a664c3c933a44d096bcc8d018a5e92bced897/inc/lib/Biber/Input/file/bibtex.pm line 1011.

It seems unrelated to the library itself since deleting a few entries (going through deleting one half, then the other), the problem persists.
It does not happen for an empty literature, but as soon as a first entry is added (just author/journal/title/year/volume/pages – no utf8-only chars) this error message appears.

what does this last error message mean?

How can I solve this?

Best Answer

Cryptic errors like this are often caused by a corrupted cache. You can try deleting the cache as explained in Biblatex/biber fails with a strange error about missing recode_data.xml file. Usually you can find the directory that you need to delete by running

biber --cache

in the command line.

Rerun Biber afterwards. The next Biber run may take much longer than usual; wait for it to finish. Do not abort the Biber run, do not start another Biber run.


Biber is a Perl program, but to make it easier for users and to avoid version issues (Biber depends on Unicode modules that are updated periodically) Biber packs up its dependencies with PAR::Packer so it essentially becomes a stand-alone binary.

On the first run Biber unpacks itself into a cache location and from then on loads its dependencies from there.

Sometimes the cache gets corrupted. Maybe because the unpacking process was killed too early. Maybe because some program tried to clean up the cache. Maybe because of an anti-virus software. Maybe because of a hidden bug.

In those cases Biber may produce cryptic error messages or may not run at all.

See also the recent Biber 2.14 - Puzzling repeated error : "Invalid format '2020-01-01' of date field 'date' - ignoring".