summaryrefslogtreecommitdiff
path: root/src/exchangedb/0002-legitimization_processes.sql
diff options
context:
space:
mode:
Diffstat (limited to 'src/exchangedb/0002-legitimization_processes.sql')
-rw-r--r--src/exchangedb/0002-legitimization_processes.sql34
1 files changed, 27 insertions, 7 deletions
diff --git a/src/exchangedb/0002-legitimization_processes.sql b/src/exchangedb/0002-legitimization_processes.sql
index 4544a02ea..3212b1c06 100644
--- a/src/exchangedb/0002-legitimization_processes.sql
+++ b/src/exchangedb/0002-legitimization_processes.sql
@@ -15,7 +15,7 @@
--
CREATE FUNCTION create_table_legitimization_processes(
- IN shard_suffix VARCHAR DEFAULT NULL
+ IN shard_suffix TEXT DEFAULT NULL
)
RETURNS VOID
LANGUAGE plpgsql
@@ -25,11 +25,13 @@ BEGIN
'CREATE TABLE %I'
'(legitimization_process_serial_id BIGINT GENERATED BY DEFAULT AS IDENTITY'
',h_payto BYTEA NOT NULL CHECK (LENGTH(h_payto)=32)'
+ ',start_time INT8 NOT NULL'
',expiration_time INT8 NOT NULL DEFAULT (0)'
- ',provider_section VARCHAR NOT NULL'
- ',provider_user_id VARCHAR DEFAULT NULL'
- ',provider_legitimization_id VARCHAR DEFAULT NULL'
- ',UNIQUE (h_payto, provider_section)'
+ ',provider_section TEXT NOT NULL'
+ ',provider_user_id TEXT DEFAULT NULL'
+ ',provider_legitimization_id TEXT DEFAULT NULL'
+ ',redirect_url TEXT DEFAULT NULL'
+ ',finished BOOLEAN DEFAULT (FALSE)'
') %s ;'
,'legitimization_processes'
,'PARTITION BY HASH (h_payto)'
@@ -53,6 +55,18 @@ BEGIN
,shard_suffix
);
PERFORM comment_partitioned_column(
+ 'time when the KYC check was initiated, useful for garbage collection'
+ ,'expiration_time'
+ ,'legitimization_processes'
+ ,shard_suffix
+ );
+ PERFORM comment_partitioned_column(
+ 'URL where the user should go to begin the KYC process'
+ ,'redirect_url'
+ ,'legitimization_processes'
+ ,shard_suffix
+ );
+ PERFORM comment_partitioned_column(
'in the future if the respective KYC check was passed successfully'
,'expiration_time'
,'legitimization_processes'
@@ -76,19 +90,25 @@ BEGIN
,'legitimization_processes'
,shard_suffix
);
+ PERFORM comment_partitioned_column(
+ 'Set to TRUE when the specific legitimization process is finished.'
+ ,'finished'
+ ,'legitimization_processes'
+ ,shard_suffix
+ );
END
$$;
-- We need a separate function for this, as we call create_table only once but need to add
-- those constraints to each partition which gets created
CREATE FUNCTION constrain_table_legitimization_processes(
- IN partition_suffix VARCHAR
+ IN partition_suffix TEXT
)
RETURNS void
LANGUAGE plpgsql
AS $$
DECLARE
- partition_name VARCHAR;
+ partition_name TEXT;
BEGIN
partition_name = concat_ws('_', 'legitimization_processes', partition_suffix);