I ran tcpdump to watch the traffic going to oclc, and when the "Received no data from server" response is returned there is no traffic sent or received from the oclc z39.50 server.
So it doesn't seem like a timeout since nothing was sent.
I've added some extra logging to try and see what is going on, and it seems like there is a failure to look up the server info in the case of "Received no data".
[2023-11-27 10:03:53] open-ils.search [INFO:47634:Application.pm:159:17000754433630845] CALL: open-ils.search open-ils.search.z3950.search_class e3ec83033e6f64bb4e2cc1b448dd51e8, HASH(0x55f9c46a23f0)
[2023-11-27 10:03:53] open-ils.search [INFO:47634:Z3950.pm:260:17000754433630845] z3950: service: oclc, async: 1
[2023-11-27 10:03:53] open-ils.search [INFO:47634:Z3950.pm:270:17000754433630845] z3950: non native search
[2023-11-27 10:03:53] open-ils.search [INFO:47634:Z3950.pm:334:17000754433630845] z3950: do_search... for oclc
[2023-11-27 10:03:53] open-ils.search [WARN:47634:Application.pm:624:17000754433630845] open-ils.search.z3950.search_class: Use of uninitialized value in concatenation (.) or string at /usr/local/share/perl/5.36.0/OpenILS/Application/Search/Z3950.pm line 335.
[2023-11-27 10:03:53] open-ils.search [WARN:47634:Application.pm:624:17000754433630845] open-ils.search.z3950.search_class: Use of uninitialized value in concatenation (.) or string at /usr/local/share/perl/5.36.0/OpenILS/Application/Search/Z3950.pm line 335.
[2023-11-27 10:03:53] open-ils.search [WARN:47634:Application.pm:624:17000754433630845] open-ils.search.z3950.search_class: Use of uninitialized value in concatenation (.) or string at /usr/local/share/perl/5.36.0/OpenILS/Application/Search/Z3950.pm line 335.
[2023-11-27 10:03:53] open-ils.search [INFO:47634:Z3950.pm:335:17000754433630845] z3950: Host: , Port: , DB:
[2023-11-27 10:03:53] open-ils.search [INFO:47634:Z3950.pm:336:17000754433630845] z3950: Query:
[2023-11-27 10:03:53] open-ils.search [WARN:47634:Application.pm:624:17000754433630845] open-ils.search.z3950.search_class: Use of uninitialized value $results[-1] in concatenation (.) or string at /usr/local/share/perl/5.36.0/OpenILS/Application/Search/Z3950.pm line 285.
[2023-11-27 10:03:53] open-ils.search [WARN:47634:Application.pm:624:17000754433630845] open-ils.search.z3950.search_class: Use of uninitialized value $connections[-1] in concatenation (.) or string at /usr/local/share/perl/5.36.0/OpenILS/Application/Search/Z3950.pm line 285.
[2023-11-27 10:03:53] open-ils.search [INFO:47634:Z3950.pm:285:17000754433630845] z3950: Result object: , Connection object:
[2023-11-27 10:03:53] open-ils.search [INFO:47634:Z3950.pm:291:17000754433630845] z3950: Connections created
So maybe it is related to the caching of the service connection details in %services?
I ran tcpdump to watch the traffic going to oclc, and when the "Received no data from server" response is returned there is no traffic sent or received from the oclc z39.50 server.
So it doesn't seem like a timeout since nothing was sent.
I've added some extra logging to try and see what is going on, and it seems like there is a failure to look up the server info in the case of "Received no data".
[2023-11-27 10:03:53] open-ils.search [INFO:47634: Application. pm:159: 170007544336308 45] CALL: open-ils.search open-ils. search. z3950.search_ class e3ec83033e6f64b b4e2cc1b448dd51 e8, HASH(0x55f9c46a 23f0) Z3950.pm: 260:17000754433 630845] z3950: service: oclc, async: 1 Z3950.pm: 270:17000754433 630845] z3950: non native search Z3950.pm: 334:17000754433 630845] z3950: do_search... for oclc Application. pm:624: 170007544336308 45] open-ils. search. z3950.search_ class: Use of uninitialized value in concatenation (.) or string at /usr/local/ share/perl/ 5.36.0/ OpenILS/ Application/ Search/ Z3950.pm line 335. Application. pm:624: 170007544336308 45] open-ils. search. z3950.search_ class: Use of uninitialized value in concatenation (.) or string at /usr/local/ share/perl/ 5.36.0/ OpenILS/ Application/ Search/ Z3950.pm line 335. Application. pm:624: 170007544336308 45] open-ils. search. z3950.search_ class: Use of uninitialized value in concatenation (.) or string at /usr/local/ share/perl/ 5.36.0/ OpenILS/ Application/ Search/ Z3950.pm line 335. Z3950.pm: 335:17000754433 630845] z3950: Host: , Port: , DB: Z3950.pm: 336:17000754433 630845] z3950: Query: Application. pm:624: 170007544336308 45] open-ils. search. z3950.search_ class: Use of uninitialized value $results[-1] in concatenation (.) or string at /usr/local/ share/perl/ 5.36.0/ OpenILS/ Application/ Search/ Z3950.pm line 285. Application. pm:624: 170007544336308 45] open-ils. search. z3950.search_ class: Use of uninitialized value $connections[-1] in concatenation (.) or string at /usr/local/ share/perl/ 5.36.0/ OpenILS/ Application/ Search/ Z3950.pm line 285. Z3950.pm: 285:17000754433 630845] z3950: Result object: , Connection object: Z3950.pm: 291:17000754433 630845] z3950: Connections created
[2023-11-27 10:03:53] open-ils.search [INFO:47634:
[2023-11-27 10:03:53] open-ils.search [INFO:47634:
[2023-11-27 10:03:53] open-ils.search [INFO:47634:
[2023-11-27 10:03:53] open-ils.search [WARN:47634:
[2023-11-27 10:03:53] open-ils.search [WARN:47634:
[2023-11-27 10:03:53] open-ils.search [WARN:47634:
[2023-11-27 10:03:53] open-ils.search [INFO:47634:
[2023-11-27 10:03:53] open-ils.search [INFO:47634:
[2023-11-27 10:03:53] open-ils.search [WARN:47634:
[2023-11-27 10:03:53] open-ils.search [WARN:47634:
[2023-11-27 10:03:53] open-ils.search [INFO:47634:
[2023-11-27 10:03:53] open-ils.search [INFO:47634:
So maybe it is related to the caching of the service connection details in %services?