Kia ora, greetings -- from the past, some of you will remember me. Nut shell : we have been running (charitable library, non lending) Koha catalogue since 2011 (v. 3.08.24 since July 2015). Rock solid until we got overwhelmed by DDoS and/or AI bots. Thermal protection on the Koha server (apache2 proxied from nginx) failed, literal meltdown. Built a new server (12 core intel CPU, 64G memory, Ubuntu 14.04 LTS security mods - I know, please don't flame me), reinstalled from tar and backup. Apparently a dead-ringer copy of what we had for over a decade. Public server perfect <https://opac.navalmarinearchive.com>. Mysql, Zebra, Pazpar have reconstituted over a hundred thousand biblios and items - no discernible errors, all public users happy (except hackers and AI bots mitigated at front end nginx.) But ... Koha admin (intranet) works fine for everything (items, reports, logs, "about"...) EXCEPT Biblios won't edit nor write new (manual input, nor z3950) records. ERROR : Can't call method "fields" on an undefined value at /usr/share/koha/lib/C4/Biblio.pm line 2483. 2482 # traverse through record 2483 MARCFIELD: foreach my $field ( $record->fields() ) { 2484 my $tag = $field->tag(); if elsif .... We've spent nearly a week, finding minor variations in backups of Biblio.pm (occasional line renumbering and developers' signatures), nothing from a Perl logic perspective. We've done the obvious "diff's", permissions, ownerships, restarts, reboots, koha_perl_deps.pl, SAX parser, perl modules, environment. It's got to be something blazingly simple, after a decade of superb Koha service. Any and all assistance in saving my sanity would be truly appreciated, Thanks and warmest regards, Paul
Did MARC::Record get loaded from CPAN? Perhaps you have a newer version of that module then you had on the old server? That's kind of a shot in the dark, but my first reaction was along those lines too. Might be worth checking at least, if you haven't already. On Tue, Sep 30, 2025 at 2:42 PM Paul A via Koha-devel < koha-devel@lists.koha-community.org> wrote:
Kia ora, greetings -- from the past, some of you will remember me.
Nut shell : we have been running (charitable library, non lending) Koha catalogue since 2011 (v. 3.08.24 since July 2015). Rock solid until we got overwhelmed by DDoS and/or AI bots. Thermal protection on the Koha server (apache2 proxied from nginx) failed, literal meltdown.
Built a new server (12 core intel CPU, 64G memory, Ubuntu 14.04 LTS security mods - I know, please don't flame me), reinstalled from tar and backup. Apparently a dead-ringer copy of what we had for over a decade.
Public server perfect <https://opac.navalmarinearchive.com>. Mysql, Zebra, Pazpar have reconstituted over a hundred thousand biblios and items - no discernible errors, all public users happy (except hackers and AI bots mitigated at front end nginx.)
But ... Koha admin (intranet) works fine for everything (items, reports, logs, "about"...) EXCEPT Biblios won't edit nor write new (manual input, nor z3950) records.
ERROR : Can't call method "fields" on an undefined value at /usr/share/koha/lib/C4/Biblio.pm line 2483.
2482 # traverse through record 2483 MARCFIELD: foreach my $field ( $record->fields() ) { 2484 my $tag = $field->tag(); if elsif ....
We've spent nearly a week, finding minor variations in backups of Biblio.pm (occasional line renumbering and developers' signatures), nothing from a Perl logic perspective. We've done the obvious "diff's", permissions, ownerships, restarts, reboots, koha_perl_deps.pl, SAX parser, perl modules, environment.
It's got to be something blazingly simple, after a decade of superb Koha service. Any and all assistance in saving my sanity would be truly appreciated,
Thanks and warmest regards, Paul
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org https://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : https://www.koha-community.org/ git : https://git.koha-community.org/ bugs : https://bugs.koha-community.org/
-- Michael Hafen Washington County School District Technology Department Systems & Security Analyst
I checked out 3.8.x and tried to follow the operation flow in addbiblio.pl. Most likely the problem is in TransformHtmlToMarc(), which does some stuff with utf8 encoding and stuffs values into a MARC::Field before adding the fields to a MARC::Record. The error in your email is from TransformMarcToKoha, which you would hit in FindDuplicate() if the script has is_modif set. Otherwise it seems like the error should be in ModBiblio() where $record->fields() is called. I haven't looked farther than that, I probably won't have time to investigate any further. Good luck. On Tue, Sep 30, 2025 at 3:48 PM Michael Hafen <michael.hafen@washk12.org> wrote:
Did MARC::Record get loaded from CPAN? Perhaps you have a newer version of that module then you had on the old server? That's kind of a shot in the dark, but my first reaction was along those lines too. Might be worth checking at least, if you haven't already.
On Tue, Sep 30, 2025 at 2:42 PM Paul A via Koha-devel < koha-devel@lists.koha-community.org> wrote:
Kia ora, greetings -- from the past, some of you will remember me.
Nut shell : we have been running (charitable library, non lending) Koha catalogue since 2011 (v. 3.08.24 since July 2015). Rock solid until we got overwhelmed by DDoS and/or AI bots. Thermal protection on the Koha server (apache2 proxied from nginx) failed, literal meltdown.
Built a new server (12 core intel CPU, 64G memory, Ubuntu 14.04 LTS security mods - I know, please don't flame me), reinstalled from tar and backup. Apparently a dead-ringer copy of what we had for over a decade.
Public server perfect <https://opac.navalmarinearchive.com>. Mysql, Zebra, Pazpar have reconstituted over a hundred thousand biblios and items - no discernible errors, all public users happy (except hackers and AI bots mitigated at front end nginx.)
But ... Koha admin (intranet) works fine for everything (items, reports, logs, "about"...) EXCEPT Biblios won't edit nor write new (manual input, nor z3950) records.
ERROR : Can't call method "fields" on an undefined value at /usr/share/koha/lib/C4/Biblio.pm line 2483.
2482 # traverse through record 2483 MARCFIELD: foreach my $field ( $record->fields() ) { 2484 my $tag = $field->tag(); if elsif ....
We've spent nearly a week, finding minor variations in backups of Biblio.pm (occasional line renumbering and developers' signatures), nothing from a Perl logic perspective. We've done the obvious "diff's", permissions, ownerships, restarts, reboots, koha_perl_deps.pl, SAX parser, perl modules, environment.
It's got to be something blazingly simple, after a decade of superb Koha service. Any and all assistance in saving my sanity would be truly appreciated,
Thanks and warmest regards, Paul
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org https://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : https://www.koha-community.org/ git : https://git.koha-community.org/ bugs : https://bugs.koha-community.org/
-- Michael Hafen Washington County School District Technology Department Systems & Security Analyst
-- Michael Hafen Washington County School District Technology Department Systems & Security Analyst
On 9/30/25 18:22, Michael Hafen wrote:
I checked out 3.8.x and tried to follow the operation flow in addbiblio.pl <http://addbiblio.pl>. Most likely the problem is in TransformHtmlToMarc(), which does some stuff with utf8 encoding and stuffs values into a MARC::Field before adding the fields to a MARC::Record. The error in your email is from TransformMarcToKoha, which you would hit in FindDuplicate() if the script has is_modif set. Otherwise it seems like the error should be in ModBiblio() where $record->fields() is called. I haven't looked farther than that, I probably won't have time to investigate any further.
Many thanks for your time to look into this I'll follow up on your suggestion tomorrow (20.23 local time here.) Tnx and regards, Paul
Good luck.
On Tue, Sep 30, 2025 at 3:48 PM Michael Hafen <michael.hafen@washk12.org <mailto:michael.hafen@washk12.org>> wrote:
Did MARC::Record get loaded from CPAN? Perhaps you have a newer version of that module then you had on the old server? That's kind of a shot in the dark, but my first reaction was along those lines too. Might be worth checking at least, if you haven't already.
On Tue, Sep 30, 2025 at 2:42 PM Paul A via Koha-devel <koha- devel@lists.koha-community.org <mailto:koha-devel@lists.koha- community.org>> wrote:
Kia ora, greetings -- from the past, some of you will remember me.
Nut shell : we have been running (charitable library, non lending) Koha catalogue since 2011 (v. 3.08.24 since July 2015). Rock solid until we got overwhelmed by DDoS and/or AI bots. Thermal protection on the Koha server (apache2 proxied from nginx) failed, literal meltdown.
Built a new server (12 core intel CPU, 64G memory, Ubuntu 14.04 LTS security mods - I know, please don't flame me), reinstalled from tar and backup. Apparently a dead-ringer copy of what we had for over a decade.
Public server perfect <https://opac.navalmarinearchive.com <https://opac.navalmarinearchive.com>>. Mysql, Zebra, Pazpar have reconstituted over a hundred thousand biblios and items - no discernible errors, all public users happy (except hackers and AI bots mitigated at front end nginx.)
But ... Koha admin (intranet) works fine for everything (items, reports, logs, "about"...) EXCEPT Biblios won't edit nor write new (manual input, nor z3950) records.
ERROR : Can't call method "fields" on an undefined value at /usr/share/koha/lib/C4/Biblio.pm line 2483.
2482 # traverse through record 2483 MARCFIELD: foreach my $field ( $record->fields() ) { 2484 my $tag = $field->tag(); if elsif ....
We've spent nearly a week, finding minor variations in backups of Biblio.pm (occasional line renumbering and developers' signatures), nothing from a Perl logic perspective. We've done the obvious "diff's", permissions, ownerships, restarts, reboots, koha_perl_deps.pl <http://koha_perl_deps.pl>, SAX parser, perl modules, environment.
It's got to be something blazingly simple, after a decade of superb Koha service. Any and all assistance in saving my sanity would be truly appreciated,
Thanks and warmest regards, Paul
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org <mailto:Koha- devel@lists.koha-community.org> https://lists.koha-community.org/cgi-bin/mailman/listinfo/koha- devel <https://lists.koha-community.org/cgi-bin/mailman/ listinfo/koha-devel> website : https://www.koha-community.org/ <https://www.koha- community.org/> git : https://git.koha-community.org/ <https://git.koha- community.org/> bugs : https://bugs.koha-community.org/ <https://bugs.koha- community.org/>
-- Michael Hafen Washington County School District Technology Department Systems & Security Analyst
-- Michael Hafen Washington County School District Technology Department Systems & Security Analyst
On 9/30/25 17:48, Michael Hafen wrote:
Did MARC::Record get loaded from CPAN? Perhaps you have a newer version of that module then you had on the old server? That's kind of a shot in the dark, but my first reaction was along those lines too. Might be worth checking at least, if you haven't already.
Thanks, yes, there were a few that had to be found at CPAN (not by choice, just unavailability elsewhere.) This was not a "direct" CPAN, but could have been "updated' as a side-line or dependency. Tomorrow, I'll replace it with the original, if different. Again tnx and br Paul
On Tue, Sep 30, 2025 at 2:42 PM Paul A via Koha-devel <koha- devel@lists.koha-community.org <mailto:koha-devel@lists.koha- community.org>> wrote:
Kia ora, greetings -- from the past, some of you will remember me.
Nut shell : we have been running (charitable library, non lending) Koha catalogue since 2011 (v. 3.08.24 since July 2015). Rock solid until we got overwhelmed by DDoS and/or AI bots. Thermal protection on the Koha server (apache2 proxied from nginx) failed, literal meltdown.
Built a new server (12 core intel CPU, 64G memory, Ubuntu 14.04 LTS security mods - I know, please don't flame me), reinstalled from tar and backup. Apparently a dead-ringer copy of what we had for over a decade.
Public server perfect <https://opac.navalmarinearchive.com <https:// opac.navalmarinearchive.com>>. Mysql, Zebra, Pazpar have reconstituted over a hundred thousand biblios and items - no discernible errors, all public users happy (except hackers and AI bots mitigated at front end nginx.)
But ... Koha admin (intranet) works fine for everything (items, reports, logs, "about"...) EXCEPT Biblios won't edit nor write new (manual input, nor z3950) records.
ERROR : Can't call method "fields" on an undefined value at /usr/share/koha/lib/C4/Biblio.pm line 2483.
2482 # traverse through record 2483 MARCFIELD: foreach my $field ( $record->fields() ) { 2484 my $tag = $field->tag(); if elsif ....
We've spent nearly a week, finding minor variations in backups of Biblio.pm (occasional line renumbering and developers' signatures), nothing from a Perl logic perspective. We've done the obvious "diff's", permissions, ownerships, restarts, reboots, koha_perl_deps.pl <http://koha_perl_deps.pl>, SAX parser, perl modules, environment.
It's got to be something blazingly simple, after a decade of superb Koha service. Any and all assistance in saving my sanity would be truly appreciated,
Thanks and warmest regards, Paul
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org <mailto:Koha-devel@lists.koha- community.org> https://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel <https://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel> website : https://www.koha-community.org/ <https://www.koha- community.org/> git : https://git.koha-community.org/ <https://git.koha-community.org/> bugs : https://bugs.koha-community.org/ <https://bugs.koha- community.org/>
-- Michael Hafen Washington County School District Technology Department Systems & Security Analyst
On 9/30/25 20:30, Paul A wrote:
On 9/30/25 17:48, Michael Hafen wrote:
Did MARC::Record get loaded from CPAN? Perhaps you have a newer version of that module then you had on the old server? That's kind of a shot in the dark, but my first reaction was along those lines too. Might be worth checking at least, if you haven't already.
Thanks, yes, there were a few that had to be found at CPAN (not by choice, just unavailability elsewhere.) This was not a "direct" CPAN, but could have been "updated' as a side-line or dependency. Tomorrow, I'll replace it with the original, if different.
Quick follow-up. MARC::Record was not a CPAN, but regular aot. All files are Version 2.06 and attributed to Koha (Galen C. and Robin S., whose names I recognize.) Agreed that this might be (part of) my problem, thanks. However, the files (dir) have been written (new install) to: ./usr/share/koha/lib/Koha/Filter/MARC ./usr/share/perl5/MARC ./usr/local/lib/perl/5.18.2/auto/MARC ./usr/local/share/perl/5.18.2/MARC so I'm trying to weed out what is needed, cross checking with koha's 'env'. Many tnx and br, Paul
Again tnx and br Paul
On Tue, Sep 30, 2025 at 2:42 PM Paul A via Koha-devel <koha- devel@lists.koha-community.org <mailto:koha-devel@lists.koha- community.org>> wrote:
Kia ora, greetings -- from the past, some of you will remember me.
Nut shell : we have been running (charitable library, non lending) Koha catalogue since 2011 (v. 3.08.24 since July 2015). Rock solid until we got overwhelmed by DDoS and/or AI bots. Thermal protection on the Koha server (apache2 proxied from nginx) failed, literal meltdown.
Built a new server (12 core intel CPU, 64G memory, Ubuntu 14.04 LTS security mods - I know, please don't flame me), reinstalled from tar and backup. Apparently a dead-ringer copy of what we had for over a decade.
Public server perfect <https://opac.navalmarinearchive.com <https:// opac.navalmarinearchive.com>>. Mysql, Zebra, Pazpar have reconstituted over a hundred thousand biblios and items - no discernible errors, all public users happy (except hackers and AI bots mitigated at front end nginx.)
But ... Koha admin (intranet) works fine for everything (items, reports, logs, "about"...) EXCEPT Biblios won't edit nor write new (manual input, nor z3950) records.
ERROR : Can't call method "fields" on an undefined value at /usr/share/koha/lib/C4/Biblio.pm line 2483.
2482 # traverse through record 2483 MARCFIELD: foreach my $field ( $record->fields() ) { 2484 my $tag = $field->tag(); if elsif ....
We've spent nearly a week, finding minor variations in backups of Biblio.pm (occasional line renumbering and developers' signatures), nothing from a Perl logic perspective. We've done the obvious "diff's", permissions, ownerships, restarts, reboots, koha_perl_deps.pl <http://koha_perl_deps.pl>, SAX parser, perl modules, environment.
It's got to be something blazingly simple, after a decade of superb Koha service. Any and all assistance in saving my sanity would be truly appreciated,
Thanks and warmest regards, Paul
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org <mailto:Koha-devel@lists.koha- community.org> https://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel <https://lists.koha-community.org/cgi-bin/mailman/listinfo/koha- devel> website : https://www.koha-community.org/ <https://www.koha- community.org/> git : https://git.koha-community.org/ <https://git.koha- community.org/> bugs : https://bugs.koha-community.org/ <https://bugs.koha- community.org/>
-- Michael Hafen Washington County School District Technology Department Systems & Security Analyst
Hey Paul, I do have a long memory for my fellow Canadians. Koha 3.08 was the first version I contributed to back in 2012. I'd be remiss if I didn't say that you should definitely upgrade to a new version of Koha. But with that out of the way... I think Michael has given some good advice. Overall, it sounds like a case of just having to write debugging code and try to unpick it by hand. Because it sounds super weird that it's not working to add or edit bibs. David Cook Senior Software Engineer Prosentient Systems Suite 7.03 6a Glen St Milsons Point NSW 2061 Australia Office: 02 9212 0899 -----Original Message----- From: Koha-devel <koha-devel-bounces@lists.koha-community.org> On Behalf Of Paul A via Koha-devel Sent: Wednesday, 1 October 2025 6:42 AM To: Koha Devel <koha-devel@lists.koha-community.org> Subject: [Koha-devel] Assistance, please Kia ora, greetings -- from the past, some of you will remember me. Nut shell : we have been running (charitable library, non lending) Koha catalogue since 2011 (v. 3.08.24 since July 2015). Rock solid until we got overwhelmed by DDoS and/or AI bots. Thermal protection on the Koha server (apache2 proxied from nginx) failed, literal meltdown. Built a new server (12 core intel CPU, 64G memory, Ubuntu 14.04 LTS security mods - I know, please don't flame me), reinstalled from tar and backup. Apparently a dead-ringer copy of what we had for over a decade. Public server perfect <https://opac.navalmarinearchive.com>. Mysql, Zebra, Pazpar have reconstituted over a hundred thousand biblios and items - no discernible errors, all public users happy (except hackers and AI bots mitigated at front end nginx.) But ... Koha admin (intranet) works fine for everything (items, reports, logs, "about"...) EXCEPT Biblios won't edit nor write new (manual input, nor z3950) records. ERROR : Can't call method "fields" on an undefined value at /usr/share/koha/lib/C4/Biblio.pm line 2483. 2482 # traverse through record 2483 MARCFIELD: foreach my $field ( $record->fields() ) { 2484 my $tag = $field->tag(); if elsif .... We've spent nearly a week, finding minor variations in backups of Biblio.pm (occasional line renumbering and developers' signatures), nothing from a Perl logic perspective. We've done the obvious "diff's", permissions, ownerships, restarts, reboots, koha_perl_deps.pl, SAX parser, perl modules, environment. It's got to be something blazingly simple, after a decade of superb Koha service. Any and all assistance in saving my sanity would be truly appreciated, Thanks and warmest regards, Paul _______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org https://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : https://www.koha-community.org/ git : https://git.koha-community.org/ bugs : https://bugs.koha-community.org/
participants (3)
-
David Cook -
Michael Hafen -
Paul A