View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0006532 | SymmetricDS | Bug | public | 2024-07-15 20:02 | 2024-07-18 13:07 |
Reporter | pmarzullo | Assigned To | pmarzullo | ||
Priority | normal | ||||
Status | closed | Resolution | no change required | ||
Product Version | 3.15.7 | ||||
Summary | 0006532: Conflict resolution needs to set source node ID when executing conflict resolution for a Postgres trigger based node | ||||
Description | When conflict resolution is executed for a node that is set up to use Postgres trigger based, it needs to call the trigger disabled functions before changing any data when resolving. | ||||
Tags | dialect: postgresql | ||||
|
The code in AbstractDatabaseWriter.write() seems to deal with the conflict resolution if the isRequiresSavePointsInTransaction is set to true and the conflict resolver is created, then skips the loading of the current batch. So the connection that has been setup to use for the loading is being used by the conflict resolver, which has the correct settings for the triggers. Does that sound right? |
|
Sounds right. In DefaultDatabaseWriterConflictResolver.doInTransaction(), if it is savepoints and an aborted transaction, it gets a new connection for resolving conflicts and it correctly sets the session variables to disable triggers and set the source node ID. |
Date Modified | Username | Field | Change |
---|---|---|---|
2024-07-15 20:02 | pmarzullo | New Issue | |
2024-07-15 20:02 | pmarzullo | Status | new => assigned |
2024-07-15 20:02 | pmarzullo | Assigned To | => pmarzullo |
2024-07-15 20:02 | pmarzullo | Tag Attached: dialect: postgresql | |
2024-07-15 20:03 | pmarzullo | Relationship added | related to 0006531 |
2024-07-16 20:25 | pmarzullo | Note Added: 0002480 | |
2024-07-17 17:23 | elong | Note Added: 0002481 | |
2024-07-18 13:07 | pmarzullo | Target Version | 3.15.8 => |
2024-07-18 13:07 | pmarzullo | Status | assigned => closed |
2024-07-18 13:07 | pmarzullo | Resolution | open => no change required |