|
| 1 | + |
| 2 | +create or replace function pgpro_redefinition._default_schema( |
| 3 | +) returns text as |
| 4 | +$body$ |
| 5 | + select 'pgpro_redefinition'; |
| 6 | +$body$ language sql immutable; |
| 7 | + |
| 8 | +create or replace function pgpro_redefinition._default_jobs_apply_count( |
| 9 | +) returns integer as |
| 10 | +$body$ |
| 11 | + select 5; |
| 12 | +$body$ language sql immutable; |
| 13 | + |
| 14 | +create or replace function pgpro_redefinition._default_jobs_redef_count( |
| 15 | +) returns integer as |
| 16 | +$body$ |
| 17 | + select 5; |
| 18 | +$body$ language sql immutable; |
| 19 | + |
| 20 | +create or replace function pgpro_redefinition._default_lsn_partition_multiplier( |
| 21 | +) returns integer as |
| 22 | +$body$ |
| 23 | + select 1; |
| 24 | +$body$ language sql immutable; |
| 25 | + |
| 26 | +create or replace function pgpro_redefinition._default_create_next_sub_part( |
| 27 | +) returns integer as |
| 28 | +$body$ |
| 29 | + select 3; |
| 30 | +$body$ language sql immutable; |
| 31 | + |
| 32 | +create or replace function pgpro_redefinition._default_lsn_step( |
| 33 | +) returns bigint as |
| 34 | +$body$ |
| 35 | + select 0x5fffffff; |
| 36 | +$body$ language sql immutable; |
| 37 | + |
| 38 | +create type pgpro_redefinition.commit_type as enum ( |
| 39 | + 'commit' |
| 40 | +, 'autonomous' |
| 41 | +); |
| 42 | + |
| 43 | +create or replace function pgpro_redefinition._commit_type_commit( |
| 44 | +) returns pgpro_redefinition.commit_type as |
| 45 | +$body$ |
| 46 | + select 'commit'::pgpro_redefinition.commit_type; |
| 47 | +$body$ language sql immutable; |
| 48 | + |
| 49 | +create or replace function pgpro_redefinition._commit_type_autonomous( |
| 50 | +) returns pgpro_redefinition.commit_type as |
| 51 | +$body$ |
| 52 | + select 'commit'::pgpro_redefinition.commit_type; |
| 53 | +$body$ language sql; |
| 54 | + |
| 55 | +create type pgpro_redefinition.type as enum ( |
| 56 | + 'online' -- онлайн |
| 57 | +, 'deferred' -- отложенная |
| 58 | +); |
| 59 | + |
| 60 | +create or replace function pgpro_redefinition._type_online( |
| 61 | +) returns pgpro_redefinition.type as |
| 62 | +$body$ |
| 63 | + select 'online'::pgpro_redefinition.type; |
| 64 | +$body$ language sql immutable; |
| 65 | + |
| 66 | +create or replace function pgpro_redefinition._type_deferred( |
| 67 | +) returns pgpro_redefinition.type as |
| 68 | +$body$ |
| 69 | + select 'deferred'::pgpro_redefinition.type; |
| 70 | +$body$ language sql immutable; |
| 71 | + |
| 72 | +create type pgpro_redefinition.kind as enum ( |
| 73 | + 'redef' -- таблица приемник должна существовать |
| 74 | +, 'any' -- любое действие с данными таблицы, можно копировать, можно разбить на 2 и более таблиц. Таблица приемник не устанавливается |
| 75 | +); |
| 76 | + |
| 77 | +create or replace function pgpro_redefinition._kind_redef( |
| 78 | +) returns pgpro_redefinition.kind as |
| 79 | +$body$ |
| 80 | + select 'redef'::pgpro_redefinition.kind; |
| 81 | +$body$ language sql immutable; |
| 82 | + |
| 83 | +create or replace function pgpro_redefinition._kind_any( |
| 84 | +) returns pgpro_redefinition.kind as |
| 85 | +$body$ |
| 86 | + select 'any'::pgpro_redefinition.kind; |
| 87 | +$body$ language sql immutable; |
| 88 | + |
| 89 | +create type pgpro_redefinition.job_type as enum ( |
| 90 | + 'redef_data' |
| 91 | +, 'apply_data' |
| 92 | +); |
| 93 | + |
| 94 | +create or replace function pgpro_redefinition._job_type_redef_data( |
| 95 | +) returns pgpro_redefinition.job_type as |
| 96 | +$body$ |
| 97 | + select 'redef_data'::pgpro_redefinition.job_type; |
| 98 | +$body$ language sql immutable; |
| 99 | + |
| 100 | +create or replace function pgpro_redefinition._job_type_apply_data( |
| 101 | +) returns pgpro_redefinition.job_type as |
| 102 | +$body$ |
| 103 | + select 'apply_data'::pgpro_redefinition.job_type; |
| 104 | +$body$ language sql immutable; |
| 105 | + |
| 106 | +create type pgpro_redefinition.flow_type as enum ( |
| 107 | + 'flow_type_separate' |
| 108 | +, 'flow_type_general' |
| 109 | +); |
| 110 | + |
| 111 | +create or replace function pgpro_redefinition._flow_type_separate( |
| 112 | +) returns pgpro_redefinition.flow_type as |
| 113 | +$body$ |
| 114 | + select 'flow_type_separate'::pgpro_redefinition.flow_type; |
| 115 | +$body$ language sql immutable; |
| 116 | + |
| 117 | +create or replace function pgpro_redefinition._flow_type_general( |
| 118 | +) returns pgpro_redefinition.flow_type as |
| 119 | +$body$ |
| 120 | + select 'flow_type_general'::pgpro_redefinition.flow_type; |
| 121 | +$body$ language sql immutable; |
| 122 | + |
| 123 | +create or replace function pgpro_redefinition._default_on_error_stop( |
| 124 | +) returns boolean as |
| 125 | +$body$ |
| 126 | + select true; |
| 127 | +$body$ language sql immutable; |
| 128 | + |
| 129 | +create or replace function pgpro_redefinition._param_service_job_id( |
| 130 | +) returns text as |
| 131 | +$body$ |
| 132 | + select 'service_job_id'; |
| 133 | +$body$ language sql immutable; |
| 134 | + |
| 135 | +create or replace function pgpro_redefinition._param_service_resubmit_interval_sec( |
| 136 | +) returns integer as |
| 137 | +$body$ |
| 138 | + select 60; |
| 139 | +$body$ language sql immutable; |
| 140 | + |
| 141 | +create or replace function pgpro_redefinition._prepared_statement_name_template( |
| 142 | +) returns text as |
| 143 | +$body$ |
| 144 | + select 'redef_query_%1$s'; |
| 145 | +$body$ language sql immutable; |
0 commit comments