optimistic-concurrency

    1熱度

    2回答

    場景:我們有一個Dynamo DB表,支持使用版本號進行樂觀鎖定。兩個併發線程試圖將具有相同主鍵值的兩個不同條目保存到該表中。 問題:後期保存操作是否會引發ConditionalCheckFailedException?

    1熱度

    1回答

    正如我所瞭解的,有時稱爲「樂觀併發控制」的「樂觀鎖」實際上沒有鎖。一個典型的實現是CAS(比較和交換)。 所以我想知道爲什麼這仍然被稱爲「樂觀鎖定」?是否有任何歷史原因,因爲這個術語起源於數據庫世界?

    0熱度

    1回答

    我想使用樂觀併發與TransactionScope。以下是我想出迄今代碼: var options = new TransactionOptions {IsolationLevel = IsolationLevel.ReadCommitted}; using (var scope = new TransactionScope(TransactionScopeOption.Required, op

    4熱度

    1回答

    使用.NET MongoDB API(MongoDB.Driver),實現開放式併發控制的推薦方法是什麼?例如,是否有與SQL Server的ROWVERSION/TIMESTAMP類似的東西,例如,每次文檔更改時自動更新的屬性?或者是否有觸發機制?或者其他任何機制?

    1熱度

    1回答

    嗨! 我有Entity Framework Core 2.xx ORM解決方案,並且模型中的所有對象都創建了(UTC創建時間的時間戳 - 從未更新)和修改字段(實體更新時總是更新)。 我爲這個非常常見的問題閱讀了一些建議實現,它看起來像框架還不能很好地支持它,因爲沒有好的方法來做到這一點,而沒有爲每個實體分別定義映射。 我發現的一個解決方法是定義一個非映射超類,然後手動生成值生成步驟。因爲數據庫U

    2熱度

    1回答

    我遇到了Oracle和EF6樂觀併發問題。 我有一個更新觸發器,其遞增row_version領域,並已註冊了該領域的ConcurrencyToken併爲DatabaseGenerated(計算機) 我看到的問題是,更新查詢具有1的行數時,查詢實際沒有更新的行(row_version改爲帶外) 我現在放在一起再現,並在GitHub上更新一次...... [Column("ROW_VERSION"),

    1熱度

    1回答

    我正在將SQL Server數據庫模式遷移到MySQL。 SQL Server上的某些表有一個rowversion類型的列。這是一個整數值,該值在行被首次插入時設置,然後每次更新行的任何列時再次設置。這個數字只是增加了。 我們利用這個來檢查併發問題。因此,當插入到服務器時,我們可以檢查傳入值是否與當前存儲值不同。如果是這樣,那麼該行自從導致該插入的讀取以來已被更新。然後,我們可以拒絕更新,因爲它基

    0熱度

    1回答

    我正試圖寫入我的數據庫中的兩個表中的一個函數,該函數使用列表作爲上一頁中的參數。我調用db來檢索purchase_order_no,因爲該列是在條目上生成的IDENTITY主鍵。 型號: PURCHASE_ORDER [Key] [Column(Order = 0)] [DatabaseGenerated(DatabaseGeneratedOption.None)]

    0熱度

    1回答

    我有一個長表是一個GroupCode長列。我可以有多組產品,因此爲了獲得一個組的所有產品,我只需要獲得與GroupCode相同的所有產品。 我可以將產品從一個組更改爲另一個組,如果我從一個組更改產品,我希望組的所有產品更改爲新組。 如果我用樂觀併發,它會發生這樣的: 一個用戶想從一組改變產品,所以他得到所有的產品相同groupCode。將新的groupCode設置爲所有這些產品。 第二位用戶將新產

    2熱度

    1回答

    我正在使用實體框架6和PostgreSQL。 我有一個實體,我想要防止併發問題,下面this documentation我添加了RowVersion屬性[Timestamp]屬性,但是在保存對實體的更改後,RowVersion列的值在數據庫中保持不變。 [Timestamp] public byte[] RowVersion { get; set; } 我錯過了什麼或有其他的方式來處