aboutsummaryrefslogtreecommitdiff
path: root/Emby.Server.Implementations/Data/SqliteItemRepository.cs
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2016-12-13 03:45:04 -0500
committerLuke Pulverenti <luke.pulverenti@gmail.com>2016-12-13 03:45:04 -0500
commit71854c1a09bb820c181485cf0601959461bca852 (patch)
treef4e332953a55c456e9d9149d00acb5d806d13232 /Emby.Server.Implementations/Data/SqliteItemRepository.cs
parente1b880a5a072764cabace79cd6d1d65315ec65e4 (diff)
update connection process
Diffstat (limited to 'Emby.Server.Implementations/Data/SqliteItemRepository.cs')
-rw-r--r--Emby.Server.Implementations/Data/SqliteItemRepository.cs30
1 files changed, 18 insertions, 12 deletions
diff --git a/Emby.Server.Implementations/Data/SqliteItemRepository.cs b/Emby.Server.Implementations/Data/SqliteItemRepository.cs
index 803ebeca0..f93819322 100644
--- a/Emby.Server.Implementations/Data/SqliteItemRepository.cs
+++ b/Emby.Server.Implementations/Data/SqliteItemRepository.cs
@@ -701,12 +701,12 @@ namespace Emby.Server.Implementations.Data
{
var requiresReset = false;
- var statements = PrepareAll(db, string.Join(";", new string[]
+ var statements = PrepareAllSafe(db, new string[]
{
GetSaveItemCommandText(),
"delete from AncestorIds where ItemId=@ItemId",
"insert into AncestorIds (ItemId, AncestorId, AncestorIdText) values (@ItemId, @AncestorId, @AncestorIdText)"
- })).ToList();
+ }).ToList();
using (var saveItemStatement = statements[0])
{
@@ -1258,18 +1258,23 @@ namespace Emby.Server.Implementations.Data
{
using (var connection = CreateConnection(true))
{
- using (var statement = PrepareStatementSafe(connection, "select " + string.Join(",", _retriveItemColumns) + " from TypedBaseItems where guid = @guid"))
+ return connection.RunInTransaction(db =>
{
- statement.TryBind("@guid", id);
-
- foreach (var row in statement.ExecuteQuery())
+ using (var statement = PrepareStatementSafe(db, "select " + string.Join(",", _retriveItemColumns) + " from TypedBaseItems where guid = @guid"))
{
- return GetItem(row);
+ statement.TryBind("@guid", id);
+
+ foreach (var row in statement.ExecuteQuery())
+ {
+ return GetItem(row);
+ }
}
- }
+
+ return null;
+
+ }, ReadTransactionMode);
}
}
- return null;
}
private BaseItem GetItem(IReadOnlyList<IResultSetValue> reader)
@@ -2762,7 +2767,7 @@ namespace Emby.Server.Implementations.Data
return connection.RunInTransaction(db =>
{
var result = new QueryResult<BaseItem>();
- var statements = PrepareAllSafe(db, string.Join(";", statementTexts.ToArray()))
+ var statements = PrepareAllSafe(db, statementTexts)
.ToList();
if (!isReturningZeroItems)
@@ -3173,7 +3178,7 @@ namespace Emby.Server.Implementations.Data
{
var result = new QueryResult<Guid>();
- var statements = PrepareAllSafe(db, string.Join(";", statementTexts.ToArray()))
+ var statements = PrepareAllSafe(db, statementTexts)
.ToList();
if (!isReturningZeroItems)
@@ -5121,7 +5126,8 @@ namespace Emby.Server.Implementations.Data
var list = new List<Tuple<BaseItem, ItemCounts>>();
var result = new QueryResult<Tuple<BaseItem, ItemCounts>>();
- var statements = PrepareAllSafe(db, string.Join(";", statementTexts.ToArray())).ToList();
+ var statements = PrepareAllSafe(db, statementTexts)
+ .ToList();
if (!isReturningZeroItems)
{