View Issue Details

IDProjectCategoryView StatusLast Update
0004932SymmetricDSBugpublic2021-03-31 13:00
Reporterpmarzullo Assigned Topmarzullo  
Prioritynormal 
Status resolvedResolutionfixed 
Product Version3.11.13 
Target Version3.11.14Fixed in Version3.11.14 
Summary0004932: Transforms break deletes when primary key columns are transformed because of issue 4552
DescriptionMany transforms that return a String value break deletes when primary key values are transformed.
The attempt to fix an issue on 4552, where primary key columns were being transformed and put into the OLD value when returned but the trigger is configured to not catch old data, failed.
The failure occurred because when the trigger was configured to capture old data, then the non-primary key columns were being put into the OLD data but the primary key columns were being put into the NEW data, which causes the inability to execute conflict resolution when USE_CHANGED_DATA is set.

So, instead of just putting non-primary key columns into the old data, the logic should be that if the event type is a DELETE, and old data is captured by the trigger, then put the return value in the OLD data, otherwise put it in the NEW data.
Steps To Reproduce1. Set up synching for a table with a primary key column and a non-primary key column.
2. Set up a transform (an ISingleNewAndOldValueColumnTransform type, like BshColumnTransform) for both columns. You can just return the original value in the transform.
3. Synch an insert, then a delete of a row.
4. The delete should not error out, but it should fail to execute the delete at the target.
Tagstransformation

Relationships

related to 0004552 closedpmarzullo Transforms break deletes when transforming primary key column and not capturing old data as specified in trigger 

Activities

pmarzullo

2021-03-31 12:55

developer   ~0001908

Also pulled into 3.12.9

Related Changesets

SymmetricDS: 3.11 4e73dcb6

2021-03-31 12:48:14

pmarzullo

Details Diff
0004932: Transforms break deletes when primary key columns are
transformed because of issue 4552
Affected Issues
0004552, 0004932
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/io/data/transform/BshColumnTransform.java Diff File
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/io/data/transform/LookupColumnTransform.java Diff File
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/io/data/transform/ParameterColumnTransform.java Diff File
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/io/data/transform/VariableColumnTransform.java Diff File
mod - symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/transform/BinaryLeftColumnTransform.java Diff File
mod - symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/transform/ClarionDateTimeColumnTransform.java Diff File
mod - symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/transform/ConstantColumnTransform.java Diff File
mod - symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/transform/IsNullTransform.java Diff File
mod - symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/transform/LeftColumnTransform.java Diff File
mod - symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/transform/MathColumnTransform.java Diff File
mod - symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/transform/SubstrColumnTransform.java Diff File
mod - symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/transform/ValueMapColumnTransform.java Diff File

SymmetricDS: 3.12 7f44877c

2021-03-31 12:48:14

pmarzullo

Details Diff
0004932: Transforms break deletes when primary key columns are
transformed because of issue 4552
Affected Issues
0004552, 0004932
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/io/data/transform/BshColumnTransform.java Diff File
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/io/data/transform/LookupColumnTransform.java Diff File
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/io/data/transform/ParameterColumnTransform.java Diff File
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/io/data/transform/VariableColumnTransform.java Diff File
mod - symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/transform/BinaryLeftColumnTransform.java Diff File
mod - symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/transform/ClarionDateTimeColumnTransform.java Diff File
mod - symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/transform/ConstantColumnTransform.java Diff File
mod - symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/transform/IsNullTransform.java Diff File
mod - symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/transform/LeftColumnTransform.java Diff File
mod - symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/transform/MathColumnTransform.java Diff File
mod - symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/transform/SubstrColumnTransform.java Diff File
mod - symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/transform/ValueMapColumnTransform.java Diff File

Issue History

Date Modified Username Field Change
2021-03-31 12:46 pmarzullo New Issue
2021-03-31 12:46 pmarzullo Status new => assigned
2021-03-31 12:46 pmarzullo Assigned To => pmarzullo
2021-03-31 12:46 pmarzullo Tag Attached: transformation
2021-03-31 12:46 pmarzullo Relationship added related to 0004552
2021-03-31 12:55 pmarzullo Status assigned => resolved
2021-03-31 12:55 pmarzullo Resolution open => fixed
2021-03-31 12:55 pmarzullo Fixed in Version => 3.11.14
2021-03-31 12:55 pmarzullo Note Added: 0001908
2021-03-31 13:00 pmarzullo Changeset attached => SymmetricDS 3.11 4e73dcb6
2021-03-31 13:00 pmarzullo Changeset attached => SymmetricDS 3.12 7f44877c