aboutsummaryrefslogtreecommitdiff
path: root/src/exchangedb/exchange-0001.sql
diff options
context:
space:
mode:
authorMarco Boss <bossm8@bfh.ch>2022-03-31 21:31:07 +0200
committerMarco Boss <bossm8@bfh.ch>2022-03-31 21:31:07 +0200
commit75c1e10a67d94f43d0c06433efc2b78c10bae5c5 (patch)
tree0e6d5dad60dfd8cc41b5a81d31b6e213e9bccd5e /src/exchangedb/exchange-0001.sql
parent0cf9a9984ce733d8315057b810bfda90cec5c04a (diff)
downloadexchange-75c1e10a67d94f43d0c06433efc2b78c10bae5c5.tar.xz
add shard init for shard node
Diffstat (limited to 'src/exchangedb/exchange-0001.sql')
-rw-r--r--src/exchangedb/exchange-0001.sql13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/exchangedb/exchange-0001.sql b/src/exchangedb/exchange-0001.sql
index 1176faec0..1bf2d3079 100644
--- a/src/exchangedb/exchange-0001.sql
+++ b/src/exchangedb/exchange-0001.sql
@@ -1484,6 +1484,7 @@ $$;
--------------------- Sharding ---------------------------
---------------------- Shards ----------------------------
+
CREATE OR REPLACE FUNCTION setup_shard(
shard_suffix VARCHAR
)
@@ -1553,6 +1554,7 @@ END
$$;
------------------------------ Master ----------------------------------
+
CREATE OR REPLACE FUNCTION create_foreign_table(
source_table_name VARCHAR
,modulus INTEGER
@@ -1849,18 +1851,21 @@ COMMENT ON FUNCTION create_shard_server
IS 'Create a shard server on the master
node with all foreign tables and user mappings';
-CREATE OR REPLACE FUNCTION create_shards(
- num_shards INTEGER
+CREATE OR REPLACE FUNCTION create_foreign_servers(
+ amount INTEGER
,domain VARCHAR DEFAULT 'perf.taler'
)
RETURNS VOID
LANGUAGE plpgsql
AS $$
BEGIN
- FOR i IN 1..num_shards LOOP
+
+ PERFORM master_prepare_sharding();
+
+ FOR i IN 1..amount LOOP
PERFORM create_shard_server(
i
- ,num_shards
+ ,amount
,i
,'shard-' || i::varchar || '.' || domain
,'taler'