Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Audiobookshelf container keeps crashing (Podman) #3433

Closed
seannymurrs opened this issue Sep 17, 2024 · 1 comment
Closed

Audiobookshelf container keeps crashing (Podman) #3433

seannymurrs opened this issue Sep 17, 2024 · 1 comment
Labels
bug Something isn't working

Comments

@seannymurrs
Copy link

What happened?

I have Audiobookshelf running on my seedbox (Whatbox.ca) via Podman. About once a day, I find that the container has crashed. I have to manually go in and shutdown the container and start it back up again.

What did you expect to happen?

I expect the container not to crash on a regular basis.

Steps to reproduce the issue

  1. Attempt to access ABS via the webui.
  2. See that the container has crashed.

Audiobookshelf version

v2.13.4

How are you running audiobookshelf?

Docker

What OS is your Audiobookshelf server hosted from?

Windows

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

None

Logs

{
  "timestamp": "2024-09-17 05:35:51.539",
  "source": "Server.js:185",
  "message": "[Server] Unhandled rejection: SequelizeDatabaseError: SQLITE_CANTOPEN: unable to open database file, promise: Promise {\n  <rejected> Error\n      at Database.<anonymous> (/node_modules/sequelize/lib/dialects/sqlite/query.js:185:27)\n      at /node_modules/sequelize/lib/dialects/sqlite/query.js:183:50\n      at new Promise (<anonymous>)\n      at Query.run (/node_modules/sequelize/lib/dialects/sqlite/query.js:183:12)\n      at /node_modules/sequelize/lib/sequelize.js:315:28\n      at async SQLiteQueryInterface.select (/node_modules/sequelize/lib/dialects/abstract/query-interface.js:407:12)\n      at async bookSeries.findAll (/node_modules/sequelize/lib/model.js:1140:21)\n      at async HasMany.get (/node_modules/sequelize/lib/associations/has-many.js:170:21)\n      at async /node_modules/sequelize/lib/model.js:1202:19\n      at async Promise.all (index 0) {\n    name: 'SequelizeDatabaseError',\n    parent: [Error: SQLITE_CANTOPEN: unable to open database file] {\n      errno: 14,\n      code: 'SQLITE_CANTOPEN',\n      sql: \"SELECT `bookSeries`.`id`, `bookSeries`.`bookId`, `bookSeries`.`sequence`, `bookSeries`.`seriesId`, `book`.`id` AS `book.id`, `book`.`title` AS `book.title`, `book`.`titleIgnorePrefix` AS `book.titleIgnorePrefix`, `book`.`subtitle` AS `book.subtitle`, `book`.`publishedYear` AS `book.publishedYear`, `book`.`publishedDate` AS `book.publishedDate`, `book`.`publisher` AS `book.publisher`, `book`.`description` AS `book.description`, `book`.`isbn` AS `book.isbn`, `book`.`asin` AS `book.asin`, `book`.`language` AS `book.language`, `book`.`explicit` AS `book.explicit`, `book`.`abridged` AS `book.abridged`, `book`.`coverPath` AS `book.coverPath`, `book`.`duration` AS `book.duration`, `book`.`narrators` AS `book.narrators`, `book`.`audioFiles` AS `book.audioFiles`, `book`.`ebookFile` AS `book.ebookFile`, `book`.`chapters` AS `book.chapters`, `book`.`tags` AS `book.tags`, `book`.`genres` AS `book.genres`, `book`.`createdAt` AS `book.createdAt`, `book`.`updatedAt` AS `book.updatedAt`, `book->libraryItem`.`id` AS `book.libraryItem.id`, `book->libraryItem`.`ino` AS `book.libraryItem.ino`, `book->libraryItem`.`path` AS `book.libraryItem.path`, `book->libraryItem`.`relPath` AS `book.libraryItem.relPath`, `book->libraryItem`.`mediaId` AS `book.libraryItem.mediaId`, `book->libraryItem`.`mediaType` AS `book.libraryItem.mediaType`, `book->libraryItem`.`isFile` AS `book.libraryItem.isFile`, `book->libraryItem`.`isMissing` AS `book.libraryItem.isMissing`, `book->libraryItem`.`isInvalid` AS `book.libraryItem.isInvalid`, `book->libraryItem`.`mtime` AS `book.libraryItem.mtime`, `book->libraryItem`.`ctime` AS `book.libraryItem.ctime`, `book->libraryItem`.`birthtime` AS `book.libraryItem.birthtime`, `book->libraryItem`.`size` AS `book.libraryItem.size`, `book->libraryItem`.`lastScan` AS `book.libraryItem.lastScan`, `book->libraryItem`.`lastScanVersion` AS `book.libraryItem.lastScanVersion`, `book->libraryItem`.`libraryFiles` AS `book.libraryItem.libraryFiles`, `book->libraryItem`.`extraData` AS `book.libraryItem.extraData`, `book->libraryItem`.`createdAt` AS `book.libraryItem.createdAt`, `book->libraryItem`.`updatedAt` AS `book.libraryItem.updatedAt`, `book->libraryItem`.`libraryId` AS `book.libraryItem.libraryId`, `book->libraryItem`.`libraryFolderId` AS `book.libraryItem.libraryFolderId`, `book->authors`.`id` AS `book.authors.id`, `book->authors`.`name` AS `book.authors.name`, `book->authors`.`lastFirst` AS `book.authors.lastFirst`, `book->authors`.`asin` AS `book.authors.asin`, `book->authors`.`description` AS `book.authors.description`, `book->authors`.`imagePath` AS `book.authors.imagePath`, `book->authors`.`createdAt` AS `book.authors.createdAt`, `book->authors`.`updatedAt` AS `book.authors.updatedAt`, `book->authors`.`libraryId` AS `book.authors.libraryId`, `book->mediaProgresses`.`id` AS `book.mediaProgresses.id`, `book->mediaProgresses`.`mediaItemId` AS `book.mediaProgresses.mediaItemId`, `book->mediaProgresses`.`mediaItemType` AS `book.mediaProgresses.mediaItemType`, `book->mediaProgresses`.`duration` AS `book.mediaProgresses.duration`, `book->mediaProgresses`.`currentTime` AS `book.mediaProgresses.currentTime`, `book->mediaProgresses`.`isFinished` AS `book.mediaProgresses.isFinished`, `book->mediaProgresses`.`hideFromContinueListening` AS `book.mediaProgresses.hideFromContinueListening`, `book->mediaProgresses`.`ebookLocation` AS `book.mediaProgresses.ebookLocation`, `book->mediaProgresses`.`ebookProgress` AS `book.mediaProgresses.ebookProgress`, `book->mediaProgresses`.`finishedAt` AS `book.mediaProgresses.finishedAt`, `book->mediaProgresses`.`extraData` AS `book.mediaProgresses.extraData`, `book->mediaProgresses`.`createdAt` AS `book.mediaProgresses.createdAt`, `book->mediaProgresses`.`updatedAt` AS `book.mediaProgresses.updatedAt`, `book->mediaProgresses`.`userId` AS `book.mediaProgresses.userId` FROM `bookSeries` AS `bookSeries` INNER JOIN `books` AS `book` ON `bookSeries`.`bookId` = `book`.`id` LEFT OUTER JOIN `libraryItems` AS `book->libraryItem` ON `book`.`id` = `book->libraryItem`.`mediaId` AND (`book->libraryItem`.`mediaType` = 'book' AND `book->libraryItem`.`mediaType` = 'book') LEFT OUTER JOIN ( `bookAuthors` AS `book->authors->bookAuthor` INNER JOIN `authors` AS `book->authors` ON `book->authors`.`id` = `book->authors->bookAuthor`.`authorId`) ON `book`.`id` = `book->authors->bookAuthor`.`bookId` LEFT OUTER JOIN `mediaProgresses` AS `book->mediaProgresses` ON `book`.`id` = `book->mediaProgresses`.`mediaItemId` AND ((`book->mediaProgresses`.`userId` = '7615959a-840f-44fe-bb29-13abecb15ec6' AND `book->mediaProgresses`.`mediaItemType` = 'book') AND `book->mediaProgresses`.`mediaItemType` = 'book') WHERE (`bookSeries`.`seriesId` IN ('825cfe31-e4c6-40a5-a5d6-1d79fb28bd16', '219f0cca-fea4-452f-87bc-ab9cd28c0be7', 'acc1c77d-db8a-4e4f-a851-cfb9c0ab5c30', '4c18e832-1a5c-4b95-9233-3c695275c767', 'ad88f469-47e6-4f9b-aff0-98f68bb79834', '888c1d3e-ad8d-4740-978c-e268ee4cfc79', '0add9d2a-75f7-4a3a-994f-d5c60f407647', 'd62f6ed0-f797-4efa-b319-523dfd61cac0', 'e663dd76-1c7a-4fff-be71-f29336ef3a7b', 'eeb44c6a-4bd9-4a4e-9d39-18784b35cebb') AND (`book->mediaProgresses`.`isFinished` IS NULL OR `book->mediaProgresses`.`isFinished` = 0)) ORDER BY CAST(sequence AS FLOAT) ASC NULLS LAST;\"\n    },\n    original: [Error: SQLITE_CANTOPEN: unable to open database file] {\n      errno: 14,\n      code: 'SQLITE_CANTOPEN',\n      sql: \"SELECT `bookSeries`.`id`, `bookSeries`.`bookId`, `bookSeries`.`sequence`, `bookSeries`.`seriesId`, `book`.`id` AS `book.id`, `book`.`title` AS `book.title`, `book`.`titleIgnorePrefix` AS `book.titleIgnorePrefix`, `book`.`subtitle` AS `book.subtitle`, `book`.`publishedYear` AS `book.publishedYear`, `book`.`publishedDate` AS `book.publishedDate`, `book`.`publisher` AS `book.publisher`, `book`.`description` AS `book.description`, `book`.`isbn` AS `book.isbn`, `book`.`asin` AS `book.asin`, `book`.`language` AS `book.language`, `book`.`explicit` AS `book.explicit`, `book`.`abridged` AS `book.abridged`, `book`.`coverPath` AS `book.coverPath`, `book`.`duration` AS `book.duration`, `book`.`narrators` AS `book.narrators`, `book`.`audioFiles` AS `book.audioFiles`, `book`.`ebookFile` AS `book.ebookFile`, `book`.`chapters` AS `book.chapters`, `book`.`tags` AS `book.tags`, `book`.`genres` AS `book.genres`, `book`.`createdAt` AS `book.createdAt`, `book`.`updatedAt` AS `book.updatedAt`, `book->libraryItem`.`id` AS `book.libraryItem.id`, `book->libraryItem`.`ino` AS `book.libraryItem.ino`, `book->libraryItem`.`path` AS `book.libraryItem.path`, `book->libraryItem`.`relPath` AS `book.libraryItem.relPath`, `book->libraryItem`.`mediaId` AS `book.libraryItem.mediaId`, `book->libraryItem`.`mediaType` AS `book.libraryItem.mediaType`, `book->libraryItem`.`isFile` AS `book.libraryItem.isFile`, `book->libraryItem`.`isMissing` AS `book.libraryItem.isMissing`, `book->libraryItem`.`isInvalid` AS `book.libraryItem.isInvalid`, `book->libraryItem`.`mtime` AS `book.libraryItem.mtime`, `book->libraryItem`.`ctime` AS `book.libraryItem.ctime`, `book->libraryItem`.`birthtime` AS `book.libraryItem.birthtime`, `book->libraryItem`.`size` AS `book.libraryItem.size`, `book->libraryItem`.`lastScan` AS `book.libraryItem.lastScan`, `book->libraryItem`.`lastScanVersion` AS `book.libraryItem.lastScanVersion`, `book->libraryItem`.`libraryFiles` AS `book.libraryItem.libraryFiles`, `book->libraryItem`.`extraData` AS `book.libraryItem.extraData`, `book->libraryItem`.`createdAt` AS `book.libraryItem.createdAt`, `book->libraryItem`.`updatedAt` AS `book.libraryItem.updatedAt`, `book->libraryItem`.`libraryId` AS `book.libraryItem.libraryId`, `book->libraryItem`.`libraryFolderId` AS `book.libraryItem.libraryFolderId`, `book->authors`.`id` AS `book.authors.id`, `book->authors`.`name` AS `book.authors.name`, `book->authors`.`lastFirst` AS `book.authors.lastFirst`, `book->authors`.`asin` AS `book.authors.asin`, `book->authors`.`description` AS `book.authors.description`, `book->authors`.`imagePath` AS `book.authors.imagePath`, `book->authors`.`createdAt` AS `book.authors.createdAt`, `book->authors`.`updatedAt` AS `book.authors.updatedAt`, `book->authors`.`libraryId` AS `book.authors.libraryId`, `book->mediaProgresses`.`id` AS `book.mediaProgresses.id`, `book->mediaProgresses`.`mediaItemId` AS `book.mediaProgresses.mediaItemId`, `book->mediaProgresses`.`mediaItemType` AS `book.mediaProgresses.mediaItemType`, `book->mediaProgresses`.`duration` AS `book.mediaProgresses.duration`, `book->mediaProgresses`.`currentTime` AS `book.mediaProgresses.currentTime`, `book->mediaProgresses`.`isFinished` AS `book.mediaProgresses.isFinished`, `book->mediaProgresses`.`hideFromContinueListening` AS `book.mediaProgresses.hideFromContinueListening`, `book->mediaProgresses`.`ebookLocation` AS `book.mediaProgresses.ebookLocation`, `book->mediaProgresses`.`ebookProgress` AS `book.mediaProgresses.ebookProgress`, `book->mediaProgresses`.`finishedAt` AS `book.mediaProgresses.finishedAt`, `book->mediaProgresses`.`extraData` AS `book.mediaProgresses.extraData`, `book->mediaProgresses`.`createdAt` AS `book.mediaProgresses.createdAt`, `book->mediaProgresses`.`updatedAt` AS `book.mediaProgresses.updatedAt`, `book->mediaProgresses`.`userId` AS `book.mediaProgresses.userId` FROM `bookSeries` AS `bookSeries` INNER JOIN `books` AS `book` ON `bookSeries`.`bookId` = `book`.`id` LEFT OUTER JOIN `libraryItems` AS `book->libraryItem` ON `book`.`id` = `book->libraryItem`.`mediaId` AND (`book->libraryItem`.`mediaType` = 'book' AND `book->libraryItem`.`mediaType` = 'book') LEFT OUTER JOIN ( `bookAuthors` AS `book->authors->bookAuthor` INNER JOIN `authors` AS `book->authors` ON `book->authors`.`id` = `book->authors->bookAuthor`.`authorId`) ON `book`.`id` = `book->authors->bookAuthor`.`bookId` LEFT OUTER JOIN `mediaProgresses` AS `book->mediaProgresses` ON `book`.`id` = `book->mediaProgresses`.`mediaItemId` AND ((`book->mediaProgresses`.`userId` = '7615959a-840f-44fe-bb29-13abecb15ec6' AND `book->mediaProgresses`.`mediaItemType` = 'book') AND `book->mediaProgresses`.`mediaItemType` = 'book') WHERE (`bookSeries`.`seriesId` IN ('825cfe31-e4c6-40a5-a5d6-1d79fb28bd16', '219f0cca-fea4-452f-87bc-ab9cd28c0be7', 'acc1c77d-db8a-4e4f-a851-cfb9c0ab5c30', '4c18e832-1a5c-4b95-9233-3c695275c767', 'ad88f469-47e6-4f9b-aff0-98f68bb79834', '888c1d3e-ad8d-4740-978c-e268ee4cfc79', '0add9d2a-75f7-4a3a-994f-d5c60f407647', 'd62f6ed0-f797-4efa-b319-523dfd61cac0', 'e663dd76-1c7a-4fff-be71-f29336ef3a7b', 'eeb44c6a-4bd9-4a4e-9d39-18784b35cebb') AND (`book->mediaProgresses`.`isFinished` IS NULL OR `book->mediaProgresses`.`isFinished` = 0)) ORDER BY CAST(sequence AS FLOAT) ASC NULLS LAST;\"\n    },\n    sql: \"SELECT `bookSeries`.`id`, `bookSeries`.`bookId`, `bookSeries`.`sequence`, `bookSeries`.`seriesId`, `book`.`id` AS `book.id`, `book`.`title` AS `book.title`, `book`.`titleIgnorePrefix` AS `book.titleIgnorePrefix`, `book`.`subtitle` AS `book.subtitle`, `book`.`publishedYear` AS `book.publishedYear`, `book`.`publishedDate` AS `book.publishedDate`, `book`.`publisher` AS `book.publisher`, `book`.`description` AS `book.description`, `book`.`isbn` AS `book.isbn`, `book`.`asin` AS `book.asin`, `book`.`language` AS `book.language`, `book`.`explicit` AS `book.explicit`, `book`.`abridged` AS `book.abridged`, `book`.`coverPath` AS `book.coverPath`, `book`.`duration` AS `book.duration`, `book`.`narrators` AS `book.narrators`, `book`.`audioFiles` AS `book.audioFiles`, `book`.`ebookFile` AS `book.ebookFile`, `book`.`chapters` AS `book.chapters`, `book`.`tags` AS `book.tags`, `book`.`genres` AS `book.genres`, `book`.`createdAt` AS `book.createdAt`, `book`.`updatedAt` AS `book.updatedAt`, `book->libraryItem`.`id` AS `book.libraryItem.id`, `book->libraryItem`.`ino` AS `book.libraryItem.ino`, `book->libraryItem`.`path` AS `book.libraryItem.path`, `book->libraryItem`.`relPath` AS `book.libraryItem.relPath`, `book->libraryItem`.`mediaId` AS `book.libraryItem.mediaId`, `book->libraryItem`.`mediaType` AS `book.libraryItem.mediaType`, `book->libraryItem`.`isFile` AS `book.libraryItem.isFile`, `book->libraryItem`.`isMissing` AS `book.libraryItem.isMissing`, `book->libraryItem`.`isInvalid` AS `book.libraryItem.isInvalid`, `book->libraryItem`.`mtime` AS `book.libraryItem.mtime`, `book->libraryItem`.`ctime` AS `book.libraryItem.ctime`, `book->libraryItem`.`birthtime` AS `book.libraryItem.birthtime`, `book->libraryItem`.`size` AS `book.libraryItem.size`, `book->libraryItem`.`lastScan` AS `book.libraryItem.lastScan`, `book->libraryItem`.`lastScanVersion` AS `book.libraryItem.lastScanVersion`, `book->libraryItem`.`libraryFiles` AS `book.libraryItem.libraryFiles`, `book->libraryItem`.`extraData` AS `book.libraryItem.extraData`, `book->libraryItem`.`createdAt` AS `book.libraryItem.createdAt`, `book->libraryItem`.`updatedAt` AS `book.libraryItem.updatedAt`, `book->libraryItem`.`libraryId` AS `book.libraryItem.libraryId`, `book->libraryItem`.`libraryFolderId` AS `book.libraryItem.libraryFolderId`, `book->authors`.`id` AS `book.authors.id`, `book->authors`.`name` AS `book.authors.name`, `book->authors`.`lastFirst` AS `book.authors.lastFirst`, `book->authors`.`asin` AS `book.authors.asin`, `book->authors`.`description` AS `book.authors.description`, `book->authors`.`imagePath` AS `book.authors.imagePath`, `book->authors`.`createdAt` AS `book.authors.createdAt`, `book->authors`.`updatedAt` AS `book.authors.updatedAt`, `book->authors`.`libraryId` AS `book.authors.libraryId`, `book->mediaProgresses`.`id` AS `book.mediaProgresses.id`, `book->mediaProgresses`.`mediaItemId` AS `book.mediaProgresses.mediaItemId`, `book->mediaProgresses`.`mediaItemType` AS `book.mediaProgresses.mediaItemType`, `book->mediaProgresses`.`duration` AS `book.mediaProgresses.duration`, `book->mediaProgresses`.`currentTime` AS `book.mediaProgresses.currentTime`, `book->mediaProgresses`.`isFinished` AS `book.mediaProgresses.isFinished`, `book->mediaProgresses`.`hideFromContinueListening` AS `book.mediaProgresses.hideFromContinueListening`, `book->mediaProgresses`.`ebookLocation` AS `book.mediaProgresses.ebookLocation`, `book->mediaProgresses`.`ebookProgress` AS `book.mediaProgresses.ebookProgress`, `book->mediaProgresses`.`finishedAt` AS `book.mediaProgresses.finishedAt`, `book->mediaProgresses`.`extraData` AS `book.mediaProgresses.extraData`, `book->mediaProgresses`.`createdAt` AS `book.mediaProgresses.createdAt`, `book->mediaProgresses`.`updatedAt` AS `book.mediaProgresses.updatedAt`, `book->mediaProgresses`.`userId` AS `book.mediaProgresses.userId` FROM `bookSeries` AS `bookSeries` INNER JOIN `books` AS `book` ON `bookSeries`.`bookId` = `book`.`id` LEFT OUTER JOIN `libraryItems` AS `book->libraryItem` ON `book`.`id` = `book->libraryItem`.`mediaId` AND (`book->libraryItem`.`mediaType` = 'book' AND `book->libraryItem`.`mediaType` = 'book') LEFT OUTER JOIN ( `bookAuthors` AS `book->authors->bookAuthor` INNER JOIN `authors` AS `book->authors` ON `book->authors`.`id` = `book->authors->bookAuthor`.`authorId`) ON `book`.`id` = `book->authors->bookAuthor`.`bookId` LEFT OUTER JOIN `mediaProgresses` AS `book->mediaProgresses` ON `book`.`id` = `book->mediaProgresses`.`mediaItemId` AND ((`book->mediaProgresses`.`userId` = '7615959a-840f-44fe-bb29-13abecb15ec6' AND `book->mediaProgresses`.`mediaItemType` = 'book') AND `book->mediaProgresses`.`mediaItemType` = 'book') WHERE (`bookSeries`.`seriesId` IN ('825cfe31-e4c6-40a5-a5d6-1d79fb28bd16', '219f0cca-fea4-452f-87bc-ab9cd28c0be7', 'acc1c77d-db8a-4e4f-a851-cfb9c0ab5c30', '4c18e832-1a5c-4b95-9233-3c695275c767', 'ad88f469-47e6-4f9b-aff0-98f68bb79834', '888c1d3e-ad8d-4740-978c-e268ee4cfc79', '0add9d2a-75f7-4a3a-994f-d5c60f407647', 'd62f6ed0-f797-4efa-b319-523dfd61cac0', 'e663dd76-1c7a-4fff-be71-f29336ef3a7b', 'eeb44c6a-4bd9-4a4e-9d39-18784b35cebb') AND (`book->mediaProgresses`.`isFinished` IS NULL OR `book->mediaProgresses`.`isFinished` = 0)) ORDER BY CAST(sequence AS FLOAT) ASC NULLS LAST;\",\n    parameters: {}\n  }\n}",
  "levelName": "FATAL",
  "level": 5
}

Additional Notes

I am running ABS using Podman. Below is my docker-compose.yml file contents and the command I'm using to start the container.

version: "3.7" services: audiobookshelf: image: ghcr.io/advplyr/audiobookshelf:latest ports: - 14403:80 volumes: - /home/seannymurrs/audiobooks:/audiobooks - /home/seannymurrs/ebooks:/ebooks - /home/seannymurrs/audiobookshelf:/config - /home/seannymurrs/audiobookshelf:/metadata environment: - TZ=America/Detroit restart: unless-stopped

podman-compose -f ~/audiobookshelf/docker-compose.yml up -d

@seannymurrs seannymurrs added the bug Something isn't working label Sep 17, 2024
@advplyr
Copy link
Owner

advplyr commented Sep 17, 2024

You should reach out to the seedbox for support. It's unlikely this is an Abs issue

@advplyr advplyr closed this as not planned Won't fix, can't repro, duplicate, stale Sep 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants