Skip to content

New setting UpdateOverwriteMode : defines how UPDATE should handle the case when a record was updated by trigger.#8957

Open
hvlad wants to merge 1 commit intov5.0-releasefrom
work/UpdateOverwriteMode
Open

New setting UpdateOverwriteMode : defines how UPDATE should handle the case when a record was updated by trigger.#8957
hvlad wants to merge 1 commit intov5.0-releasefrom
work/UpdateOverwriteMode

Conversation

@hvlad
Copy link
Member

@hvlad hvlad commented Mar 26, 2026

After #8538 there was long private discussion with customer (big sponsor of Firebird).
The root of the issue is the way Firebird implements per-row triggers - it is far from SQL standard in regards of consistency.
There is well-known historical reasons for it and I don't want to repeat it here.
By my opinion, the best way to fix the issue would be to re-implement per-row triggers according to SQL standard - to fire before and after whole statement processing. But this is not quick nor easy task.
Finally this patch was implemented and customer uses it to prepare own migration to v5.
Now it is time to decide if it could be accepted into codebase.

…e case when a record was updated by trigger.
@hvlad hvlad self-assigned this Mar 26, 2026
@AlexPeshkoff
Copy link
Member

AlexPeshkoff commented Mar 26, 2026 via email

@hvlad
Copy link
Member Author

hvlad commented Mar 26, 2026

Vlad, am I missing something or this patch works only with system triggers that implement cascade FK?

The routine, I modified in the patch, was initially used to workaroud issue with self-referenced FK's

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants