@@ -52,7 +52,7 @@ internal sealed class SqlTableChangeMonitor<T> : IDisposable
52
52
private readonly int _userTableId ;
53
53
private readonly SqlObject _userTable ;
54
54
private readonly string _userFunctionId ;
55
- private readonly string _leasesTableName ;
55
+ private readonly string _bracketedLeasesTableName ;
56
56
private readonly IReadOnlyList < string > _userTableColumns ;
57
57
private readonly IReadOnlyList < ( string name , string type ) > _primaryKeyColumns ;
58
58
private readonly IReadOnlyList < string > _rowMatchConditions ;
@@ -98,7 +98,7 @@ internal sealed class SqlTableChangeMonitor<T> : IDisposable
98
98
/// <param name="userTableId">SQL object ID of the user table</param>
99
99
/// <param name="userTable"><see cref="SqlObject" /> instance created with user table name</param>
100
100
/// <param name="userFunctionId">Unique identifier for the user function</param>
101
- /// <param name="leasesTableName ">Name of the leases table</param>
101
+ /// <param name="bracketedLeasesTableName ">Name of the leases table</param>
102
102
/// <param name="userTableColumns">List of all column names in the user table</param>
103
103
/// <param name="primaryKeyColumns">List of primary key column names in the user table</param>
104
104
/// <param name="executor">Defines contract for triggering user function</param>
@@ -110,7 +110,7 @@ public SqlTableChangeMonitor(
110
110
int userTableId ,
111
111
SqlObject userTable ,
112
112
string userFunctionId ,
113
- string leasesTableName ,
113
+ string bracketedLeasesTableName ,
114
114
IReadOnlyList < string > userTableColumns ,
115
115
IReadOnlyList < ( string name , string type ) > primaryKeyColumns ,
116
116
ITriggeredFunctionExecutor executor ,
@@ -121,7 +121,7 @@ public SqlTableChangeMonitor(
121
121
this . _connectionString = ! string . IsNullOrEmpty ( connectionString ) ? connectionString : throw new ArgumentNullException ( nameof ( connectionString ) ) ;
122
122
this . _userTable = ! string . IsNullOrEmpty ( userTable ? . FullName ) ? userTable : throw new ArgumentNullException ( nameof ( userTable ) ) ;
123
123
this . _userFunctionId = ! string . IsNullOrEmpty ( userFunctionId ) ? userFunctionId : throw new ArgumentNullException ( nameof ( userFunctionId ) ) ;
124
- this . _leasesTableName = ! string . IsNullOrEmpty ( leasesTableName ) ? leasesTableName : throw new ArgumentNullException ( nameof ( leasesTableName ) ) ;
124
+ this . _bracketedLeasesTableName = ! string . IsNullOrEmpty ( bracketedLeasesTableName ) ? bracketedLeasesTableName : throw new ArgumentNullException ( nameof ( bracketedLeasesTableName ) ) ;
125
125
this . _userTableColumns = userTableColumns ?? throw new ArgumentNullException ( nameof ( userTableColumns ) ) ;
126
126
this . _primaryKeyColumns = primaryKeyColumns ?? throw new ArgumentNullException ( nameof ( primaryKeyColumns ) ) ;
127
127
this . _executor = executor ?? throw new ArgumentNullException ( nameof ( executor ) ) ;
@@ -805,7 +805,7 @@ SELECT TOP {this._maxBatchSize}
805
805
l.{ LeasesTableAttemptCountColumnName } ,
806
806
l.{ LeasesTableLeaseExpirationTimeColumnName }
807
807
FROM CHANGETABLE(CHANGES { this . _userTable . BracketQuotedFullName } , @last_sync_version) AS c
808
- LEFT OUTER JOIN { this . _leasesTableName } AS l ON { leasesTableJoinCondition }
808
+ LEFT OUTER JOIN { this . _bracketedLeasesTableName } AS l ON { leasesTableJoinCondition }
809
809
LEFT OUTER JOIN { this . _userTable . BracketQuotedFullName } AS u ON { userTableJoinCondition }
810
810
WHERE
811
811
(l.{ LeasesTableLeaseExpirationTimeColumnName } IS NULL AND
@@ -842,7 +842,7 @@ private async Task<int> GetLeaseLockedRowCount(SqlConnection connection, SqlTran
842
842
843
843
SELECT COUNT(*)
844
844
FROM CHANGETABLE(CHANGES { this . _userTable . BracketQuotedFullName } , @last_sync_version) AS c
845
- LEFT OUTER JOIN { this . _leasesTableName } AS l ON { leasesTableJoinCondition }
845
+ LEFT OUTER JOIN { this . _bracketedLeasesTableName } AS l ON { leasesTableJoinCondition }
846
846
WHERE l.{ LeasesTableLeaseExpirationTimeColumnName } IS NOT NULL AND l.{ LeasesTableLeaseExpirationTimeColumnName } > SYSDATETIME()" ;
847
847
try
848
848
{
@@ -890,7 +890,7 @@ private SqlCommand BuildAcquireLeasesCommand(SqlConnection connection, SqlTransa
890
890
{ AppLockStatements }
891
891
892
892
WITH { acquireLeasesCte } AS ( SELECT * FROM OPENJSON(@rowData) WITH ({ string . Join ( "," , cteColumnDefinitions ) } ) )
893
- MERGE INTO { this . _leasesTableName }
893
+ MERGE INTO { this . _bracketedLeasesTableName }
894
894
AS ExistingData
895
895
USING { acquireLeasesCte }
896
896
AS NewData
@@ -924,7 +924,7 @@ private SqlCommand BuildRenewLeasesCommand(SqlConnection connection, SqlTransact
924
924
string renewLeasesQuery = $@ "
925
925
{ AppLockStatements }
926
926
927
- UPDATE { this . _leasesTableName }
927
+ UPDATE { this . _bracketedLeasesTableName }
928
928
SET { LeasesTableLeaseExpirationTimeColumnName } = DATEADD(second, { LeaseIntervalInSeconds } , SYSDATETIME())
929
929
WHERE { matchCondition } ;
930
930
" ;
@@ -957,12 +957,12 @@ private SqlCommand BuildReleaseLeasesCommand(SqlConnection connection, SqlTransa
957
957
$@ "{ AppLockStatements }
958
958
959
959
WITH { releaseLeasesCte } AS ( SELECT * FROM OPENJSON(@rowData) WITH ({ string . Join ( "," , cteColumnDefinitions ) } ) )
960
- UPDATE { this . _leasesTableName }
960
+ UPDATE { this . _bracketedLeasesTableName }
961
961
SET
962
962
{ LeasesTableChangeVersionColumnName } = cte.{ SysChangeVersionColumnName } ,
963
963
{ LeasesTableAttemptCountColumnName } = 0,
964
964
{ LeasesTableLeaseExpirationTimeColumnName } = NULL
965
- FROM { this . _leasesTableName } l INNER JOIN releaseLeasesCte cte ON { primaryKeyMatchingQuery }
965
+ FROM { this . _bracketedLeasesTableName } l INNER JOIN releaseLeasesCte cte ON { primaryKeyMatchingQuery }
966
966
WHERE l.{ LeasesTableChangeVersionColumnName } <= cte.{ SysChangeVersionColumnName } ;" ;
967
967
968
968
var command = new SqlCommand ( releaseLeasesQuery , connection , transaction ) ;
@@ -997,7 +997,7 @@ private SqlCommand BuildUpdateTablesPostInvocation(SqlConnection connection, Sql
997
997
SELECT @unprocessed_changes = COUNT(*) FROM (
998
998
SELECT c.{ SysChangeVersionColumnName }
999
999
FROM CHANGETABLE(CHANGES { this . _userTable . BracketQuotedFullName } , @current_last_sync_version) AS c
1000
- LEFT OUTER JOIN { this . _leasesTableName } AS l ON { leasesTableJoinCondition }
1000
+ LEFT OUTER JOIN { this . _bracketedLeasesTableName } AS l ON { leasesTableJoinCondition }
1001
1001
WHERE
1002
1002
c.{ SysChangeVersionColumnName } <= { newLastSyncVersion } AND
1003
1003
((l.{ LeasesTableChangeVersionColumnName } IS NULL OR
@@ -1011,7 +1011,7 @@ LEFT OUTER JOIN {this._leasesTableName} AS l ON {leasesTableJoinCondition}
1011
1011
SET LastSyncVersion = { newLastSyncVersion } , LastAccessTime = GETUTCDATE()
1012
1012
WHERE UserFunctionID = '{ this . _userFunctionId } ' AND UserTableID = { this . _userTableId } ;
1013
1013
1014
- DELETE FROM { this . _leasesTableName } WHERE { LeasesTableChangeVersionColumnName } <= { newLastSyncVersion } ;
1014
+ DELETE FROM { this . _bracketedLeasesTableName } WHERE { LeasesTableChangeVersionColumnName } <= { newLastSyncVersion } ;
1015
1015
END
1016
1016
" ;
1017
1017
0 commit comments