View Issue Details

IDProjectCategoryView StatusLast Update
0006219SymmetricDSImprovementpublic2024-06-27 14:23
Reporteremiller Assigned Topmarzullo  
Prioritynormal 
Status closedResolutionfixed 
Product Version3.15.0 
Target Version3.15.8Fixed in Version3.15.8 
Summary0006219: Make Sybase ASE triggers use an "insert ... select" statement instead of a cursor
DescriptionCurrently, all 3 Sybase ASE triggers use a cursor to insert into sym_data. While Sybase ASE's triggers are statement-level rather than row-level, it is possible to select all of the rows from the virtual tables (e.g. inserted) and insert them into sym_data using an "insert ... select" statement. It would be better to use the "insert ... select" approach because cursors perform worse and can cause unnecessary locks.
Tagsdialect: sybase, trigger

Activities

pmarzullo

2024-06-27 13:27

developer   ~0002471

Patch provided here:
https://downloads.jumpmind.com/symmetricds/patches/3.15/patch-0006219.jar

pmarzullo

2024-06-27 13:30

developer   ~0002472

There is one case that the cursor could not be removed.
That is when the parameter trigger.use.insert.delete.for.primary.key.changes is set to false. This parameter defaults to true.

Related Changesets

SymmetricDS: 3.15 c4170d65

2024-06-27 13:22:50

pmarzullo

Details Diff
0006219: Make Sybase ASE triggers use an "insert ... select" statement
instead of a cursor
Affected Issues
0006219
mod - symmetric-client/src/main/java/org/jumpmind/symmetric/db/ase/AseTriggerTemplate.java Diff File

Issue History

Date Modified Username Field Change
2024-01-31 16:59 emiller New Issue
2024-01-31 16:59 emiller Tag Attached: dialect: sybase
2024-01-31 16:59 emiller Tag Attached: trigger
2024-06-25 14:33 pmarzullo Assigned To => pmarzullo
2024-06-25 14:33 pmarzullo Status new => assigned
2024-06-27 13:27 pmarzullo Status assigned => resolved
2024-06-27 13:27 pmarzullo Resolution open => fixed
2024-06-27 13:27 pmarzullo Fixed in Version => 3.15.8
2024-06-27 13:27 pmarzullo Note Added: 0002471
2024-06-27 13:30 pmarzullo Note Added: 0002472
2024-06-27 14:00 pmarzullo Changeset attached => SymmetricDS 3.15 c4170d65
2024-06-27 14:23 elong Target Version 3.16.0 => 3.15.8
2024-08-16 17:45 admin Status resolved => closed