[Bug]: ERROR: [iTunes] search request error AxiosError: getaddrinfo EAI_AGAIN itunes.apple.com #2509

Closed
opened 2026-04-25 00:07:51 +02:00 by adam · 1 comment
Owner

Originally created by @kwingart on GitHub (Jan 21, 2025).

What happened?

audiobookshelf | [2025-01-21 14:22:38.750] ERROR: [iTunes] search request error AxiosError: getaddrinfo EAI_AGAIN itunes.apple.com
audiobookshelf | at GetAddrInfoReqWrap.onlookupall [as oncomplete] (node:dns:120:26) {
audiobookshelf | hostname: 'itunes.apple.com',
audiobookshelf | syscall: 'getaddrinfo',
audiobookshelf | code: 'EAI_AGAIN',
audiobookshelf | errno: -3001,
audiobookshelf | config: {
audiobookshelf | transitional: {
audiobookshelf | silentJSONParsing: true,
audiobookshelf | forcedJSONParsing: true,
audiobookshelf | clarifyTimeoutError: false
audiobookshelf | },
audiobookshelf | adapter: [Function: httpAdapter],
audiobookshelf | transformRequest: [ [Function: transformRequest] ],
audiobookshelf | transformResponse: [ [Function: transformResponse] ],
audiobookshelf | timeout: 30000,
audiobookshelf | xsrfCookieName: 'XSRF-TOKEN',
audiobookshelf | xsrfHeaderName: 'X-XSRF-TOKEN',
audiobookshelf | maxContentLength: -1,
audiobookshelf | maxBodyLength: -1,
audiobookshelf | env: { FormData: [Function] },
audiobookshelf | validateStatus: [Function: validateStatus],
audiobookshelf | headers: {
audiobookshelf | Accept: 'application/json, text/plain, /',
audiobookshelf | 'User-Agent': 'axios/0.27.2'
audiobookshelf | },
audiobookshelf | params: {
audiobookshelf | term: 'Science',
audiobookshelf | media: 'podcast',
audiobookshelf | entity: 'podcast',
audiobookshelf | lang: undefined,
audiobookshelf | limit: undefined,
audiobookshelf | country: 'us'
audiobookshelf | },
audiobookshelf | method: 'get',
audiobookshelf | url: 'https://itunes.apple.com/search',
audiobookshelf | data: undefined
audiobookshelf | },
audiobookshelf | request: <ref *1> Writable {
audiobookshelf | _events: {
audiobookshelf | close: undefined,
audiobookshelf | error: [Function: handleRequestError],
audiobookshelf | prefinish: undefined,
audiobookshelf | finish: undefined,
audiobookshelf | drain: undefined,
audiobookshelf | response: [Function: handleResponse],
audiobookshelf | socket: [Array],
audiobookshelf | timeout: undefined,
audiobookshelf | abort: undefined
audiobookshelf | },
audiobookshelf | _writableState: WritableState {
audiobookshelf | highWaterMark: 16384,
audiobookshelf | length: 0,
audiobookshelf | corked: 0,
audiobookshelf | onwrite: [Function: bound onwrite],
audiobookshelf | writelen: 0,
audiobookshelf | bufferedIndex: 0,
audiobookshelf | pendingcb: 0,
audiobookshelf | [Symbol(kState)]: 17580812,
audiobookshelf | [Symbol(kBufferedValue)]: null
audiobookshelf | },
audiobookshelf | _maxListeners: undefined,
audiobookshelf | _options: {
audiobookshelf | maxRedirects: 21,
audiobookshelf | maxBodyLength: 10485760,
audiobookshelf | protocol: 'https:',
audiobookshelf | path: '/search?term=Science&media=podcast&entity=podcast&country=us',
audiobookshelf | method: 'GET',
audiobookshelf | headers: [Object],
audiobookshelf | agent: undefined,
audiobookshelf | agents: [Object],
audiobookshelf | auth: undefined,
audiobookshelf | hostname: 'itunes.apple.com',
audiobookshelf | port: null,
audiobookshelf | nativeProtocols: [Object],
audiobookshelf | pathname: '/search',
audiobookshelf | search: '?term=Science&media=podcast&entity=podcast&country=us'
audiobookshelf | },
audiobookshelf | _ended: true,
audiobookshelf | _ending: true,
audiobookshelf | _redirectCount: 0,
audiobookshelf | _redirects: [],
audiobookshelf | _requestBodyLength: 0,
audiobookshelf | _requestBodyBuffers: [],
audiobookshelf | _eventsCount: 3,
audiobookshelf | _onNativeResponse: [Function (anonymous)],
audiobookshelf | _currentRequest: ClientRequest {
audiobookshelf | _events: [Object: null prototype],
audiobookshelf | _eventsCount: 7,
audiobookshelf | _maxListeners: undefined,
audiobookshelf | outputData: [],
audiobookshelf | outputSize: 0,
audiobookshelf | writable: true,
audiobookshelf | destroyed: false,
audiobookshelf | _last: true,
audiobookshelf | chunkedEncoding: false,
audiobookshelf | shouldKeepAlive: true,
audiobookshelf | maxRequestsOnConnectionReached: false,
audiobookshelf | _defaultKeepAlive: true,
audiobookshelf | useChunkedEncodingByDefault: false,
audiobookshelf | sendDate: false,
audiobookshelf | _removedConnection: false,
audiobookshelf | _removedContLen: false,
audiobookshelf | _removedTE: false,
audiobookshelf | strictContentLength: false,
audiobookshelf | _contentLength: 0,
audiobookshelf | _hasBody: true,
audiobookshelf | _trailer: '',
audiobookshelf | finished: true,
audiobookshelf | _headerSent: true,
audiobookshelf | _closed: false,
audiobookshelf | socket: [TLSSocket],
audiobookshelf | _header: 'GET /search?term=Science&media=podcast&entity=podcast&country=us HTTP/1.1\r\n' +
audiobookshelf | 'Accept: application/json, text/plain, /\r\n' +
audiobookshelf | 'User-Agent: axios/0.27.2\r\n' +
audiobookshelf | 'Host: itunes.apple.com\r\n' +
audiobookshelf | 'Connection: keep-alive\r\n' +
audiobookshelf | '\r\n',
audiobookshelf | _keepAliveTimeout: 0,
audiobookshelf | _onPendingData: [Function: nop],
audiobookshelf | agent: [Agent],
audiobookshelf | socketPath: undefined,
audiobookshelf | method: 'GET',
audiobookshelf | maxHeaderSize: undefined,
audiobookshelf | insecureHTTPParser: undefined,
audiobookshelf | joinDuplicateHeaders: undefined,
audiobookshelf | path: '/search?term=Science&media=podcast&entity=podcast&country=us',
audiobookshelf | _ended: false,
audiobookshelf | res: null,
audiobookshelf | aborted: false,
audiobookshelf | timeoutCb: [Function: emitRequestTimeout],
audiobookshelf | upgradeOrConnect: false,
audiobookshelf | parser: null,
audiobookshelf | maxHeadersCount: null,
audiobookshelf | reusedSocket: false,
audiobookshelf | host: 'itunes.apple.com',
audiobookshelf | protocol: 'https:',
audiobookshelf | _redirectable: [Circular *1],
audiobookshelf | [Symbol(shapeMode)]: false,
audiobookshelf | [Symbol(kCapture)]: false,
audiobookshelf | [Symbol(kBytesWritten)]: 0,
audiobookshelf | [Symbol(kNeedDrain)]: false,
audiobookshelf | [Symbol(corked)]: 0,
audiobookshelf | [Symbol(kOutHeaders)]: [Object: null prototype],
audiobookshelf | [Symbol(errored)]: null,
audiobookshelf | [Symbol(kHighWaterMark)]: 16384,
audiobookshelf | [Symbol(kRejectNonStandardBodyWrites)]: false,
audiobookshelf | [Symbol(kUniqueHeaders)]: null
audiobookshelf | },
audiobookshelf | _currentUrl: 'https://itunes.apple.com/search?term=Science&media=podcast&entity=podcast&country=us',
audiobookshelf | _timeout: null,
audiobookshelf | [Symbol(shapeMode)]: true,
audiobookshelf | [Symbol(kCapture)]: false
audiobookshelf | }
audiobookshelf | }

What did you expect to happen?

Show podcasts related to 'Science'.

Steps to reproduce the issue

  1. login the web,Add podcasts,search “Science”

Audiobookshelf version

v2.18.1

How are you running audiobookshelf?

Docker

What OS is your Audiobookshelf server hosted from?

Linux

If the issue is being seen in the UI, what browsers are you seeing the problem on?

Chrome

Logs


Additional Notes

No response

Originally created by @kwingart on GitHub (Jan 21, 2025). ### What happened? audiobookshelf | [2025-01-21 14:22:38.750] ERROR: [iTunes] search request error AxiosError: getaddrinfo EAI_AGAIN itunes.apple.com audiobookshelf | at GetAddrInfoReqWrap.onlookupall [as oncomplete] (node:dns:120:26) { audiobookshelf | hostname: 'itunes.apple.com', audiobookshelf | syscall: 'getaddrinfo', audiobookshelf | code: 'EAI_AGAIN', audiobookshelf | errno: -3001, audiobookshelf | config: { audiobookshelf | transitional: { audiobookshelf | silentJSONParsing: true, audiobookshelf | forcedJSONParsing: true, audiobookshelf | clarifyTimeoutError: false audiobookshelf | }, audiobookshelf | adapter: [Function: httpAdapter], audiobookshelf | transformRequest: [ [Function: transformRequest] ], audiobookshelf | transformResponse: [ [Function: transformResponse] ], audiobookshelf | timeout: 30000, audiobookshelf | xsrfCookieName: 'XSRF-TOKEN', audiobookshelf | xsrfHeaderName: 'X-XSRF-TOKEN', audiobookshelf | maxContentLength: -1, audiobookshelf | maxBodyLength: -1, audiobookshelf | env: { FormData: [Function] }, audiobookshelf | validateStatus: [Function: validateStatus], audiobookshelf | headers: { audiobookshelf | Accept: 'application/json, text/plain, */*', audiobookshelf | 'User-Agent': 'axios/0.27.2' audiobookshelf | }, audiobookshelf | params: { audiobookshelf | term: 'Science', audiobookshelf | media: 'podcast', audiobookshelf | entity: 'podcast', audiobookshelf | lang: undefined, audiobookshelf | limit: undefined, audiobookshelf | country: 'us' audiobookshelf | }, audiobookshelf | method: 'get', audiobookshelf | url: 'https://itunes.apple.com/search', audiobookshelf | data: undefined audiobookshelf | }, audiobookshelf | request: <ref *1> Writable { audiobookshelf | _events: { audiobookshelf | close: undefined, audiobookshelf | error: [Function: handleRequestError], audiobookshelf | prefinish: undefined, audiobookshelf | finish: undefined, audiobookshelf | drain: undefined, audiobookshelf | response: [Function: handleResponse], audiobookshelf | socket: [Array], audiobookshelf | timeout: undefined, audiobookshelf | abort: undefined audiobookshelf | }, audiobookshelf | _writableState: WritableState { audiobookshelf | highWaterMark: 16384, audiobookshelf | length: 0, audiobookshelf | corked: 0, audiobookshelf | onwrite: [Function: bound onwrite], audiobookshelf | writelen: 0, audiobookshelf | bufferedIndex: 0, audiobookshelf | pendingcb: 0, audiobookshelf | [Symbol(kState)]: 17580812, audiobookshelf | [Symbol(kBufferedValue)]: null audiobookshelf | }, audiobookshelf | _maxListeners: undefined, audiobookshelf | _options: { audiobookshelf | maxRedirects: 21, audiobookshelf | maxBodyLength: 10485760, audiobookshelf | protocol: 'https:', audiobookshelf | path: '/search?term=Science&media=podcast&entity=podcast&country=us', audiobookshelf | method: 'GET', audiobookshelf | headers: [Object], audiobookshelf | agent: undefined, audiobookshelf | agents: [Object], audiobookshelf | auth: undefined, audiobookshelf | hostname: 'itunes.apple.com', audiobookshelf | port: null, audiobookshelf | nativeProtocols: [Object], audiobookshelf | pathname: '/search', audiobookshelf | search: '?term=Science&media=podcast&entity=podcast&country=us' audiobookshelf | }, audiobookshelf | _ended: true, audiobookshelf | _ending: true, audiobookshelf | _redirectCount: 0, audiobookshelf | _redirects: [], audiobookshelf | _requestBodyLength: 0, audiobookshelf | _requestBodyBuffers: [], audiobookshelf | _eventsCount: 3, audiobookshelf | _onNativeResponse: [Function (anonymous)], audiobookshelf | _currentRequest: ClientRequest { audiobookshelf | _events: [Object: null prototype], audiobookshelf | _eventsCount: 7, audiobookshelf | _maxListeners: undefined, audiobookshelf | outputData: [], audiobookshelf | outputSize: 0, audiobookshelf | writable: true, audiobookshelf | destroyed: false, audiobookshelf | _last: true, audiobookshelf | chunkedEncoding: false, audiobookshelf | shouldKeepAlive: true, audiobookshelf | maxRequestsOnConnectionReached: false, audiobookshelf | _defaultKeepAlive: true, audiobookshelf | useChunkedEncodingByDefault: false, audiobookshelf | sendDate: false, audiobookshelf | _removedConnection: false, audiobookshelf | _removedContLen: false, audiobookshelf | _removedTE: false, audiobookshelf | strictContentLength: false, audiobookshelf | _contentLength: 0, audiobookshelf | _hasBody: true, audiobookshelf | _trailer: '', audiobookshelf | finished: true, audiobookshelf | _headerSent: true, audiobookshelf | _closed: false, audiobookshelf | socket: [TLSSocket], audiobookshelf | _header: 'GET /search?term=Science&media=podcast&entity=podcast&country=us HTTP/1.1\r\n' + audiobookshelf | 'Accept: application/json, text/plain, */*\r\n' + audiobookshelf | 'User-Agent: axios/0.27.2\r\n' + audiobookshelf | 'Host: itunes.apple.com\r\n' + audiobookshelf | 'Connection: keep-alive\r\n' + audiobookshelf | '\r\n', audiobookshelf | _keepAliveTimeout: 0, audiobookshelf | _onPendingData: [Function: nop], audiobookshelf | agent: [Agent], audiobookshelf | socketPath: undefined, audiobookshelf | method: 'GET', audiobookshelf | maxHeaderSize: undefined, audiobookshelf | insecureHTTPParser: undefined, audiobookshelf | joinDuplicateHeaders: undefined, audiobookshelf | path: '/search?term=Science&media=podcast&entity=podcast&country=us', audiobookshelf | _ended: false, audiobookshelf | res: null, audiobookshelf | aborted: false, audiobookshelf | timeoutCb: [Function: emitRequestTimeout], audiobookshelf | upgradeOrConnect: false, audiobookshelf | parser: null, audiobookshelf | maxHeadersCount: null, audiobookshelf | reusedSocket: false, audiobookshelf | host: 'itunes.apple.com', audiobookshelf | protocol: 'https:', audiobookshelf | _redirectable: [Circular *1], audiobookshelf | [Symbol(shapeMode)]: false, audiobookshelf | [Symbol(kCapture)]: false, audiobookshelf | [Symbol(kBytesWritten)]: 0, audiobookshelf | [Symbol(kNeedDrain)]: false, audiobookshelf | [Symbol(corked)]: 0, audiobookshelf | [Symbol(kOutHeaders)]: [Object: null prototype], audiobookshelf | [Symbol(errored)]: null, audiobookshelf | [Symbol(kHighWaterMark)]: 16384, audiobookshelf | [Symbol(kRejectNonStandardBodyWrites)]: false, audiobookshelf | [Symbol(kUniqueHeaders)]: null audiobookshelf | }, audiobookshelf | _currentUrl: 'https://itunes.apple.com/search?term=Science&media=podcast&entity=podcast&country=us', audiobookshelf | _timeout: null, audiobookshelf | [Symbol(shapeMode)]: true, audiobookshelf | [Symbol(kCapture)]: false audiobookshelf | } audiobookshelf | } ### What did you expect to happen? Show podcasts related to 'Science'. ### Steps to reproduce the issue 1. login the web,Add podcasts,search “Science” ### Audiobookshelf version v2.18.1 ### How are you running audiobookshelf? Docker ### What OS is your Audiobookshelf server hosted from? Linux ### If the issue is being seen in the UI, what browsers are you seeing the problem on? Chrome ### Logs ```shell ``` ### Additional Notes _No response_
adam added the bug label 2026-04-25 00:07:51 +02:00
adam closed this issue 2026-04-25 00:07:52 +02:00
Author
Owner

@advplyr commented on GitHub (Jan 21, 2025):

So far the EAI_AGAIN issue has been brought up many times and every time it is an issue with the users network.
We can re-open this is if it is shown to be a bug with Abs. Users in the Discord may be able help troubleshoot a network issue.

See https://github.com/advplyr/audiobookshelf/issues?q=is%3Aissue%20state%3Aclosed%20EAI_AGAIN

@advplyr commented on GitHub (Jan 21, 2025): So far the EAI_AGAIN issue has been brought up many times and every time it is an issue with the users network. We can re-open this is if it is shown to be a bug with Abs. Users in the Discord may be able help troubleshoot a network issue. See https://github.com/advplyr/audiobookshelf/issues?q=is%3Aissue%20state%3Aclosed%20EAI_AGAIN
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/audiobookshelf#2509