View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0005840 | SymmetricDS | Improvement | public | 2023-05-17 12:07 | 2023-10-04 13:09 |
Reporter | elong | Assigned To | elong | ||
Priority | normal | ||||
Status | closed | Resolution | fixed | ||
Product Version | 3.15.0 | ||||
Target Version | 3.15.0 | Fixed in Version | 3.15.0 | ||
Summary | 0005840: Purge should use "exists" clause instead of "in" clause for performance | ||||
Description | Modify purge service to use "exists" clause for deletes that correlate a sub-query with other tables. The "exists" clause has better performance when many rows are involved. The purge service currently uses "in" clauses to join other tables, which is compatible with most databases. Add a canDeleteUsingExists property to DatabaseInfo that can be set to false for the old behavior. MySQL 5.7 and earlier needs to use "in" clauses for deletes. | ||||
Tags | performance, purge | ||||
SymmetricDS: 3.15 d8f5efc1 2023-05-17 12:14:11 Details Diff |
0005840: Purge should use "exists" clause instead of "in" clause for performance |
Affected Issues 0005840 |
|
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/service/impl/PurgeService.java | Diff File | ||
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/service/impl/PurgeServiceSqlMap.java | Diff File | ||
mod - symmetric-db/src/main/java/org/jumpmind/db/platform/DatabaseInfo.java | Diff File | ||
mod - symmetric-jdbc/src/main/java/org/jumpmind/db/platform/mysql/MySqlDatabasePlatform.java | Diff File | ||
add - symmetric-util/src/main/java/org/jumpmind/util/VersionUtil.java | Diff File |
Date Modified | Username | Field | Change |
---|---|---|---|
2023-05-17 12:07 | elong | New Issue | |
2023-05-17 12:07 | elong | Status | new => assigned |
2023-05-17 12:07 | elong | Assigned To | => elong |
2023-05-17 12:07 | elong | Tag Attached: purge | |
2023-05-17 12:11 | elong | Summary | Purge can use "exists" clause instead "in" clause for performance => Purge should use "exists" clause instead of "in" clause for performance |
2023-05-17 12:27 | elong | Status | assigned => resolved |
2023-05-17 12:27 | elong | Resolution | open => fixed |
2023-05-17 12:27 | elong | Fixed in Version | => 3.15.0 |
2023-10-01 23:46 | admin | Status | resolved => closed |
2023-10-03 23:00 | admin | Changeset attached | => SymmetricDS 3.15 d8f5efc1 |
2023-10-04 13:09 | elong | Tag Attached: performance |