mirror of
https://github.com/jellyfin/jellyfin.git
synced 2025-07-09 03:04:24 -04:00
Fix UserData cleanup task and queries (#14280)
This commit is contained in:
parent
ea34a38f09
commit
1c4c9cf733
@ -52,7 +52,7 @@ public class CleanupUserDataTask : IScheduledTask
|
|||||||
public async Task ExecuteAsync(IProgress<double> progress, CancellationToken cancellationToken)
|
public async Task ExecuteAsync(IProgress<double> progress, CancellationToken cancellationToken)
|
||||||
{
|
{
|
||||||
const int LimitDays = 90;
|
const int LimitDays = 90;
|
||||||
var userDataDate = DateTimeOffset.UtcNow.AddDays(LimitDays * -1);
|
var userDataDate = DateTime.UtcNow.AddDays(LimitDays * -1);
|
||||||
var dbContext = await _dbProvider.CreateDbContextAsync(cancellationToken).ConfigureAwait(false);
|
var dbContext = await _dbProvider.CreateDbContextAsync(cancellationToken).ConfigureAwait(false);
|
||||||
await using (dbContext.ConfigureAwait(false))
|
await using (dbContext.ConfigureAwait(false))
|
||||||
{
|
{
|
||||||
|
@ -108,7 +108,7 @@ public sealed class BaseItemRepository
|
|||||||
using var context = _dbProvider.CreateDbContext();
|
using var context = _dbProvider.CreateDbContext();
|
||||||
using var transaction = context.Database.BeginTransaction();
|
using var transaction = context.Database.BeginTransaction();
|
||||||
|
|
||||||
var date = (DateTimeOffset?)DateTimeOffset.Now;
|
var date = (DateTime?)DateTime.UtcNow;
|
||||||
// Detach all user watch data
|
// Detach all user watch data
|
||||||
context.UserData.Where(e => e.ItemId == id)
|
context.UserData.Where(e => e.ItemId == id)
|
||||||
.ExecuteUpdate(e => e
|
.ExecuteUpdate(e => e
|
||||||
@ -529,7 +529,7 @@ public sealed class BaseItemRepository
|
|||||||
{
|
{
|
||||||
// reattach old userData entries
|
// reattach old userData entries
|
||||||
var userKeys = item.UserDataKey.ToArray();
|
var userKeys = item.UserDataKey.ToArray();
|
||||||
var retentionDate = (DateTimeOffset?)null;
|
var retentionDate = (DateTime?)null;
|
||||||
context.UserData
|
context.UserData
|
||||||
.Where(e => e.ItemId == PlaceholderId)
|
.Where(e => e.ItemId == PlaceholderId)
|
||||||
.Where(e => userKeys.Contains(e.CustomDataKey))
|
.Where(e => userKeys.Contains(e.CustomDataKey))
|
||||||
|
@ -71,7 +71,7 @@ public class UserData
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or Sets the date the referenced <see cref="Item"/> has been deleted.
|
/// Gets or Sets the date the referenced <see cref="Item"/> has been deleted.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public DateTimeOffset? RetentionDate { get; set; }
|
public DateTime? RetentionDate { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or sets the key.
|
/// Gets or sets the key.
|
||||||
|
@ -15,7 +15,7 @@ namespace Jellyfin.Server.Implementations.Migrations
|
|||||||
protected override void BuildModel(ModelBuilder modelBuilder)
|
protected override void BuildModel(ModelBuilder modelBuilder)
|
||||||
{
|
{
|
||||||
#pragma warning disable 612, 618
|
#pragma warning disable 612, 618
|
||||||
modelBuilder.HasAnnotation("ProductVersion", "9.0.5");
|
modelBuilder.HasAnnotation("ProductVersion", "9.0.6");
|
||||||
|
|
||||||
modelBuilder.Entity("Jellyfin.Database.Implementations.Entities.AccessSchedule", b =>
|
modelBuilder.Entity("Jellyfin.Database.Implementations.Entities.AccessSchedule", b =>
|
||||||
{
|
{
|
||||||
@ -1388,7 +1388,7 @@ namespace Jellyfin.Server.Implementations.Migrations
|
|||||||
b.Property<double?>("Rating")
|
b.Property<double?>("Rating")
|
||||||
.HasColumnType("REAL");
|
.HasColumnType("REAL");
|
||||||
|
|
||||||
b.Property<DateTimeOffset?>("RetentionDate")
|
b.Property<DateTime?>("RetentionDate")
|
||||||
.HasColumnType("TEXT");
|
.HasColumnType("TEXT");
|
||||||
|
|
||||||
b.Property<int?>("SubtitleStreamIndex")
|
b.Property<int?>("SubtitleStreamIndex")
|
||||||
|
Loading…
x
Reference in New Issue
Block a user