aboutsummaryrefslogtreecommitdiff
path: root/Emby.Server.Implementations/Data/SqliteUserDataRepository.cs
diff options
context:
space:
mode:
authorLuke <luke.pulverenti@gmail.com>2016-12-12 00:52:57 -0500
committerGitHub <noreply@github.com>2016-12-12 00:52:57 -0500
commitd6d0bc71643536f51db596217504b363bcede811 (patch)
tree8b227d9884d8c1d3434d355fe8459b3edc22a2ec /Emby.Server.Implementations/Data/SqliteUserDataRepository.cs
parent95b3e08d4b0666f2b437663f38dcafa9183733fb (diff)
parent1aff48b93b72fe7d418b4798f504bd0d145f44e8 (diff)
Merge pull request #2337 from MediaBrowser/dev
Dev
Diffstat (limited to 'Emby.Server.Implementations/Data/SqliteUserDataRepository.cs')
-rw-r--r--Emby.Server.Implementations/Data/SqliteUserDataRepository.cs24
1 files changed, 15 insertions, 9 deletions
diff --git a/Emby.Server.Implementations/Data/SqliteUserDataRepository.cs b/Emby.Server.Implementations/Data/SqliteUserDataRepository.cs
index be59d71b3..7afb5720e 100644
--- a/Emby.Server.Implementations/Data/SqliteUserDataRepository.cs
+++ b/Emby.Server.Implementations/Data/SqliteUserDataRepository.cs
@@ -300,20 +300,26 @@ namespace Emby.Server.Implementations.Data
{
using (var connection = CreateConnection(true))
{
- using (var statement = connection.PrepareStatement("select key,userid,rating,played,playCount,isFavorite,playbackPositionTicks,lastPlayedDate,AudioStreamIndex,SubtitleStreamIndex from userdata where key =@Key and userId=@UserId"))
- {
- statement.TryBind("@UserId", userId.ToGuidParamValue());
- statement.TryBind("@Key", key);
+ UserItemData result = null;
- foreach (var row in statement.ExecuteQuery())
+ connection.RunInTransaction(db =>
+ {
+ using (var statement = db.PrepareStatement("select key,userid,rating,played,playCount,isFavorite,playbackPositionTicks,lastPlayedDate,AudioStreamIndex,SubtitleStreamIndex from userdata where key =@Key and userId=@UserId"))
{
- return ReadRow(row);
+ statement.TryBind("@UserId", userId.ToGuidParamValue());
+ statement.TryBind("@Key", key);
+
+ foreach (var row in statement.ExecuteQuery())
+ {
+ result = ReadRow(row);
+ break;
+ }
}
- }
+ }, ReadTransactionMode);
+
+ return result;
}
}
-
- return null;
}
public UserItemData GetUserData(Guid userId, List<string> keys)