View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0005819 | SymmetricDS Pro | Improvement | public | 2023-05-02 16:23 | 2023-05-02 19:54 |
Reporter | pmarzullo | Assigned To | pmarzullo | ||
Priority | normal | ||||
Status | closed | Resolution | fixed | ||
Product Version | 3.14.6 | ||||
Target Version | 3.14.7 | Fixed in Version | 3.14.7 | ||
Summary | 0005819: OutgoingBatchService loadPendingBatches should use read uncommitted to minimize deadlocking possibilities | ||||
Description | During a pull with multiple queues defined, multiple synchronizations for the same node are attempted in parallel when loading pending batches. Each thread queries the same set of outgoing batches partitioned by channel id or queue. As each thread queries these records, shared or read locks are put on the records. Eventually some of the threads will begin to update the outgoing batch status values to QY, SE, LD, and eventually OK or ER. With multiple threads using read/shared locks and updates being made to the outgoing batch records, there is a possibility of a deadlock to occur, especially when there are many queues defined. The load pending batches should be changed to use read uncommitted isolation, which means use the sqlTemplateDirty object instead of the sqlTemplate object when querying the pending batches. | ||||
Tags | extract | ||||
SymmetricDS: 3.14 3106b741 2023-05-02 16:36:25 Details Diff |
0005819: OutgoingBatchService loadPendingBatches should use read uncommitted to minimize deadlocking possibilities |
Affected Issues 0005819 |
|
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/service/impl/OutgoingBatchService.java | Diff File |
Date Modified | Username | Field | Change |
---|---|---|---|
2023-05-02 16:23 | pmarzullo | New Issue | |
2023-05-02 16:23 | pmarzullo | Status | new => assigned |
2023-05-02 16:23 | pmarzullo | Assigned To | => pmarzullo |
2023-05-02 16:23 | pmarzullo | Tag Attached: extract | |
2023-05-02 17:00 | pmarzullo | Changeset attached | => SymmetricDS 3.14 3106b741 |
2023-05-02 19:54 | pmarzullo | Status | assigned => resolved |
2023-05-02 19:54 | pmarzullo | Resolution | open => fixed |
2023-05-02 19:54 | pmarzullo | Fixed in Version | => 3.14.7 |
2023-05-12 19:49 | admin | Status | resolved => closed |