Skip to content

Releases: BORNIOS/Jellyfin-Database-Providers-Postgres

PostgreSQL Database Provider 3.0.3

Choose a tag to compare

@github-actions github-actions released this 30 Sep 22:36

Español

3.0.3 — Integraciones privadas, mantenimiento y estabilidad

  • Nuevo host seguro para esquemas privados de plugins: registro, migraciones aisladas y acceso sin exponer credenciales ni el esquema public de Jellyfin.
  • Nueva pestaña Integraciones para revisar esquemas registrados, consultar una muestra limitada de datos, ver métricas por tabla y administrar ANALYZE, VACUUM (ANALYZE) y REINDEX por esquema.
  • Las tareas programadas mantienen public y solo los esquemas privados autorizados por el administrador.
  • Health incorpora métricas de presión de buffers, bloques leídos, uso temporal y WAL para diagnosticar consultas lentas.
  • Estado actual detecta el motor activo sin esperar la validación SQLite; esta continúa en segundo plano y se vuelve a comprobar antes de revertir.
  • Se refuerza el aislamiento de identificadores en operaciones de exploración y mantenimiento de esquemas privados.
  • Documentación actualizada en español e inglés, incluida la integración para desarrolladores, exportación SQLite segura y orientación para Docker.

Requiere Jellyfin 12.1.x, PostgreSQL 16 o posterior y .NET 10.


English

3.0.3 — Private integrations, maintenance, and stability

  • New secure host for private plugin schemas: registration, isolated migrations, and storage without exposing credentials or Jellyfin's public schema.
  • New Integrations tab to review registered schemas, inspect a bounded data sample, view per-table metrics, and manage ANALYZE, VACUUM (ANALYZE), and REINDEX per schema.
  • Scheduled tasks maintain public and only private schemas explicitly enabled by an administrator.
  • Health adds buffer-pressure, blocks-read, temporary-I/O, and WAL metrics for slow-query diagnosis.
  • Current status detects the active engine without waiting for SQLite validation; validation continues in the background and is checked again before rollback.
  • Strengthens identifier isolation in private-schema exploration and maintenance operations.
  • Updated Spanish and English documentation, including developer integration, safe SQLite export, and Docker guidance.

Requires Jellyfin 12.1.x, PostgreSQL 16 or newer, and .NET 10.

PostgreSQL Database Provider 3.0.2

Choose a tag to compare

@github-actions github-actions released this 26 Sep 11:30

Español

3.0.2 — Estabilidad, integridad y exportación segura

  • Corrige la normalización de DateTime, DateTimeOffset y arreglos antes de escribir en PostgreSQL, evitando errores de Npgsql por Kind incompatible.
  • Las escrituras concurrentes de UserData y las actualizaciones completas de elementos usan upserts atómicos para reducir conflictos durante actualizaciones bajo demanda.
  • La activación de PostgreSQL valida la conexión antes de modificar database.xml.
  • Se elimina la restauración automática de backups y la restauración manual no reemplaza objetos existentes por defecto.
  • Las consultas concurrentes idénticas de inicio se consolidan mientras se llena la caché.
  • La exportación PostgreSQL → SQLite crea y valida un library.db SQLite real; evita el archivo inválido que impedía iniciar Jellyfin.
  • La exportación ya no copia ni marca a ciegas el historial de migraciones.

Verificado con Build Release, pruebas unitarias e integración real contra PostgreSQL. Requiere Jellyfin 12.1.x, PostgreSQL 16+ y .NET 10.


English

3.0.2 — Stability, integrity and safe export

  • Fixes normalization of DateTime, DateTimeOffset, and arrays before PostgreSQL writes, avoiding Npgsql errors caused by incompatible Kind values.
  • Concurrent UserData writes and full item updates use atomic upserts to reduce conflicts during on-demand updates.
  • PostgreSQL activation validates the connection before changing database.xml.
  • Automatic backup restore was removed, and manual restore no longer replaces existing objects by default.
  • Identical concurrent home-screen queries are coalesced while the cache is populated.
  • PostgreSQL → SQLite export creates and validates a real SQLite library.db, preventing the invalid file that stopped Jellyfin from starting.
  • Export no longer blindly marks or copies migration history.

Verified with a Release build, unit tests, and real PostgreSQL integration tests. Requires Jellyfin 12.1.x, PostgreSQL 16+, and .NET 10.

PostgreSQL Database Provider 3.0.1

Choose a tag to compare

@github-actions github-actions released this 19 Sep 01:32

3.0.1 - Correccion de la integracion con JellyTrend

  • Fix: el esquema jellytrend no creaba la tabla donde el motor de JellyTrend guarda el perfil de gustos aprendido (user_affinity), asi que ese perfil no quedaba almacenado. El esquema se crea ahora completo (version 4).
  • El esquema se comprueba al arrancar: en una instalacion 3.0.0 la tabla que faltaba se crea sola. No hay que recrear el esquema ni reinstalar nada.
  • Docs: la seccion de integracion con JellyTrend documenta las dos piezas del contrato: almacen de datos en el esquema jellytrend (fuera de public, para no colarse en las exportaciones a SQLite) y acelerador de consultas con SQL nativo en las recomendaciones (4-10x en bibliotecas grandes).

Requiere Jellyfin 12.1.x. Para Jellyfin 10.11.x usa la version 2.0.1.

PostgreSQL Database Provider 3.0.0

Choose a tag to compare

@github-actions github-actions released this 16 Sep 18:31

3.0.0 - Jellyfin 12.1

Adaptacion completa al contrato de proveedores de Jellyfin 12.1. Requiere .NET 10.

Novedades

  • Consola SQL de solo lectura en el panel: 10 plantillas de diagnostico, historial en la sesion y rechazo de sentencias que modifiquen datos.
  • Opciones avanzadas funcionales: tamano de pool, sentencias preparadas y tiempo de espera se validan, se guardan, se reflejan en el estado actual y se aplican al proveedor.
  • Adaptacion al contrato y al runtime de 12.1: resolucion del ensamblado SQLite del servidor, compatibilidad por base de datos y motor de migracion reescrito.

Correcciones

  • PurgeDatabase implementado: en 2.x lanzaba NotImplementedException y rompia la restauracion del respaldo completo del sistema.
  • Exportacion a SQLite mas robusta: claves primarias verbatim, diagnostico de constraint, limpieza de filas huerfanas y library.db minimo valido para el arranque.

Verificacion

  • Suite xUnit con 74 pruebas, incluidas integraciones reales con PostgreSQL 17.
  • Auditor de esquema contra el modelo EF del servidor.

Documentacion

  • Manual de migracion de Jellyfin 10.11.x a 12.x, novedades frente a 2.0.1 y nota tecnica de la adaptacion, en espanol e ingles.

Compatibilidad

  • Jellyfin 12.1.x - PostgreSQL 16+ - .NET 10.
  • Para Jellyfin 10.11.x usa la version 2.0.1.

PostgreSQL Database Provider 2.0.1

Choose a tag to compare

@github-actions github-actions released this 16 Sep 18:19

2.0.1 — Fix crítico de exportación PostgreSQL → SQLite

Esta versión corrige el fallo que podía abortar la exportación de PostgreSQL a SQLite y, con ello, dejar a los usuarios de Jellyfin 10.11.x sin ruta hacia Jellyfin 12.

Correcciones

  • Claves primarias con mayúsculas/minúsculas: las columnas que forman la clave primaria se copian verbatim, sin normalizar. Antes, los pares de filas que solo difieren en el uso de mayúsculas colapsaban en la misma clave y el export terminaba con SQLite Error 19: UNIQUE constraint failed: UserData.ItemId, UserData.UserId, UserData.CustomDataKey.
  • Diagnóstico legible: ante una violación de constraint, el log del plugin indica tabla, número de fila y valores de la clave, en lugar del error críptico de SQLite.

Integración continua

  • La entrada del catálogo se publica también en main, así que Jellyfin 10.11.x ve esta versión aunque el release se genere desde su propia rama.

Compatibilidad

Elemento Valor
Jellyfin 10.11.x
Framework net9.0 (.NET 9)
targetAbi 10.11.0.0
Paquete Jellyfin.Database.Providers.Postgres-2.0.1.0.zip
MD5 0d2f4217825e2e1b9edbe1d992855a2f

Instalación

Desde el catálogo (Panel → Complementos → Catálogo → PostgreSQL Database Provider) o descomprimiendo el ZIP en la carpeta de plugins y reiniciando Jellyfin.

¿Vas a Jellyfin 12.1? Instala esta versión, exporta PostgreSQL a SQLite y después sigue el manual migracion-10.11-a-12.md con el plugin 3.0.0.

PostgreSQL Database Provider 2.0.0.0

Choose a tag to compare

@github-actions github-actions released this 29 Aug 05:45

Novedades en v2.0.0.0:

  • Fix: timezone del servidor PostgreSQL restaurada. El switch global Npgsql fue reemplazado por DateTimeKindNormalizingInterceptor que solo normaliza escrituras con Kind=Unspecified.
  • Fix: crash por duplicate PK en BaseItemProviders (23505) prevenido con UpsertConflictInterceptor.
  • Nuevo: Health Check automatico al arrancar (10s) con diagnostico de conexion, indices invalidos, bloat, secuencias y queries lentas.
  • Nuevo: integracion opcional con JellyTrend — recomendaciones 4-10x mas rapidas con SQL nativo y operador ; de arrays + indices GIN.
  • Nuevo: DbErrorLoggingInterceptor registra todos los errores de BD en el log del plugin.
  • Nuevo: workflow de release basado en JellyTrend, ZIP con los 3 DLLs necesarios.
  • Docs: README ES/EN reescritos para v2.0 con capturas de las 4 pestanas del plugin.

v1.0.0.0

Choose a tag to compare

@BORNIOS BORNIOS released this 28 May 23:31
fix(postgres): mitigate ItemValues index contention