mirror of
				https://github.com/jellyfin/jellyfin.git
				synced 2025-11-03 19:17:24 -05:00 
			
		
		
		
	update similar queries
This commit is contained in:
		
							parent
							
								
									d84bb7160f
								
							
						
					
					
						commit
						87c9f26e65
					
				@ -2240,7 +2240,7 @@ namespace Emby.Server.Implementations.Data
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
            if (query.SimilarTo != null && query.User != null)
 | 
					            if (query.SimilarTo != null && query.User != null)
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
                return true;
 | 
					                //return true;
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            var sortingFields = query.SortBy.ToList();
 | 
					            var sortingFields = query.SortBy.ToList();
 | 
				
			||||||
@ -2369,15 +2369,10 @@ namespace Emby.Server.Implementations.Data
 | 
				
			|||||||
                builder.Append("+(Select Case When Abs(COALESCE(ProductionYear, 0) - @ItemProductionYear) < 10 Then 2 Else 0 End )");
 | 
					                builder.Append("+(Select Case When Abs(COALESCE(ProductionYear, 0) - @ItemProductionYear) < 10 Then 2 Else 0 End )");
 | 
				
			||||||
                builder.Append("+(Select Case When Abs(COALESCE(ProductionYear, 0) - @ItemProductionYear) < 5 Then 2 Else 0 End )");
 | 
					                builder.Append("+(Select Case When Abs(COALESCE(ProductionYear, 0) - @ItemProductionYear) < 5 Then 2 Else 0 End )");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                //// genres
 | 
					                //// genres, tags
 | 
				
			||||||
                builder.Append("+ ((Select count(CleanValue) from ItemValues where ItemId=Guid and Type=2 and CleanValue in (select CleanValue from itemvalues where ItemId=@SimilarItemId and type=2)) * 10)");
 | 
					                builder.Append("+ ((Select count(CleanValue) from ItemValues where ItemId=Guid and Type in (2,3,4,5) and CleanValue in (select CleanValue from itemvalues where ItemId=@SimilarItemId and Type in (2,3,4,5))) * 10)");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                //// tags
 | 
					                //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(CleanValue) from ItemValues where ItemId=Guid and Type=4 and CleanValue in (select CleanValue from itemvalues where ItemId=@SimilarItemId and type=4)) * 10)");
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                builder.Append("+ ((Select count(CleanValue) from ItemValues where ItemId=Guid and Type=5 and CleanValue in (select CleanValue from itemvalues where ItemId=@SimilarItemId and type=5)) * 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 count(Name) from People where ItemId=Guid and Name in (select Name from People where ItemId=@SimilarItemId)) * 3)");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -307,9 +307,7 @@
 | 
				
			|||||||
    <None Include="LiveTv\TunerHosts\SatIp\ini\satellite\3594.ini" />
 | 
					    <None Include="LiveTv\TunerHosts\SatIp\ini\satellite\3594.ini" />
 | 
				
			||||||
    <None Include="packages.config" />
 | 
					    <None Include="packages.config" />
 | 
				
			||||||
  </ItemGroup>
 | 
					  </ItemGroup>
 | 
				
			||||||
  <ItemGroup>
 | 
					  <ItemGroup />
 | 
				
			||||||
    <Folder Include="Persistence\" />
 | 
					 | 
				
			||||||
  </ItemGroup>
 | 
					 | 
				
			||||||
  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
 | 
					  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
 | 
				
			||||||
  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
 | 
					  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
 | 
				
			||||||
       Other similar extension points exist, see Microsoft.Common.targets.
 | 
					       Other similar extension points exist, see Microsoft.Common.targets.
 | 
				
			||||||
 | 
				
			|||||||
@ -1,57 +0,0 @@
 | 
				
			|||||||
using System;
 | 
					 | 
				
			||||||
using System.Data;
 | 
					 | 
				
			||||||
using System.Data.SQLite;
 | 
					 | 
				
			||||||
using System.Threading.Tasks;
 | 
					 | 
				
			||||||
using MediaBrowser.Model.Logging;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
namespace Emby.Server.Core.Data
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
    /// <summary>
 | 
					 | 
				
			||||||
    /// Class SQLiteExtensions
 | 
					 | 
				
			||||||
    /// </summary>
 | 
					 | 
				
			||||||
    public static class SqliteExtensions
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
        /// <summary>
 | 
					 | 
				
			||||||
        /// Connects to db.
 | 
					 | 
				
			||||||
        /// </summary>
 | 
					 | 
				
			||||||
        public static async Task<IDbConnection> ConnectToDb(string dbPath, 
 | 
					 | 
				
			||||||
            bool isReadOnly, 
 | 
					 | 
				
			||||||
            bool enablePooling, 
 | 
					 | 
				
			||||||
            int? cacheSize, 
 | 
					 | 
				
			||||||
            ILogger logger)
 | 
					 | 
				
			||||||
        {
 | 
					 | 
				
			||||||
            if (string.IsNullOrEmpty(dbPath))
 | 
					 | 
				
			||||||
            {
 | 
					 | 
				
			||||||
                throw new ArgumentNullException("dbPath");
 | 
					 | 
				
			||||||
            }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            SQLiteConnection.SetMemoryStatus(false);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            var connectionstr = new SQLiteConnectionStringBuilder
 | 
					 | 
				
			||||||
            {
 | 
					 | 
				
			||||||
                PageSize = 4096,
 | 
					 | 
				
			||||||
                CacheSize = cacheSize ?? 2000,
 | 
					 | 
				
			||||||
                SyncMode = SynchronizationModes.Normal,
 | 
					 | 
				
			||||||
                DataSource = dbPath,
 | 
					 | 
				
			||||||
                JournalMode = SQLiteJournalModeEnum.Wal,
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                // This is causing crashing under linux
 | 
					 | 
				
			||||||
                Pooling = enablePooling && Environment.OSVersion.Platform == PlatformID.Win32NT,
 | 
					 | 
				
			||||||
                ReadOnly = isReadOnly
 | 
					 | 
				
			||||||
            };
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            var connectionString = connectionstr.ConnectionString;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            if (!enablePooling)
 | 
					 | 
				
			||||||
            {
 | 
					 | 
				
			||||||
                logger.Info("Sqlite {0} opening {1}", SQLiteConnection.SQLiteVersion, connectionString);
 | 
					 | 
				
			||||||
            }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            var connection = new SQLiteConnection(connectionString);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            await connection.OpenAsync().ConfigureAwait(false);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            return connection;
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user