Address comments
This commit is contained in:
parent
2ffab720fb
commit
d8d6c6f254
|
@ -22,13 +22,10 @@ using MediaBrowser.Controller.Persistence;
|
||||||
using MediaBrowser.Controller.Playlists;
|
using MediaBrowser.Controller.Playlists;
|
||||||
using MediaBrowser.Model.Dto;
|
using MediaBrowser.Model.Dto;
|
||||||
using MediaBrowser.Model.Entities;
|
using MediaBrowser.Model.Entities;
|
||||||
using MediaBrowser.Model.IO;
|
|
||||||
using MediaBrowser.Model.LiveTv;
|
using MediaBrowser.Model.LiveTv;
|
||||||
using MediaBrowser.Model.Querying;
|
using MediaBrowser.Model.Querying;
|
||||||
using MediaBrowser.Model.Reflection;
|
using MediaBrowser.Model.Reflection;
|
||||||
using MediaBrowser.Model.Serialization;
|
using MediaBrowser.Model.Serialization;
|
||||||
using MediaBrowser.Model.System;
|
|
||||||
using MediaBrowser.Model.Threading;
|
|
||||||
using Microsoft.Extensions.Logging;
|
using Microsoft.Extensions.Logging;
|
||||||
using SQLitePCL.pretty;
|
using SQLitePCL.pretty;
|
||||||
|
|
||||||
|
@ -316,8 +313,6 @@ namespace Emby.Server.Implementations.Data
|
||||||
};
|
};
|
||||||
|
|
||||||
connection.RunQueries(postQueries);
|
connection.RunQueries(postQueries);
|
||||||
|
|
||||||
//await Vacuum(_connection).ConfigureAwait(false);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
userDataRepo.Initialize(WriteLock, _connection, userManager);
|
userDataRepo.Initialize(WriteLock, _connection, userManager);
|
||||||
|
@ -623,11 +618,9 @@ namespace Emby.Server.Implementations.Data
|
||||||
{
|
{
|
||||||
GetSaveItemCommandText(),
|
GetSaveItemCommandText(),
|
||||||
"delete from AncestorIds where ItemId=@ItemId"
|
"delete from AncestorIds where ItemId=@ItemId"
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
using (var saveItemStatement = statements[0])
|
using (var saveItemStatement = statements[0])
|
||||||
{
|
|
||||||
using (var deleteAncestorsStatement = statements[1])
|
using (var deleteAncestorsStatement = statements[1])
|
||||||
{
|
{
|
||||||
var requiresReset = false;
|
var requiresReset = false;
|
||||||
|
@ -643,7 +636,6 @@ namespace Emby.Server.Implementations.Data
|
||||||
var userDataKey = tuple.Item4;
|
var userDataKey = tuple.Item4;
|
||||||
|
|
||||||
SaveItem(item, topParent, userDataKey, saveItemStatement);
|
SaveItem(item, topParent, userDataKey, saveItemStatement);
|
||||||
//logger.LogDebug(_saveItemCommand.CommandText);
|
|
||||||
|
|
||||||
var inheritedTags = tuple.Item5;
|
var inheritedTags = tuple.Item5;
|
||||||
|
|
||||||
|
@ -658,7 +650,6 @@ namespace Emby.Server.Implementations.Data
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
private string GetPathToSave(string path)
|
private string GetPathToSave(string path)
|
||||||
{
|
{
|
||||||
|
@ -989,8 +980,7 @@ namespace Emby.Server.Implementations.Data
|
||||||
}
|
}
|
||||||
|
|
||||||
string artists = null;
|
string artists = null;
|
||||||
if (item is IHasArtist hasArtists
|
if (item is IHasArtist hasArtists && hasArtists.Artists.Length > 0)
|
||||||
&& hasArtists.Artists.Length > 0)
|
|
||||||
{
|
{
|
||||||
artists = string.Join("|", hasArtists.Artists);
|
artists = string.Join("|", hasArtists.Artists);
|
||||||
}
|
}
|
||||||
|
@ -1032,7 +1022,8 @@ namespace Emby.Server.Implementations.Data
|
||||||
StringBuilder str = new StringBuilder();
|
StringBuilder str = new StringBuilder();
|
||||||
foreach (var i in item.ProviderIds)
|
foreach (var i in item.ProviderIds)
|
||||||
{
|
{
|
||||||
// Ideally we shouldn't need this IsNullOrWhiteSpace check but we're seeing some cases of bad data slip through
|
// Ideally we shouldn't need this IsNullOrWhiteSpace check,
|
||||||
|
// but we're seeing some cases of bad data slip through
|
||||||
if (string.IsNullOrWhiteSpace(i.Value))
|
if (string.IsNullOrWhiteSpace(i.Value))
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
|
@ -1082,7 +1073,7 @@ namespace Emby.Server.Implementations.Data
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
StringBuilder str = new StringBuilder();
|
StringBuilder str = new StringBuilder();
|
||||||
foreach(var i in images)
|
foreach (var i in images)
|
||||||
{
|
{
|
||||||
if (string.IsNullOrWhiteSpace(i.Path))
|
if (string.IsNullOrWhiteSpace(i.Path))
|
||||||
{
|
{
|
||||||
|
@ -1194,7 +1185,7 @@ namespace Emby.Server.Implementations.Data
|
||||||
}
|
}
|
||||||
|
|
||||||
CheckDisposed();
|
CheckDisposed();
|
||||||
//logger.LogInformation("Retrieving item {0}", id.ToString("N"));
|
|
||||||
using (WriteLock.Read())
|
using (WriteLock.Read())
|
||||||
{
|
{
|
||||||
using (var connection = CreateConnection(true))
|
using (var connection = CreateConnection(true))
|
||||||
|
@ -2411,7 +2402,6 @@ namespace Emby.Server.Implementations.Data
|
||||||
|
|
||||||
if (item.ProductionYear.HasValue)
|
if (item.ProductionYear.HasValue)
|
||||||
{
|
{
|
||||||
//builder.Append("+ ((ProductionYear=@ItemProductionYear) * 10)");
|
|
||||||
builder.Append("+(Select Case When Abs(COALESCE(ProductionYear, 0) - @ItemProductionYear) < 10 Then 10 Else 0 End )");
|
builder.Append("+(Select Case When Abs(COALESCE(ProductionYear, 0) - @ItemProductionYear) < 10 Then 10 Else 0 End )");
|
||||||
builder.Append("+(Select Case When Abs(COALESCE(ProductionYear, 0) - @ItemProductionYear) < 5 Then 5 Else 0 End )");
|
builder.Append("+(Select Case When Abs(COALESCE(ProductionYear, 0) - @ItemProductionYear) < 5 Then 5 Else 0 End )");
|
||||||
}
|
}
|
||||||
|
@ -2419,12 +2409,6 @@ namespace Emby.Server.Implementations.Data
|
||||||
//// genres, tags
|
//// genres, tags
|
||||||
builder.Append("+ ((Select count(CleanValue) from ItemValues where ItemId=Guid and CleanValue in (select CleanValue from itemvalues where ItemId=@SimilarItemId)) * 10)");
|
builder.Append("+ ((Select count(CleanValue) from ItemValues where ItemId=Guid and CleanValue in (select CleanValue from itemvalues where ItemId=@SimilarItemId)) * 10)");
|
||||||
|
|
||||||
//builder.Append("+ ((Select count(CleanValue) from ItemValues where ItemId=Guid and Type=3 and CleanValue in (select CleanValue from itemvalues where ItemId=@SimilarItemId and type=3)) * 3)");
|
|
||||||
|
|
||||||
//builder.Append("+ ((Select count(Name) from People where ItemId=Guid and Name in (select Name from People where ItemId=@SimilarItemId)) * 3)");
|
|
||||||
|
|
||||||
//builder.Append("(select group_concat((Select Name from People where ItemId=Guid and Name in (Select Name from People where ItemId=@SimilarItemId)), '|'))");
|
|
||||||
|
|
||||||
builder.Append(") as SimilarityScore");
|
builder.Append(") as SimilarityScore");
|
||||||
|
|
||||||
list.Add(builder.ToString());
|
list.Add(builder.ToString());
|
||||||
|
@ -2572,8 +2556,6 @@ namespace Emby.Server.Implementations.Data
|
||||||
commandText += " where " + string.Join(" AND ", whereClauses);
|
commandText += " where " + string.Join(" AND ", whereClauses);
|
||||||
}
|
}
|
||||||
|
|
||||||
//commandText += GetGroupBy(query);
|
|
||||||
|
|
||||||
using (WriteLock.Read())
|
using (WriteLock.Read())
|
||||||
{
|
{
|
||||||
using (var connection = CreateConnection(true))
|
using (var connection = CreateConnection(true))
|
||||||
|
@ -2949,7 +2931,6 @@ namespace Emby.Server.Implementations.Data
|
||||||
{
|
{
|
||||||
orderBy.Add(new ValueTuple<string, SortOrder>("SimilarityScore", SortOrder.Descending));
|
orderBy.Add(new ValueTuple<string, SortOrder>("SimilarityScore", SortOrder.Descending));
|
||||||
orderBy.Add(new ValueTuple<string, SortOrder>(ItemSortBy.Random, SortOrder.Ascending));
|
orderBy.Add(new ValueTuple<string, SortOrder>(ItemSortBy.Random, SortOrder.Ascending));
|
||||||
//orderBy.Add(new Tuple<string, SortOrder>(ItemSortBy.Random, SortOrder.Ascending));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!string.IsNullOrEmpty(query.SearchTerm))
|
if (!string.IsNullOrEmpty(query.SearchTerm))
|
||||||
|
@ -3011,7 +2992,6 @@ namespace Emby.Server.Implementations.Data
|
||||||
}
|
}
|
||||||
else if (string.Equals(name, ItemSortBy.IsFavoriteOrLiked, StringComparison.OrdinalIgnoreCase))
|
else if (string.Equals(name, ItemSortBy.IsFavoriteOrLiked, StringComparison.OrdinalIgnoreCase))
|
||||||
{
|
{
|
||||||
// (Select Case When Abs(COALESCE(ProductionYear, 0) - @ItemProductionYear) < 10 Then 2 Else 0 End )
|
|
||||||
return ("(Select Case When IsFavorite is null Then 0 Else IsFavorite End )", true);
|
return ("(Select Case When IsFavorite is null Then 0 Else IsFavorite End )", true);
|
||||||
}
|
}
|
||||||
else if (string.Equals(name, ItemSortBy.IsFolder, StringComparison.OrdinalIgnoreCase))
|
else if (string.Equals(name, ItemSortBy.IsFolder, StringComparison.OrdinalIgnoreCase))
|
||||||
|
@ -3384,14 +3364,6 @@ namespace Emby.Server.Implementations.Data
|
||||||
query.IsVirtualItem = false;
|
query.IsVirtualItem = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
var whereClauses = new List<string>();
|
|
||||||
|
|
||||||
/*
|
|
||||||
if (EnableJoinUserData(query))
|
|
||||||
{
|
|
||||||
whereClauses.Add("(UserId is null or UserId=@UserId)");
|
|
||||||
}*/
|
|
||||||
|
|
||||||
var minWidth = query.MinWidth;
|
var minWidth = query.MinWidth;
|
||||||
var maxWidth = query.MaxWidth;
|
var maxWidth = query.MaxWidth;
|
||||||
|
|
||||||
|
@ -3421,6 +3393,8 @@ namespace Emby.Server.Implementations.Data
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var whereClauses = new List<string>();
|
||||||
|
|
||||||
if (minWidth.HasValue)
|
if (minWidth.HasValue)
|
||||||
{
|
{
|
||||||
whereClauses.Add("Width>=@MinWidth");
|
whereClauses.Add("Width>=@MinWidth");
|
||||||
|
@ -3466,43 +3440,6 @@ namespace Emby.Server.Implementations.Data
|
||||||
var tags = query.Tags.ToList();
|
var tags = query.Tags.ToList();
|
||||||
var excludeTags = query.ExcludeTags.ToList();
|
var excludeTags = query.ExcludeTags.ToList();
|
||||||
|
|
||||||
//if (!(query.IsMovie ?? true) || !(query.IsSeries ?? true))
|
|
||||||
//{
|
|
||||||
// if (query.IsMovie.HasValue)
|
|
||||||
// {
|
|
||||||
// var alternateTypes = new List<string>();
|
|
||||||
// if (query.IncludeItemTypes.Length == 0 || query.IncludeItemTypes.Contains(typeof(Movie).Name))
|
|
||||||
// {
|
|
||||||
// alternateTypes.Add(typeof(Movie).FullName);
|
|
||||||
// }
|
|
||||||
// if (query.IncludeItemTypes.Length == 0 || query.IncludeItemTypes.Contains(typeof(Trailer).Name))
|
|
||||||
// {
|
|
||||||
// alternateTypes.Add(typeof(Trailer).FullName);
|
|
||||||
// }
|
|
||||||
|
|
||||||
// if (alternateTypes.Count == 0)
|
|
||||||
// {
|
|
||||||
// whereClauses.Add("IsMovie=@IsMovie");
|
|
||||||
// if (statement != null)
|
|
||||||
// {
|
|
||||||
// statement.TryBind("@IsMovie", query.IsMovie);
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// else
|
|
||||||
// {
|
|
||||||
// whereClauses.Add("(IsMovie is null OR IsMovie=@IsMovie)");
|
|
||||||
// if (statement != null)
|
|
||||||
// {
|
|
||||||
// statement.TryBind("@IsMovie", query.IsMovie);
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
//}
|
|
||||||
//else
|
|
||||||
//{
|
|
||||||
|
|
||||||
//}
|
|
||||||
|
|
||||||
if (query.IsMovie ?? false)
|
if (query.IsMovie ?? false)
|
||||||
{
|
{
|
||||||
var alternateTypes = new List<string>();
|
var alternateTypes = new List<string>();
|
||||||
|
@ -3664,7 +3601,6 @@ namespace Emby.Server.Implementations.Data
|
||||||
|
|
||||||
if (!string.IsNullOrWhiteSpace(query.Path))
|
if (!string.IsNullOrWhiteSpace(query.Path))
|
||||||
{
|
{
|
||||||
//whereClauses.Add("(Path=@Path COLLATE NOCASE)");
|
|
||||||
whereClauses.Add("Path=@Path");
|
whereClauses.Add("Path=@Path");
|
||||||
if (statement != null)
|
if (statement != null)
|
||||||
{
|
{
|
||||||
|
@ -3726,18 +3662,6 @@ namespace Emby.Server.Implementations.Data
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//if (query.MinPlayers.HasValue)
|
|
||||||
//{
|
|
||||||
// whereClauses.Add("Players>=@MinPlayers");
|
|
||||||
// cmd.Parameters.Add(cmd, "@MinPlayers", DbType.Int32).Value = query.MinPlayers.Value;
|
|
||||||
//}
|
|
||||||
|
|
||||||
//if (query.MaxPlayers.HasValue)
|
|
||||||
//{
|
|
||||||
// whereClauses.Add("Players<=@MaxPlayers");
|
|
||||||
// cmd.Parameters.Add(cmd, "@MaxPlayers", DbType.Int32).Value = query.MaxPlayers.Value;
|
|
||||||
//}
|
|
||||||
|
|
||||||
if (query.IndexNumber.HasValue)
|
if (query.IndexNumber.HasValue)
|
||||||
{
|
{
|
||||||
whereClauses.Add("IndexNumber=@IndexNumber");
|
whereClauses.Add("IndexNumber=@IndexNumber");
|
||||||
|
@ -4547,7 +4471,6 @@ namespace Emby.Server.Implementations.Data
|
||||||
}
|
}
|
||||||
|
|
||||||
var paramName = "@ExcludeProviderId" + index;
|
var paramName = "@ExcludeProviderId" + index;
|
||||||
//excludeIds.Add("(COALESCE((select value from ProviderIds where ItemId=Guid and Name = '" + pair.Key + "'), '') <> " + paramName + ")");
|
|
||||||
excludeIds.Add("(ProviderIds is null or ProviderIds not like " + paramName + ")");
|
excludeIds.Add("(ProviderIds is null or ProviderIds not like " + paramName + ")");
|
||||||
if (statement != null)
|
if (statement != null)
|
||||||
{
|
{
|
||||||
|
@ -5457,8 +5380,6 @@ where AncestorIdText not null and ItemValues.Value not null and ItemValues.Type
|
||||||
|
|
||||||
itemCountColumnQuery += typeWhereText;
|
itemCountColumnQuery += typeWhereText;
|
||||||
|
|
||||||
//itemCountColumnQuery += ")";
|
|
||||||
|
|
||||||
itemCountColumns = new Dictionary<string, string>()
|
itemCountColumns = new Dictionary<string, string>()
|
||||||
{
|
{
|
||||||
{ "itemTypes", "(" + itemCountColumnQuery + ") as itemTypes"}
|
{ "itemTypes", "(" + itemCountColumnQuery + ") as itemTypes"}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user