#62 - File locking problem in cache

This commit is contained in:
Luke Pulverenti
2013-04-02 22:59:27 -04:00
parent 713afcf675
commit fa884f3fea
16 changed files with 239 additions and 294 deletions

View File

@@ -300,10 +300,18 @@ namespace MediaBrowser.Server.Implementations.Library
var activityDate = DateTime.UtcNow;
var lastActivityDate = user.LastActivityDate;
user.LastActivityDate = activityDate;
LogConnection(user.Id, clientType, deviceId, deviceName, activityDate);
// Don't log in the db anymore frequently than 10 seconds
if (lastActivityDate.HasValue && (activityDate - lastActivityDate.Value).TotalSeconds < 10)
{
return Task.FromResult(true);
}
// Save this directly. No need to fire off all the events for this.
return Kernel.UserRepository.SaveUser(user, CancellationToken.None);
}

View File

@@ -48,10 +48,10 @@ namespace MediaBrowser.Server.Implementations.Sqlite
/// </summary>
/// <param name="appPaths">The app paths.</param>
/// <param name="protobufSerializer">The protobuf serializer.</param>
/// <param name="logger">The logger.</param>
/// <param name="logManager">The log manager.</param>
/// <exception cref="System.ArgumentNullException">protobufSerializer</exception>
public SQLiteDisplayPreferencesRepository(IApplicationPaths appPaths, IProtobufSerializer protobufSerializer, ILogger logger)
: base(logger)
public SQLiteDisplayPreferencesRepository(IApplicationPaths appPaths, IProtobufSerializer protobufSerializer, ILogManager logManager)
: base(logManager)
{
if (protobufSerializer == null)
{

View File

@@ -56,10 +56,10 @@ namespace MediaBrowser.Server.Implementations.Sqlite
/// </summary>
/// <param name="appPaths">The app paths.</param>
/// <param name="jsonSerializer">The json serializer.</param>
/// <param name="logger">The logger.</param>
/// <param name="logManager">The log manager.</param>
/// <exception cref="System.ArgumentNullException">appPaths</exception>
public SQLiteItemRepository(IApplicationPaths appPaths, IJsonSerializer jsonSerializer, ILogger logger)
: base(logger)
public SQLiteItemRepository(IApplicationPaths appPaths, IJsonSerializer jsonSerializer, ILogManager logManager)
: base(logManager)
{
if (appPaths == null)
{

View File

@@ -46,16 +46,16 @@ namespace MediaBrowser.Server.Implementations.Sqlite
/// <summary>
/// Initializes a new instance of the <see cref="SqliteRepository" /> class.
/// </summary>
/// <param name="logger">The logger.</param>
/// <param name="logManager">The log manager.</param>
/// <exception cref="System.ArgumentNullException">logger</exception>
protected SqliteRepository(ILogger logger)
protected SqliteRepository(ILogManager logManager)
{
if (logger == null)
if (logManager == null)
{
throw new ArgumentNullException("logger");
throw new ArgumentNullException("logManager");
}
Logger = logger;
Logger = logManager.GetLogger(GetType().Name);
}
/// <summary>

View File

@@ -49,10 +49,10 @@ namespace MediaBrowser.Server.Implementations.Sqlite
/// </summary>
/// <param name="appPaths">The app paths.</param>
/// <param name="protobufSerializer">The protobuf serializer.</param>
/// <param name="logger">The logger.</param>
/// <param name="logManager">The log manager.</param>
/// <exception cref="System.ArgumentNullException">protobufSerializer</exception>
public SQLiteUserDataRepository(IApplicationPaths appPaths, IProtobufSerializer protobufSerializer, ILogger logger)
: base(logger)
public SQLiteUserDataRepository(IApplicationPaths appPaths, IProtobufSerializer protobufSerializer, ILogManager logManager)
: base(logManager)
{
if (protobufSerializer == null)
{

View File

@@ -50,10 +50,10 @@ namespace MediaBrowser.Server.Implementations.Sqlite
/// </summary>
/// <param name="appPaths">The app paths.</param>
/// <param name="jsonSerializer">The json serializer.</param>
/// <param name="logger">The logger.</param>
/// <param name="logManager">The log manager.</param>
/// <exception cref="System.ArgumentNullException">appPaths</exception>
public SQLiteUserRepository(IApplicationPaths appPaths, IJsonSerializer jsonSerializer, ILogger logger)
: base(logger)
public SQLiteUserRepository(IApplicationPaths appPaths, IJsonSerializer jsonSerializer, ILogManager logManager)
: base(logManager)
{
if (appPaths == null)
{