Stream triggers row functions#

bdr.trigger_get_row#

このファンクションは、識別子で指定されたトリガー行の内容をRECORD として結果ます。このファンクションは、不適切に呼び出された場合、つまり操作タイプTG_OPがDELETE のときにSOURCE_NEW で呼び出された場合、NULL を結果ます。

概要#

bdr.trigger_get_row(row_id text)

パラメーター#

  • row_id — 行の識別子。トリガータイプと操作に応じて、SOURCE_NEW 、SOURCE_OLD 、およびTARGET のいずれかです。個々のトリガータイプの説明を参照してください。

bdr.trigger_get_committs#

このファンクションは、識別子で指定されたトリガー行のコミットタイムスタンプを結果ます。行が固定されているか使用できないために使用できない場合、 NULL を返します。行識別子SOURCE_OLD の場合は、常にNULL を結果ます。

概要#

bdr.trigger_get_committs(row_id text)

パラメーター#

  • row_id — 行の識別子。トリガータイプと操作に応じて、SOURCE_NEW 、SOURCE_OLD 、およびTARGET のいずれかです。個々のトリガータイプの説明を参照してください。

bdr.trigger_get_xid#

このファンクションは、識別子で指定されたTARGET行のローカルトランザクションIDを結果ます。行が固定されているか使用できないために使用できない場合、 NULL を返します。 SOURCE_OLD およびSOURCE_NEW 行識別子の場合は、常にNULL を結果ます。

競合トリガーでのみ使用できます。

概要#

bdr.trigger_get_xid(row_id text)

パラメーター#

  • row_id — 行の識別子。トリガータイプと操作に応じて、SOURCE_NEW 、SOURCE_OLD 、およびTARGET のいずれかです。個々のトリガータイプの説明を参照してください。

bdr.trigger_get_type#

このファンクションは、現在のトリガータイプ、CONFLICT またはTRANSFORM を結果ます。ストリームトリガーの外部で呼び出された場合、nullを返します。

概要#

bdr.trigger_get_type()

bdr.trigger_get_conflict_type#

このファンクションは、競合トリガー内で呼び出された場合、現在の競合タイプを結果ます。それ以外の場合は、NULL を返します。

Types of Conflict を参照

このファンクションの考えられる戻り値については、

概要#

bdr.trigger_get_conflict_type()

bdr.trigger_get_origin_node_id#

このファンクションは、引数として渡されたトリガーrow_idの起点に対応するノードIDを結果ます。オリジンが有効でない場合、行がローカルに生成されたことを意味します、トリガー行引数に応じて、ソースまたはターゲットノードのノードIDを結果ます。行識別子SOURCE_OLD の場合は、常にNULL を結果ます。この機能を使用して、競合トリガーを定義して、常に信頼できるソースノードを優先できます。

概要#

bdr.trigger_get_origin_node_id(row_id text)

パラメーター#

  • row_id — 行の識別子。トリガータイプと操作に応じて、SOURCE_NEW 、SOURCE_OLD 、およびTARGET のいずれかです。個々のトリガータイプの説明を参照してください。

bdr.ri_fkey_on_del_trigger#

BEFOREトリガーとして呼び出される場合、このファンクションはFOREIGN KEY情報を使用してFK異常を回避します。

概要#

bdr.ri_fkey_on_del_trigger()