関数特性
言語: PLPGSQL
戻り値: bigint
pa_server から pa_client への経路を削除する DROP_PATH 事象を生成します。declare p_pa_server alias for $1; p_pa_client alias for $2; v_row record; begin -- ---- -- 中枢構成にロックの取得 -- ---- lock table sl_config_lock; -- ---- -- 既存の購読が存在しません。 -- 自動購読解除は非常に危険と考えられます。 -- ---- for v_row in select sub_set, sub_provider, sub_receiver from sl_subscribe where sub_provider = p_pa_server and sub_receiver = p_pa_client loop raise exception 'Slony-I: Path cannot be dropped, subscription of set % needs it', v_row.sub_set; end loop; -- ---- -- この経路に依存する全ての sl_listen エントリを削除します。 -- ---- for v_row in select li_origin, li_provider, li_receiver from sl_listen where li_provider = p_pa_server and li_receiver = p_pa_client loop perform dropListen( v_row.li_origin, v_row.li_provider, v_row.li_receiver); end loop; -- ---- -- ここで経路を削除し事象を作成します。 -- ---- perform dropPath_int(p_pa_server, p_pa_client); -- Rewrite sl_listen table perform RebuildListenEntries(); return createEvent ('_schemadoc', 'DROP_PATH', p_pa_server, p_pa_client); end;