-
Notifications
You must be signed in to change notification settings - Fork 570
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[C#] Fixes for LockTable and others (#783)
* Locking fixes - CompletePending* must also check to lock non-auxiliary records - Ephemeral locking must look for lock evictions as well - InternalLock must check for SpinWaitUntilRecordIsClosed - Replace oneMiss handling in InternalLock - EphemeralSUnlock must follow unlock failures - LockTable should have its own bufferPool - Ensure OnPagesClosed does eviction scans in address order * More locking fixes: - Fix missing unlock of a Tombstoned record in InternalContinuePendingRead - Add more Asserts where ManualLocking requires a locked record - Update and remove obsolete comments * - Remove key-present optimization for SpinWaitUntilRecordIsClosed - Better checking on following records transferred from LockTable in InternalLock(unlock) - Add some additional comments * Fix hash bucket overflow pointer during recovery Fix debug assert logic * fix sample * Fix calls to TraceBack to use returned addresses correctly * Fix min index size, to allow checkpointing via direct file system call (512 byte sector size). * - Tighten up tentative LockTable lock acquisition - Change more RETRY_NOW to RETRY_LATER - Fix bug in TryLockExclusive; return value after draining readers - CompleteTwoPhaseAssert fix to not steal LockTable records if recSrc.HasInMemorySrc - Add comments and asserts Co-authored-by: Badrish Chandramouli <[email protected]>
- Loading branch information
Showing
25 changed files
with
366 additions
and
213 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.