2024-06-12, 10:49 AM
I seem to have found the reason for the slow startup. I noticed that every time Jellyfin starts, it reads the entire config/data/library.db file into library.db-journal (in version 10.9, it’s library.db-wal). Upon careful observation, the library.db-journal file keeps growing until it becomes slightly larger than the library.db file. Only then does it stop growing, and its size is quickly cleared to 0. Then Jellyfin’s startup proceeds to the next stage.
As I’m using HDD drive, writing to the library.db-journal file is particularly slow each time, and the library.db file is now quite large, at 3.5GB. At its fastest, it takes about 15 minutes to process, and at its slowest, it takes 20-30 minutes. Every startup is too troublesome. I thought that updating to version 10.9 and changing library.db-journal to library.db-wal would solve this problem, but it didn’t.
Although it now adopts the library.db-wal mode like Emby, its startup is too slow. For the same size database file, Emby can complete the startup in about a minute. I really don’t understand why Jellyfin is designed this way, reading the entire library.db into library.db-wal every time it starts (I can’t be sure it’s reading this file, because I found the file sizes to be similar, so I guess it’s reading the library.db file). I believe this is definitely a mistake.
Moreover, the memory usage of 10.9 is more terrifying than 10.8. Without limiting the memory of the Docker container, the same database takes up about 4GB in 10.8, while 10.9 uses up to 5-7GB. This is not user-friendly for users with small memory! I hope the development team can pay attention to and solve this problem! How can it start quickly like Emby, even if the library.db file is large?
As I’m using HDD drive, writing to the library.db-journal file is particularly slow each time, and the library.db file is now quite large, at 3.5GB. At its fastest, it takes about 15 minutes to process, and at its slowest, it takes 20-30 minutes. Every startup is too troublesome. I thought that updating to version 10.9 and changing library.db-journal to library.db-wal would solve this problem, but it didn’t.
Although it now adopts the library.db-wal mode like Emby, its startup is too slow. For the same size database file, Emby can complete the startup in about a minute. I really don’t understand why Jellyfin is designed this way, reading the entire library.db into library.db-wal every time it starts (I can’t be sure it’s reading this file, because I found the file sizes to be similar, so I guess it’s reading the library.db file). I believe this is definitely a mistake.
Moreover, the memory usage of 10.9 is more terrifying than 10.8. Without limiting the memory of the Docker container, the same database takes up about 4GB in 10.8, while 10.9 uses up to 5-7GB. This is not user-friendly for users with small memory! I hope the development team can pay attention to and solve this problem! How can it start quickly like Emby, even if the library.db file is large?