• Login
  • Register
  • Login Register
    Login
    Username/Email:
    Password:
    Or login with a social network below
  • Forum
  • Website
  • GitHub
  • Status
  • Translation
  • Features
  • Team
  • Rules
  • Help
  • Feeds
User Links
  • Login
  • Register
  • Login Register
    Login
    Username/Email:
    Password:
    Or login with a social network below

    Useful Links Forum Website GitHub Status Translation Features Team Rules Help Feeds
    Jellyfin Forum Support General Questions Cache location config

     
    • 0 Vote(s) - 0 Average

    Cache location config

    Duvel
    Offline

    Member

    Posts: 69
    Threads: 9
    Joined: 2023 Jul
    Reputation: 3
    Country:Belgium
    #1
    2024-10-28, 08:12 AM (This post was last modified: 2024-10-28, 08:15 AM by Duvel. Edited 1 time in total.)
    Hi

    I am gonna mount a new server this week, with more SDD storage capacity and I plan to reconfigure Jellyfin transcode directory to give it a standalone SDD disk to avoid some issues I had with it in the past.

    So the config is DELL pro refurbished hardware running SDD and HDD RAIDs will Dell Idrac, and vmware ESXi installed on it, running Ubuntu VM and  Jellyfin in docker (and many other things)

    I read that it is a good idea to not have the transcode dir and sqlite DB on the same disk, is it correct ?

    If so I would like to know what is the best config approach:

    1. Should I move all the /cache directory on the dedicated disk, or only the /cache/transcode directory?

    2. How to define this??? With a a new volume  in the docker-compose ? Or using the /config/system.xml where I found this line
    Code:
    <CachePath>/var/cache/jellyfin</CachePath>

    Any other disk split advices config welcome Smiling-face
    TheDreadPirate
    Offline

    Community Moderator

    Posts: 15,374
    Threads: 10
    Joined: 2023 Jun
    Reputation: 460
    Country:United States
    #2
    2024-10-28, 07:11 PM
    If you enable the delete segments feature, you shouldn't need to worry about transcodes filling up your disk. As long as there is a reasonable amount of free space for your user count. The database being on the same disk as the transcode directory is fine as long as it is a SSD.
    Jellyfin 10.10.7 (Docker)
    Ubuntu 24.04.2 LTS w/HWE
    Intel i3 12100
    Intel Arc A380
    OS drive - SK Hynix P41 1TB
    Storage
        4x WD Red Pro 6TB CMR in RAIDZ1
    [Image: GitHub%20Sponsors-grey?logo=github]
    Duvel
    Offline

    Member

    Posts: 69
    Threads: 9
    Joined: 2023 Jul
    Reputation: 3
    Country:Belgium
    #3
    2024-10-31, 11:43 AM
    Ok but since version 10 I still have recuurent DB locks.


    Example this morning
    Code:
    [12:28:48] [ERR] Error processing request. URL GET /UserItems/Resume.
    Microsoft.EntityFrameworkCore.DbUpdateException: An error occurred while saving the entity changes. See the inner exception for details.
    ---> Microsoft.Data.Sqlite.SqliteException (0x80004005): SQLite Error 5: 'database is locked'.
      at Microsoft.Data.Sqlite.SqliteDataRecord.Dispose()
      at Microsoft.Data.Sqlite.SqliteDataReader.NextResult()
      at System.Data.Common.DbDataReader.NextResultAsync(CancellationToken cancellationToken)
    --- End of stack trace from previous location ---
      at Microsoft.EntityFrameworkCore.Update.AffectedCountModificationCommandBatch.ConsumeAsync(RelationalDataReader reader, CancellationToken cancellationToken)
      --- End of inner exception stack trace ---
      at Microsoft.EntityFrameworkCore.Update.AffectedCountModificationCommandBatch.ConsumeAsync(RelationalDataReader reader, CancellationToken cancellationToken)
      at Microsoft.EntityFrameworkCore.Update.ReaderModificationCommandBatch.ExecuteAsync(IRelationalConnection connection, CancellationToken cancellationToken)
      at Microsoft.EntityFrameworkCore.Update.ReaderModificationCommandBatch.ExecuteAsync(IRelationalConnection connection, CancellationToken cancellationToken)
      at Microsoft.EntityFrameworkCore.Update.Internal.BatchExecutor.ExecuteAsync(IEnumerable`1 commandBatches, IRelationalConnection connection, CancellationToken cancellationToken)
      at Microsoft.EntityFrameworkCore.Update.Internal.BatchExecutor.ExecuteAsync(IEnumerable`1 commandBatches, IRelationalConnection connection, CancellationToken cancellationToken)
      at Microsoft.EntityFrameworkCore.Update.Internal.BatchExecutor.ExecuteAsync(IEnumerable`1 commandBatches, IRelationalConnection connection, CancellationToken cancellationToken)
      at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.StateManager.SaveChangesAsync(IList`1 entriesToSave, CancellationToken cancellationToken)
      at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.StateManager.SaveChangesAsync(StateManager stateManager, Boolean acceptAllChangesOnSuccess, CancellationToken cancellationToken)
      at Microsoft.EntityFrameworkCore.DbContext.SaveChangesAsync(Boolean acceptAllChangesOnSuccess, CancellationToken cancellationToken)
      at Microsoft.EntityFrameworkCore.DbContext.SaveChangesAsync(Boolean acceptAllChangesOnSuccess, CancellationToken cancellationToken)
      at Jellyfin.Server.Implementations.Devices.DeviceManager.UpdateDevice(Device device)
      at Jellyfin.Server.Implementations.Devices.DeviceManager.UpdateDevice(Device device)
      at Jellyfin.Server.Implementations.Security.AuthorizationContext.GetAuthorizationInfoFromDictionary(Dictionary`2 auth, IHeaderDictionary headers, IQueryCollection queryString)
      at Jellyfin.Server.Implementations.Security.AuthorizationContext.GetAuthorizationInfoFromDictionary(Dictionary`2 auth, IHeaderDictionary headers, IQueryCollection queryString)
      at Jellyfin.Server.Implementations.Security.AuthorizationContext.GetAuthorizationInfo(HttpRequest requestContext)
      at Emby.Server.Implementations.HttpServer.Security.AuthService.Authenticate(HttpRequest request)
      at Jellyfin.Api.Auth.CustomAuthenticationHandler.HandleAuthenticateAsync()
      at Microsoft.AspNetCore.Authentication.AuthenticationHandler`1.AuthenticateAsync()
      at Microsoft.AspNetCore.Authentication.AuthenticationService.AuthenticateAsync(HttpContext context, String scheme)
      at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
      at Jellyfin.Api.Middleware.RobotsRedirectionMiddleware.Invoke(HttpContext httpContext)
      at Jellyfin.Api.Middleware.LegacyEmbyRouteRewriteMiddleware.Invoke(HttpContext httpContext)
      at Microsoft.AspNetCore.ResponseCompression.ResponseCompressionMiddleware.InvokeCore(HttpContext context)
      at Jellyfin.Api.Middleware.ResponseTimeMiddleware.Invoke(HttpContext context, IServerConfigurationManager serverConfigurationManager)
      at Jellyfin.Api.Middleware.ExceptionMiddleware.Invoke(HttpContext context)

    And when this happens I have to restart the server
    At first glance I thought the V101.10 had fixed them since my server was much more stable for a few days, but as you can see its still happens.

    I have stopped asking for help regarding this as I am not the only one having the problem (for users having an infra of several servers...) and there's no solution (I do use nfs drives)
    So anything that could minimize the locks like having the DB on a standonle SDD is a gain for me.

    I just hope the MariaDB or Postgress version will land one day....
    TheDreadPirate
    Offline

    Community Moderator

    Posts: 15,374
    Threads: 10
    Joined: 2023 Jun
    Reputation: 460
    Country:United States
    #4
    2024-10-31, 12:48 PM
    Maybe 10.11 for external DBs like PostgreSQL. A big PR is being worked on enable this.

    https://github.com/jellyfin/jellyfin/pull/12798

    But, like with most FOSS projects, there is no guarantee on a timeline.

    Also, are your databases on a NFS share?
    Jellyfin 10.10.7 (Docker)
    Ubuntu 24.04.2 LTS w/HWE
    Intel i3 12100
    Intel Arc A380
    OS drive - SK Hynix P41 1TB
    Storage
        4x WD Red Pro 6TB CMR in RAIDZ1
    [Image: GitHub%20Sponsors-grey?logo=github]
    Duvel
    Offline

    Member

    Posts: 69
    Threads: 9
    Joined: 2023 Jul
    Reputation: 3
    Country:Belgium
    #5
    2024-11-04, 09:08 AM
    The DB and the whole Jellyfin config is not on a NFS share. Its on the ubuntu system disk which is a SDD of 100 Go
    COnstant locks continue. I have to restart the server mostly everyday.

    Note that I do have Jellyseer and Jelyseer on the same server interracting with Jellyfin and Sonarr/radarr on another server but they do it from the API.
    gnattu
    Offline

    Team Member

    Posts: 341
    Threads: 0
    Joined: 2024 Feb
    Reputation: 17
    #6
    2024-11-04, 11:53 AM
    Do you have the plugin playback reporting installed? that one has a very bad db access pattern and will cause locking much more frequently
    1
    « Next Oldest | Next Newest »

    Users browsing this thread: 1 Guest(s)


    • View a Printable Version
    • Subscribe to this thread
    Forum Jump:

    Home · Team · Help · Contact
    © Designed by D&D - Powered by MyBB
    L


    Jellyfin

    The Free Software Media System

    Linear Mode
    Threaded Mode