View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0005210 | SymmetricDS | Improvement | public | 2022-02-03 20:53 | 2022-08-02 14:46 |
Reporter | elong | Assigned To | elong | ||
Priority | normal | ||||
Status | closed | Resolution | fixed | ||
Product Version | 3.14.0 | ||||
Target Version | 3.14.0 | Fixed in Version | 3.14.0 | ||
Summary | 0005210: Routing reader may use multiple queries for a large number of gaps | ||||
Description | Modify routing reader so it may use multiple queries on sym_data, looking for data in all the gaps that have accumulated. When multiple channels are involved, a disabled channel or a busy system can cause a large number of gaps. Control this new behavior with parameter routing.data.reader.use.multiple.queries and default it to true. Background: Currently, the routing.max.gaps.to.qualify.in.sql is set to 100, which is the most gaps that can be qualified in the routing query. For the current method of reading, when max gaps is reached, it merges the first and last of the remaining gaps to bring back more data than needed, and then filters through it in memory by matching against gaps. This method wastes time reading data it doesn't need, and the merged gap in the query may be so large that the index isn't used. | ||||
Tags | performance, routing | ||||
SymmetricDS: 3.14 c2ec7206 2022-02-03 20:58:27 Details Diff |
0005210: Routing reader may use multiple queries for a large number of gaps |
Affected Issues 0005210 |
|
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/common/ParameterConstants.java | Diff File | ||
add - symmetric-core/src/main/java/org/jumpmind/symmetric/route/AbstractDataGapRouteCursor.java | Diff File | ||
add - symmetric-core/src/main/java/org/jumpmind/symmetric/route/DataGapRouteCursor.java | Diff File | ||
add - symmetric-core/src/main/java/org/jumpmind/symmetric/route/DataGapRouteMultiCursor.java | Diff File | ||
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/route/DataGapRouteReader.java | Diff File | ||
add - symmetric-core/src/main/java/org/jumpmind/symmetric/route/IDataGapRouteCursor.java | Diff File | ||
mod - symmetric-core/src/main/resources/symmetric-default.properties | Diff File | ||
add - symmetric-core/src/test/java/org/jumpmind/symmetric/route/DataGapRouteCursorTest.java | Diff File | ||
mod - symmetric-core/src/test/java/org/jumpmind/symmetric/route/DataGapRouteReaderTest.java | Diff File | ||
add - symmetric-core/src/test/java/org/jumpmind/symmetric/route/ListReadCursor.java | Diff File |
Date Modified | Username | Field | Change |
---|---|---|---|
2022-02-03 20:53 | elong | New Issue | |
2022-02-03 20:53 | elong | Status | new => assigned |
2022-02-03 20:53 | elong | Assigned To | => elong |
2022-02-03 20:53 | elong | Tag Attached: performance | |
2022-02-03 20:53 | elong | Tag Attached: routing | |
2022-02-03 20:59 | elong | Status | assigned => resolved |
2022-02-03 20:59 | elong | Resolution | open => fixed |
2022-02-03 20:59 | elong | Fixed in Version | => 3.14.0 |
2022-02-03 21:00 | admin | Changeset attached | => SymmetricDS 3.14 c2ec7206 |
2022-07-27 18:59 | admin | Status | resolved => closed |
2022-08-02 14:46 | elong | Relationship added | related to 0003941 |