summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/exchangedb/0002-age_withdraw.sql9
-rw-r--r--src/exchangedb/0002-aml_history.sql4
-rw-r--r--src/exchangedb/0002-aml_status.sql4
-rw-r--r--src/exchangedb/0002-kyc_attributes.sql10
-rw-r--r--src/exchangedb/0002-purse_actions.sql4
-rw-r--r--src/exchangedb/0002-purse_deletion.sql6
-rw-r--r--src/exchangedb/drop.sql2
-rw-r--r--src/exchangedb/exchange-0001.sql80
-rw-r--r--src/exchangedb/exchange-0002.sql.in4
-rw-r--r--src/exchangedb/procedures.sql.in1
10 files changed, 19 insertions, 105 deletions
diff --git a/src/exchangedb/0002-age_withdraw.sql b/src/exchangedb/0002-age_withdraw.sql
index 05c0df272..e3bd71a63 100644
--- a/src/exchangedb/0002-age_withdraw.sql
+++ b/src/exchangedb/0002-age_withdraw.sql
@@ -138,7 +138,7 @@ BEGIN
'ALTER TABLE ' || table_name ||
' ADD CONSTRAINT ' || table_name || '_foreign_reserve_pub'
' FOREIGN KEY (reserve_pub)'
- ' REFERENCES reserves(reserve_pub);' -- ON DELETE CASCADE;'
+ ' REFERENCES reserves(reserve_pub) ON DELETE CASCADE;'
);
END
$$;
@@ -151,6 +151,7 @@ INSERT INTO exchange_tables
,partitioned
,by_range)
VALUES
- ('age_withdraw', 'exchange-0003', 'create', TRUE ,FALSE),
- ('age_withdraw', 'exchange-0003', 'constrain',TRUE ,FALSE),
- ('age_withdraw', 'exchange-0003', 'foreign', TRUE ,FALSE);
+ ('age_withdraw', 'exchange-0002', 'create', TRUE ,FALSE),
+ ('age_withdraw', 'exchange-0002', 'constrain',TRUE ,FALSE),
+ ('age_withdraw', 'exchange-0002', 'foreign', TRUE ,FALSE);
+
diff --git a/src/exchangedb/0002-aml_history.sql b/src/exchangedb/0002-aml_history.sql
index e57a2313f..1768b97d4 100644
--- a/src/exchangedb/0002-aml_history.sql
+++ b/src/exchangedb/0002-aml_history.sql
@@ -137,12 +137,12 @@ INSERT INTO exchange_tables
,by_range)
VALUES
('aml_history'
- ,'exchange-0003'
+ ,'exchange-0002'
,'create'
,TRUE
,FALSE),
('aml_history'
- ,'exchange-0003'
+ ,'exchange-0002'
,'constrain'
,TRUE
,FALSE);
diff --git a/src/exchangedb/0002-aml_status.sql b/src/exchangedb/0002-aml_status.sql
index ee61cc391..f7b7e83b1 100644
--- a/src/exchangedb/0002-aml_status.sql
+++ b/src/exchangedb/0002-aml_status.sql
@@ -91,12 +91,12 @@ INSERT INTO exchange_tables
,by_range)
VALUES
('aml_status'
- ,'exchange-0003'
+ ,'exchange-0002'
,'create'
,TRUE
,FALSE),
('aml_status'
- ,'exchange-0003'
+ ,'exchange-0002'
,'constrain'
,TRUE
,FALSE);
diff --git a/src/exchangedb/0002-kyc_attributes.sql b/src/exchangedb/0002-kyc_attributes.sql
index 9b18b6c2f..d02e2568f 100644
--- a/src/exchangedb/0002-kyc_attributes.sql
+++ b/src/exchangedb/0002-kyc_attributes.sql
@@ -56,12 +56,6 @@ BEGIN
,partition_suffix
);
PERFORM comment_partitioned_column(
- 'birth date of the user, in format YYYY-MM-DD where a value of 0 is used to indicate unknown (in official documents); NULL if the birth date was not collected by the provider; used for KYC-driven age restrictions'
- ,'birthdate'
- ,table_name
- ,partition_suffix
- );
- PERFORM comment_partitioned_column(
'time when the attributes were collected by the provider'
,'collection_time'
,table_name
@@ -144,12 +138,12 @@ INSERT INTO exchange_tables
,by_range)
VALUES
('kyc_attributes'
- ,'exchange-0003'
+ ,'exchange-0002'
,'create'
,TRUE
,FALSE),
('kyc_attributes'
- ,'exchange-0003'
+ ,'exchange-0002'
,'constrain'
,TRUE
,FALSE);
diff --git a/src/exchangedb/0002-purse_actions.sql b/src/exchangedb/0002-purse_actions.sql
index b4e7e132d..fc09e7fa3 100644
--- a/src/exchangedb/0002-purse_actions.sql
+++ b/src/exchangedb/0002-purse_actions.sql
@@ -110,12 +110,12 @@ INSERT INTO exchange_tables
,by_range)
VALUES
('purse_actions'
- ,'exchange-0003'
+ ,'exchange-0002'
,'create'
,TRUE
,FALSE),
('purse_actions'
- ,'exchange-0003'
+ ,'exchange-0002'
,'master'
,TRUE
,FALSE);
diff --git a/src/exchangedb/0002-purse_deletion.sql b/src/exchangedb/0002-purse_deletion.sql
index 69db4293c..6bbc24c87 100644
--- a/src/exchangedb/0002-purse_deletion.sql
+++ b/src/exchangedb/0002-purse_deletion.sql
@@ -94,17 +94,17 @@ INSERT INTO exchange_tables
,by_range)
VALUES
('purse_deletion'
- ,'exchange-0003'
+ ,'exchange-0002'
,'create'
,TRUE
,FALSE),
('purse_deletion'
- ,'exchange-0003'
+ ,'exchange-0002'
,'constrain'
,TRUE
,FALSE),
('purse_requests_was_deleted'
- ,'exchange-0003'
+ ,'exchange-0002'
,'master'
,TRUE
,FALSE);
diff --git a/src/exchangedb/drop.sql b/src/exchangedb/drop.sql
index 843cda8ec..ff383d743 100644
--- a/src/exchangedb/drop.sql
+++ b/src/exchangedb/drop.sql
@@ -20,8 +20,6 @@ BEGIN;
SELECT _v.unregister_patch('exchange-0001');
SELECT _v.unregister_patch('exchange-0002');
-SELECT _v.unregister_patch('exchange-0003');
-SELECT _v.unregister_patch('exchange-0004');
DROP SCHEMA exchange CASCADE;
diff --git a/src/exchangedb/exchange-0001.sql b/src/exchangedb/exchange-0001.sql
index a5998b852..8f44c5664 100644
--- a/src/exchangedb/exchange-0001.sql
+++ b/src/exchangedb/exchange-0001.sql
@@ -137,90 +137,10 @@ COMMENT ON FUNCTION comment_partitioned_column
IS 'Generic function to create a comment on column of a table that is partitioned.';
---------------------------------------------------------------
--- Taler amounts and helper functiosn
--------------------------------------------------------------
-
-
-CREATE PROCEDURE amount_normalize(
- IN amount taler_amount
- ,OUT normalized taler_amount
-)
-LANGUAGE plpgsql
-AS $$
-BEGIN
- normalized.val = amount.val + amount.frac / 100000000;
- normalized.frac = amount.frac % 100000000;
-END $$;
-
-COMMENT ON PROCEDURE amount_normalize
- IS 'Returns the normalized amount by adding to the .val the value of (.frac / 100000000) and removing the modulus 100000000 from .frac.';
-
-CREATE PROCEDURE amount_add(
- IN a taler_amount
- ,IN b taler_amount
- ,OUT sum taler_amount
-)
-LANGUAGE plpgsql
-AS $$
-BEGIN
- sum = (a.val + b.val, a.frac + b.frac);
- CALL amount_normalize(sum ,sum);
-
- IF (sum.val > (1<<52))
- THEN
- RAISE EXCEPTION 'addition overflow';
- END IF;
-END $$;
-
-COMMENT ON PROCEDURE amount_add
- IS 'Returns the normalized sum of two amounts. It raises an exception when the resulting .val is larger than 2^52';
-
-CREATE FUNCTION amount_left_minus_right(
- IN l taler_amount
- ,IN r taler_amount
- ,OUT diff taler_amount
- ,OUT ok BOOLEAN
-)
-LANGUAGE plpgsql
-AS $$
-BEGIN
-
-IF (l.val > r.val)
-THEN
- ok = TRUE;
- IF (l.frac >= r.frac)
- THEN
- diff.val = l.val - r.val;
- diff.frac = l.frac - r.frac;
- ELSE
- diff.val = l.val - r.val - 1;
- diff.frac = l.frac + 100000000 - r.frac;
- END IF;
-ELSE
- IF (l.val = r.val) AND (l.frac >= r.frac)
- THEN
- diff.val = 0;
- diff.frac = l.frac - r.frac;
- ok = TRUE;
- ELSE
- diff = (-1, -1);
- ok = FALSE;
- END IF;
-END IF;
-
-RETURN;
-END $$;
-
-COMMENT ON FUNCTION amount_left_minus_right
- IS 'Subtracts the right amount from the left and returns the difference and TRUE, if the left amount is larger than the right, or an invalid amount and FALSE otherwise.';
-
-
---------------------------------------------------------------------------
-- Main DB setup loop
---------------------------------------------------------------------------
-
CREATE FUNCTION do_create_tables(
num_partitions INTEGER
-- NULL: no partitions, add foreign constraints
diff --git a/src/exchangedb/exchange-0002.sql.in b/src/exchangedb/exchange-0002.sql.in
index 35113fb5d..9dd62a3d1 100644
--- a/src/exchangedb/exchange-0002.sql.in
+++ b/src/exchangedb/exchange-0002.sql.in
@@ -22,7 +22,8 @@ SET search_path TO exchange;
CREATE TYPE taler_amount
AS
(val INT8
- ,frac INT4);
+ ,frac INT4
+ );
COMMENT ON TYPE taler_amount
IS 'Stores an amount, fraction is in units of 1/100000000 of the base value';
@@ -95,5 +96,4 @@ COMMENT ON TYPE exchange_do_array_reserve_insert_return_type
#include "0002-age_withdraw.sql"
-
COMMIT;
diff --git a/src/exchangedb/procedures.sql.in b/src/exchangedb/procedures.sql.in
index 7166540fa..7fff2fd41 100644
--- a/src/exchangedb/procedures.sql.in
+++ b/src/exchangedb/procedures.sql.in
@@ -18,6 +18,7 @@ BEGIN;
SET search_path TO exchange;
+#include "exchange_do_amount_specific.sql"
#include "exchange_do_withdraw.sql"
#include "exchange_do_batch_withdraw.sql"
#include "exchange_do_batch_withdraw_insert.sql"