27 Commits

Author SHA1 Message Date
mat 1c28df61df fix(ha): PostgreSQL migration backup no-op + URI connection string support
- MigrationBackupFast/RestoreBackupFast/DeleteBackup return no-ops for
  PostgreSQL; pre-migration backups are handled by jellyfin-pg-backup
  CronJob, not the automated backup path that throws NotSupportedException

- ServiceCollectionExtensions: detect postgresql:// / postgres:// URI
  format in POSTGRES_CONNECTION_STRING and convert to ADO.NET key=value
  format before passing to NpgsqlDataSourceBuilder (which requires it)

Closes startup crash: 'Automated migration backups are not supported for
PostgreSQL' on first boot with a fresh database.
2026-03-31 22:56:30 -04:00
Copilot a0c38131c8 Wire NpgsqlDataSource pool into DI for PostgreSQL provider (#10)
* Initial plan

* Add NpgsqlDataSource pool wiring to DI (Issue 1.4)"

- PostgreSqlDatabaseProvider: accept NpgsqlDataSource via constructor injection, use it in Initialise()
- PostgreSqlDesignTimeJellyfinDbFactory: build NpgsqlDataSource from connection string for design-time use
- ServiceCollectionExtensions: register NpgsqlDataSource as singleton with pool params (MinPoolSize=2, MaxPoolSize=20, CommandTimeout=30) from CustomProviderOptions.Options

Co-authored-by: ZoltyMat <177592743+ZoltyMat@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: ZoltyMat <177592743+ZoltyMat@users.noreply.github.com>
2026-03-31 22:55:45 -04:00
Copilot 2d4d6d8c38 Implement PostgreSqlDatabaseProvider methods and DI registration (#6)
* Initial plan

* feat: implement PostgreSqlDatabaseProvider all methods + DI registration

Co-authored-by: ZoltyMat <177592743+ZoltyMat@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: ZoltyMat <177592743+ZoltyMat@users.noreply.github.com>
2026-03-31 22:55:45 -04:00
JPVenson 310a54f090 Allow loading of Database options for DB provider (#14466) 2025-07-14 18:39:43 -06:00
JPVenson 916e897ed2 Allow custom plugin provided database providers to be loaded (#14171) 2025-06-03 16:53:37 -06:00
JPVenson a1d72deba2 Add multiple options for internal locking (#14047) 2025-06-03 15:15:22 -06:00
Tim Eisele 3fc3b04daf Rework parental ratings (#12615) 2025-03-30 21:51:54 -06:00
JPVenson 160020c551 WIP fixed namespaces 2025-03-25 15:30:22 +00:00
JPVenson 8e9b57aea9 Fixed naming scheme 2025-03-24 10:14:16 +00:00
JPVenson ea8f1ffb7c renamed SqLite to Sqlite 2025-03-24 10:07:52 +00:00
JPVenson ddc20b74bf Removed pgsql from refactor 2025-02-19 18:21:23 +00:00
JPVenson df8f352d65 Made key lookup case insensitive 2025-02-03 20:16:58 +00:00
JPVenson c9237ae731 Applied review suggestions 2025-02-03 20:15:36 +00:00
JPVenson ce00bc076e Fixed postgres sql provider 2025-01-27 18:21:47 +00:00
JPVenson 844646e2fe Fixed migration runner and added docs for adding migrations 2025-01-27 17:20:14 +00:00
JPVenson 9d1c4ea169 Fixed DbContext usage on Provider 2025-01-27 16:35:46 +00:00
JPVenson aa811eb1e3 Prepared Seperation of Database components for future multi provider support 2025-01-26 20:45:28 +00:00
JPVenson d4aca84581 Disabled sqlite pooling 2024-11-14 21:47:42 +00:00
Bond_009 97a02f5803 Remove BOM from UTF-8 files
I think some people need to change their IDE configuration ;)
2024-08-30 15:29:48 +02:00
gnattu 22d8528d90 Backport pull request #11901 from jellyfin/release-10.9.z
Implement Device Cache to replace EFCoreSecondLevelCacheInterceptor

Original-merge: b7bc0e1c96553675a490c0bd92a58ad9c5f0d0e1

Merged-by: joshuaboniface <joshua@boniface.me>

Backported-by: Bond_009 <bond.009@outlook.com>
2024-08-05 10:58:22 -04:00
gnattu 9563e4f85e Backport pull request #11823 from jellyfin/release-10.9.z
Add Env Var to disable second level cache

Original-merge: 95c7d997c13cfcd4038174ba00525d5628475fb7

Merged-by: joshuaboniface <joshua@boniface.me>

Backported-by: Joshua M. Boniface <joshua@boniface.me>
2024-06-01 18:41:02 -04:00
renovate[bot] 9a4db80085 chore(deps): update dependency efcoresecondlevelcacheinterceptor to v4.4.1 (#11306)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Cody Robibero <cody@robibe.ro>
2024-04-14 08:18:09 -06:00
Patrick Barron f3e5139cfc Use default ASP.NET Core logger factory for DbContext factory 2023-01-16 18:15:05 -05:00
Patrick Barron 8479f0f90c Rename JellyfinDb to JellyfinDbContext 2023-01-16 12:14:44 -05:00
Bond_009 c7d50d640e Replace == null with is null 2022-12-05 15:00:20 +01:00
cvium 395efc94a7 remove unnecessary skipcommand since SQLite does not have NEWID 2022-10-21 15:10:47 +02:00
cvium b836fe9685 remove JellyfinDbProvider and add second level caching 2022-10-21 11:55:32 +02:00