MCPcopy Create free account
hub / github.com/apache/cloudberry / view_has_instead_trigger

Function view_has_instead_trigger

src/backend/rewrite/rewriteHandler.c:2540–2564  ·  view source on GitHub ↗

* view_has_instead_trigger - does view have an INSTEAD OF trigger for event? * * If it does, we don't want to treat it as auto-updatable. This test can't * be folded into view_query_is_auto_updatable because it's not an error * condition. */

Source from the content-addressed store, hash-verified

2538 * condition.
2539 */
2540static bool
2541view_has_instead_trigger(Relation view, CmdType event)
2542{
2543 TriggerDesc *trigDesc = view->trigdesc;
2544
2545 switch (event)
2546 {
2547 case CMD_INSERT:
2548 if (trigDesc && trigDesc->trig_insert_instead_row)
2549 return true;
2550 break;
2551 case CMD_UPDATE:
2552 if (trigDesc && trigDesc->trig_update_instead_row)
2553 return true;
2554 break;
2555 case CMD_DELETE:
2556 if (trigDesc && trigDesc->trig_delete_instead_row)
2557 return true;
2558 break;
2559 default:
2560 elog(ERROR, "unrecognized CmdType: %d", (int) event);
2561 break;
2562 }
2563 return false;
2564}
2565
2566
2567/*

Callers 2

rewriteValuesRTEFunction · 0.85
RewriteQueryFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected