Audiobookshelf is crashing in TrueNAS scale, "Socket Disconnected", "Socket failed to Connect"

Mark Holtz

Contributor
Joined
Feb 3, 2015
Messages
124
So, I'm trying to utilize the Audiobookshelf which was an official release earlier this week on TrueNAS scale. The app installed fine, and I have it configured with Network Configuration → Host Network enabled so that I can use port forwarding to access my server externally. I'm only importing one of my libraries, but about 20 books load before the instance crashes. The "Related Kubernetes Events" shows the following:

[B]2024-03-30 09:06:08[/B]Readiness probe failed: Get "http://192.168.1.2:30067/healthcheck": dial tcp 192.168.1.2:30067: connect: connection refused [B]2024-03-30 09:06:08[/B]Liveness probe failed: Get "http://192.168.1.2:30067/healthcheck": dial tcp 192.168.1.2:30067: connect: connection refused [B]2024-03-30 09:05:16[/B]Back-off restarting failed container audiobookshelf in pod audiobookshelf-995997dd8-tfhq6_ix-audiobookshelf(1d7eccc4-89f8-414e-9644-070bafa14f56) [B]2024-03-30 09:05:11[/B]Container image "ghcr.io/advplyr/audiobookshelf:2.8.1" already present on machine [B]2024-03-30 09:01:34[/B]Created container audiobookshelf [B]2024-03-30 09:01:34[/B]Started container audiobookshelf [B]2024-03-30 09:01:33[/B]Successfully pulled image "ghcr.io/advplyr/audiobookshelf:2.8.1" in 15.383561681s (15.383573355s including waiting) [B]2024-03-30 09:01:17[/B]Pulling image "ghcr.io/advplyr/audiobookshelf:2.8.1" [B]2024-03-30 09:01:11[/B]Created container audiobookshelf-install-01-permissions [B]2024-03-30 09:01:11[/B]Started container audiobookshelf-install-01-permissions [B]2024-03-30 09:01:09[/B]Container image "bash:4.4.23" already present on machine [B]2024-03-30 09:01:08[/B]Scaled up replica set audiobookshelf-995997dd8 to 1 [B]2024-03-30 09:01:08[/B]Created pod: audiobookshelf-995997dd8-tfhq6 [B]2024-03-30 09:01:08[/B]Successfully assigned ix-audiobookshelf/audiobookshelf-995997dd8-tfhq6 to ix-truenas

And when I look at the application logs, I see the following:
2024-03-30 09:10:50.773 DEBUG [ApiCacheManager] Cache hit: {"user":"root","url":"/libraries/aa32047f-fc37-43cf-a312-c12ace461c7b?include=filterdata"} 2024-03-30 09:10:50.837 DEBUG [ApiCacheManager] count: 2 size: 57415 2024-03-30 09:10:50.902 FATAL [Server] Unhandled rejection: SequelizeDatabaseError: SQLITE_IOERR: disk I/O error, promise: Promise { <rejected> Error at Database.<anonymous> (/node_modules/sequelize/lib/dialects/sqlite/query.js:185:27) at /node_modules/sequelize/lib/dialects/sqlite/query.js:183:50 at new Promise (<anonymous>) at Query.run (/node_modules/sequelize/lib/dialects/sqlite/query.js:183:12) at /node_modules/sequelize/lib/sequelize.js:315:28 at async SQLiteQueryInterface.select (/node_modules/sequelize/lib/dialects/abstract/query-interface.js:407:12) at async book.findAll (/node_modules/sequelize/lib/model.js:1140:21) at async Promise.all (index 1) at async book.findAndCountAll (/node_modules/sequelize/lib/model.js:1322:27) at async Object.getFilteredLibraryItems (/server/utils/queries/libraryItemsBookFilters.js:560:36) { name: 'SequelizeDatabaseError', parent: [Error: SQLITE_IOERR: disk I/O error] { errno: 10, code: 'SQLITE_IOERR', sql: "SELECT `book`.`id`, `book`.`title`, `book`.`titleIgnorePrefix`, `book`.`subtitle`, `book`.`publishedYear`, `book`.`publishedDate`, `book`.`publisher`, `book`.`description`, `book`.`isbn`, `book`.`asin`, `book`.`language`, `book`.`explicit`, `book`.`abridged`, `book`.`coverPath`, `book`.`duration`, `book`.`narrators`, `book`.`audioFiles`, `book`.`ebookFile`, `book`.`chapters`, `book`.`tags`, `book`.`genres`, `book`.`createdAt`, `book`.`updatedAt`, `libraryItem`.`id` AS `libraryItem.id`, `libraryItem`.`ino` AS `libraryItem.ino`, `libraryItem`.`path` AS `libraryItem.path`, `libraryItem`.`relPath` AS `libraryItem.relPath`, `libraryItem`.`mediaId` AS `libraryItem.mediaId`, `libraryItem`.`mediaType` AS `libraryItem.mediaType`, `libraryItem`.`isFile` AS `libraryItem.isFile`, `libraryItem`.`isMissing` AS `libraryItem.isMissing`, `libraryItem`.`isInvalid` AS `libraryItem.isInvalid`, `libraryItem`.`mtime` AS `libraryItem.mtime`, `libraryItem`.`ctime` AS `libraryItem.ctime`, `libraryItem`.`birthtime` AS `libraryItem.birthtime`, `libraryItem`.`size` AS `libraryItem.size`, `libraryItem`.`lastScan` AS `libraryItem.lastScan`, `libraryItem`.`lastScanVersion` AS `libraryItem.lastScanVersion`, `libraryItem`.`libraryFiles` AS `libraryItem.libraryFiles`, `libraryItem`.`extraData` AS `libraryItem.extraData`, `libraryItem`.`createdAt` AS `libraryItem.createdAt`, `libraryItem`.`updatedAt` AS `libraryItem.updatedAt`, `libraryItem`.`libraryId` AS `libraryItem.libraryId`, `libraryItem`.`libraryFolderId` AS `libraryItem.libraryFolderId`, `libraryItem->feeds`.`id` AS `libraryItem.feeds.id`, `libraryItem->feeds`.`slug` AS `libraryItem.feeds.slug`, `libraryItem->feeds`.`entityType` AS `libraryItem.feeds.entityType`, `libraryItem->feeds`.`entityId` AS `libraryItem.feeds.entityId`, `libraryItem->feeds`.`entityUpdatedAt` AS `libraryItem.feeds.entityUpdatedAt`, `libraryItem->feeds`.`serverAddress` AS `libraryItem.feeds.serverAddress`, `libraryItem->feeds`.`feedURL` AS `libraryItem.feeds.feedURL`, `libraryItem->feeds`.`imageURL` AS `libraryItem.feeds.imageURL`, `libraryItem->feeds`.`siteURL` AS `libraryItem.feeds.siteURL`, `libraryItem->feeds`.`title` AS `libraryItem.feeds.title`, `libraryItem->feeds`.`description` AS `libraryItem.feeds.description`, `libraryItem->feeds`.`author` AS `libraryItem.feeds.author`, `libraryItem->feeds`.`podcastType` AS `libraryItem.feeds.podcastType`, `libraryItem->feeds`.`language` AS `libraryItem.feeds.language`, `libraryItem->feeds`.`ownerName` AS `libraryItem.feeds.ownerName`, `libraryItem->feeds`.`ownerEmail` AS `libraryItem.feeds.ownerEmail`, `libraryItem->feeds`.`explicit` AS `libraryItem.feeds.explicit`, `libraryItem->feeds`.`preventIndexing` AS `libraryItem.feeds.preventIndexing`, `libraryItem->feeds`.`coverPath` AS `libraryItem.feeds.coverPath`, `libraryItem->feeds`.`createdAt` AS `libraryItem.feeds.createdAt`, `libraryItem->feeds`.`updatedAt` AS `libraryItem.feeds.updatedAt`, `libraryItem->feeds`.`userId` AS `libraryItem.feeds.userId` FROM `books` AS `book` INNER JOIN `libraryItems` AS `libraryItem` ON `book`.`id` = `libraryItem`.`mediaId` AND (`libraryItem`.`libraryId` = 'aa32047f-fc37-43cf-a312-c12ace461c7b' AND `libraryItem`.`mediaType` = 'book') LEFT OUTER JOIN `feeds` AS `libraryItem->feeds` ON `libraryItem`.`id` = `libraryItem->feeds`.`entityId` AND `libraryItem->feeds`.`entityType` = 'libraryItem' ORDER BY titleIgnorePrefix COLLATE NOCASE ASC LIMIT 0, 100;" }, original: [Error: SQLITE_IOERR: disk I/O error] { errno: 10, code: 'SQLITE_IOERR', sql: "SELECT `book`.`id`, `book`.`title`, `book`.`titleIgnorePrefix`, `book`.`subtitle`, `book`.`publishedYear`, `book`.`publishedDate`, `book`.`publisher`, `book`.`description`, `book`.`isbn`, `book`.`asin`, `book`.`language`, `book`.`explicit`, `book`.`abridged`, `book`.`coverPath`, `book`.`duration`, `book`.`narrators`, `book`.`audioFiles`, `book`.`ebookFile`, `book`.`chapters`, `book`.`tags`, `book`.`genres`, `book`.`createdAt`, `book`.`updatedAt`, `libraryItem`.`id` AS `libraryItem.id`, `libraryItem`.`ino` AS `libraryItem.ino`, `libraryItem`.`path` AS `libraryItem.path`, `libraryItem`.`relPath` AS `libraryItem.relPath`, `libraryItem`.`mediaId` AS `libraryItem.mediaId`, `libraryItem`.`mediaType` AS `libraryItem.mediaType`, `libraryItem`.`isFile` AS `libraryItem.isFile`, `libraryItem`.`isMissing` AS `libraryItem.isMissing`, `libraryItem`.`isInvalid` AS `libraryItem.isInvalid`, `libraryItem`.`mtime` AS `libraryItem.mtime`, `libraryItem`.`ctime` AS `libraryItem.ctime`, `libraryItem`.`birthtime` AS `libraryItem.birthtime`, `libraryItem`.`size` AS `libraryItem.size`, `libraryItem`.`lastScan` AS `libraryItem.lastScan`, `libraryItem`.`lastScanVersion` AS `libraryItem.lastScanVersion`, `libraryItem`.`libraryFiles` AS `libraryItem.libraryFiles`, `libraryItem`.`extraData` AS `libraryItem.extraData`, `libraryItem`.`createdAt` AS `libraryItem.createdAt`, `libraryItem`.`updatedAt` AS `libraryItem.updatedAt`, `libraryItem`.`libraryId` AS `libraryItem.libraryId`, `libraryItem`.`libraryFolderId` AS `libraryItem.libraryFolderId`, `libraryItem->feeds`.`id` AS `libraryItem.feeds.id`, `libraryItem->feeds`.`slug` AS `libraryItem.feeds.slug`, `libraryItem->feeds`.`entityType` AS `libraryItem.feeds.entityType`, `libraryItem->feeds`.`entityId` AS `libraryItem.feeds.entityId`, `libraryItem->feeds`.`entityUpdatedAt` AS `libraryItem.feeds.entityUpdatedAt`, `libraryItem->feeds`.`serverAddress` AS `libraryItem.feeds.serverAddress`, `libraryItem->feeds`.`feedURL` AS `libraryItem.feeds.feedURL`, `libraryItem->feeds`.`imageURL` AS `libraryItem.feeds.imageURL`, `libraryItem->feeds`.`siteURL` AS `libraryItem.feeds.siteURL`, `libraryItem->feeds`.`title` AS `libraryItem.feeds.title`, `libraryItem->feeds`.`description` AS `libraryItem.feeds.description`, `libraryItem->feeds`.`author` AS `libraryItem.feeds.author`, `libraryItem->feeds`.`podcastType` AS `libraryItem.feeds.podcastType`, `libraryItem->feeds`.`language` AS `libraryItem.feeds.language`, `libraryItem->feeds`.`ownerName` AS `libraryItem.feeds.ownerName`, `libraryItem->feeds`.`ownerEmail` AS `libraryItem.feeds.ownerEmail`, `libraryItem->feeds`.`explicit` AS `libraryItem.feeds.explicit`, `libraryItem->feeds`.`preventIndexing` AS `libraryItem.feeds.preventIndexing`, `libraryItem->feeds`.`coverPath` AS `libraryItem.feeds.coverPath`, `libraryItem->feeds`.`createdAt` AS `libraryItem.feeds.createdAt`, `libraryItem->feeds`.`updatedAt` AS `libraryItem.feeds.updatedAt`, `libraryItem->feeds`.`userId` AS `libraryItem.feeds.userId` FROM `books` AS `book` INNER JOIN `libraryItems` AS `libraryItem` ON `book`.`id` = `libraryItem`.`mediaId` AND (`libraryItem`.`libraryId` = 'aa32047f-fc37-43cf-a312-c12ace461c7b' AND `libraryItem`.`mediaType` = 'book') LEFT OUTER JOIN `feeds` AS `libraryItem->feeds` ON `libraryItem`.`id` = `libraryItem->feeds`.`entityId` AND `libraryItem->feeds`.`entityType` = 'libraryItem' ORDER BY titleIgnorePrefix COLLATE NOCASE ASC LIMIT 0, 100;" }, sql: "SELECT `book`.`id`, `book`.`title`, `book`.`titleIgnorePrefix`, `book`.`subtitle`, `book`.`publishedYear`, `book`.`publishedDate`, `book`.`publisher`, `book`.`description`, `book`.`isbn`, `book`.`asin`, `book`.`language`, `book`.`explicit`, `book`.`abridged`, `book`.`coverPath`, `book`.`duration`, `book`.`narrators`, `book`.`audioFiles`, `book`.`ebookFile`, `book`.`chapters`, `book`.`tags`, `book`.`genres`, `book`.`createdAt`, `book`.`updatedAt`, `libraryItem`.`id` AS `libraryItem.id`, `libraryItem`.`ino` AS `libraryItem.ino`, `libraryItem`.`path` AS `libraryItem.path`, `libraryItem`.`relPath` AS `libraryItem.relPath`, `libraryItem`.`mediaId` AS `libraryItem.mediaId`, `libraryItem`.`mediaType` AS `libraryItem.mediaType`, `libraryItem`.`isFile` AS `libraryItem.isFile`, `libraryItem`.`isMissing` AS `libraryItem.isMissing`, `libraryItem`.`isInvalid` AS `libraryItem.isInvalid`, `libraryItem`.`mtime` AS `libraryItem.mtime`, `libraryItem`.`ctime` AS `libraryItem.ctime`, `libraryItem`.`birthtime` AS `libraryItem.birthtime`, `libraryItem`.`size` AS `libraryItem.size`, `libraryItem`.`lastScan` AS `libraryItem.lastScan`, `libraryItem`.`lastScanVersion` AS `libraryItem.lastScanVersion`, `libraryItem`.`libraryFiles` AS `libraryItem.libraryFiles`, `libraryItem`.`extraData` AS `libraryItem.extraData`, `libraryItem`.`createdAt` AS `libraryItem.createdAt`, `libraryItem`.`updatedAt` AS `libraryItem.updatedAt`, `libraryItem`.`libraryId` AS `libraryItem.libraryId`, `libraryItem`.`libraryFolderId` AS `libraryItem.libraryFolderId`, `libraryItem->feeds`.`id` AS `libraryItem.feeds.id`, `libraryItem->feeds`.`slug` AS `libraryItem.feeds.slug`, `libraryItem->feeds`.`entityType` AS `libraryItem.feeds.entityType`, `libraryItem->feeds`.`entityId` AS `libraryItem.feeds.entityId`, `libraryItem->feeds`.`entityUpdatedAt` AS `libraryItem.feeds.entityUpdatedAt`, `libraryItem->feeds`.`serverAddress` AS `libraryItem.feeds.serverAddress`, `libraryItem->feeds`.`feedURL` AS `libraryItem.feeds.feedURL`, `libraryItem->feeds`.`imageURL` AS `libraryItem.feeds.imageURL`, `libraryItem->feeds`.`siteURL` AS `libraryItem.feeds.siteURL`, `libraryItem->feeds`.`title` AS `libraryItem.feeds.title`, `libraryItem->feeds`.`description` AS `libraryItem.feeds.description`, `libraryItem->feeds`.`author` AS `libraryItem.feeds.author`, `libraryItem->feeds`.`podcastType` AS `libraryItem.feeds.podcastType`, `libraryItem->feeds`.`language` AS `libraryItem.feeds.language`, `libraryItem->feeds`.`ownerName` AS `libraryItem.feeds.ownerName`, `libraryItem->feeds`.`ownerEmail` AS `libraryItem.feeds.ownerEmail`, `libraryItem->feeds`.`explicit` AS `libraryItem.feeds.explicit`, `libraryItem->feeds`.`preventIndexing` AS `libraryItem.feeds.preventIndexing`, `libraryItem->feeds`.`coverPath` AS `libraryItem.feeds.coverPath`, `libraryItem->feeds`.`createdAt` AS `libraryItem.feeds.createdAt`, `libraryItem->feeds`.`updatedAt` AS `libraryItem.feeds.updatedAt`, `libraryItem->feeds`.`userId` AS `libraryItem.feeds.userId` FROM `books` AS `book` INNER JOIN `libraryItems` AS `libraryItem` ON `book`.`id` = `libraryItem`.`mediaId` AND (`libraryItem`.`libraryId` = 'aa32047f-fc37-43cf-a312-c12ace461c7b' AND `libraryItem`.`mediaType` = 'book') LEFT OUTER JOIN `feeds` AS `libraryItem->feeds` ON `libraryItem`.`id` = `libraryItem->feeds`.`entityId` AND `libraryItem->feeds`.`entityType` = 'libraryItem' ORDER BY titleIgnorePrefix COLLATE NOCASE ASC LIMIT 0, 100;", parameters: {} } }

Is this a container error or a program error?
 
Top