gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-exchange] branch master updated (099884ee -> 11d5f619)


From: gnunet
Subject: [taler-exchange] branch master updated (099884ee -> 11d5f619)
Date: Fri, 17 Jan 2020 12:25:14 +0100

This is an automated email from the git hooks/post-receive script.

grothoff pushed a change to branch master
in repository exchange.

    from 099884ee split config files, towards making pybank test case work again
     new d3fb16b3 also cover drop/restart cases with psql logic
     new 11d5f619 tested in GNUnet already

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 src/auditordb/Makefile.am                   |  4 +-
 src/auditordb/drop0000.sql                  | 49 +++++++++++++++++++++++
 src/auditordb/plugin_auditordb_postgres.c   | 61 +++--------------------------
 src/auditordb/restart0000.sql               | 47 ++++++++++++++++++++++
 src/exchangedb/Makefile.am                  |  3 +-
 src/exchangedb/drop0000.sql                 | 50 +++++++++++++++++++++++
 src/exchangedb/exchangedb-postgres.conf     |  1 +
 src/exchangedb/plugin_exchangedb_postgres.c | 34 +++-------------
 src/pq/test_pq.c                            |  1 -
 9 files changed, 164 insertions(+), 86 deletions(-)
 create mode 100644 src/auditordb/drop0000.sql
 create mode 100644 src/auditordb/restart0000.sql
 create mode 100644 src/exchangedb/drop0000.sql

diff --git a/src/auditordb/Makefile.am b/src/auditordb/Makefile.am
index 58aec5a8..1378c549 100644
--- a/src/auditordb/Makefile.am
+++ b/src/auditordb/Makefile.am
@@ -15,7 +15,9 @@ sqldir = $(prefix)/share/taler/sql/auditor/
 
 sql_DATA = \
   0000.sql \
-  0001.sql
+  0001.sql \
+  drop0000.sql \
+  restart0000.sql
 
 EXTRA_DIST = \
   auditordb-postgres.conf \
diff --git a/src/auditordb/drop0000.sql b/src/auditordb/drop0000.sql
new file mode 100644
index 00000000..2a2db921
--- /dev/null
+++ b/src/auditordb/drop0000.sql
@@ -0,0 +1,49 @@
+--
+-- This file is part of TALER
+-- Copyright (C) 2014--2020 Taler Systems SA
+--
+-- TALER is free software; you can redistribute it and/or modify it under the
+-- terms of the GNU General Public License as published by the Free Software
+-- Foundation; either version 3, or (at your option) any later version.
+--
+-- TALER is distributed in the hope that it will be useful, but WITHOUT ANY
+-- WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS 
FOR
+-- A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License along with
+-- TALER; see the file COPYING.  If not, see <http://www.gnu.org/licenses/>
+--
+
+-- Everything in one big transaction
+BEGIN;
+
+-- This script DROPs all of the tables we create, including the
+-- versioning schema!
+--
+-- Unlike the other SQL files, it SHOULD be updated to reflect the
+-- latest requirements for dropping tables.
+
+-- Drops for 0001.sql
+DROP TABLE IF EXISTS auditor_predicted_result;
+DROP TABLE IF EXISTS auditor_historic_denomination_revenue;
+DROP TABLE IF EXISTS auditor_balance_summary;
+DROP TABLE IF EXISTS auditor_denomination_pending;
+DROP TABLE IF EXISTS auditor_reserve_balance;
+DROP TABLE IF EXISTS auditor_wire_fee_balance;
+DROP TABLE IF EXISTS auditor_reserves;
+DROP TABLE IF EXISTS auditor_progress_reserve;
+DROP TABLE IF EXISTS auditor_progress_aggregation;
+DROP TABLE IF EXISTS auditor_progress_deposit_confirmation;
+DROP TABLE IF EXISTS auditor_progress_coin;
+DROP TABLE IF EXISTS wire_auditor_progress;
+DROP TABLE IF EXISTS wire_auditor_account_progress;
+DROP TABLE IF EXISTS auditor_historic_reserve_summary CASCADE;
+DROP TABLE IF EXISTS auditor_denominations CASCADE;
+DROP TABLE IF EXISTS deposit_confirmations CASCADE;
+DROP TABLE IF EXISTS auditor_exchanges CASCADE;
+
+-- Drop versioning (0000.sql)
+DROP SCHEMA IF EXISTS _v CASCADE;
+
+-- And we're out of here...
+COMMIT;
diff --git a/src/auditordb/plugin_auditordb_postgres.c 
b/src/auditordb/plugin_auditordb_postgres.c
index 52488fd2..0d552ff1 100644
--- a/src/auditordb/plugin_auditordb_postgres.c
+++ b/src/auditordb/plugin_auditordb_postgres.c
@@ -113,69 +113,20 @@ postgres_drop_tables (void *cls,
                       int drop_exchangelist)
 {
   struct PostgresClosure *pc = cls;
-  struct GNUNET_PQ_ExecuteStatement es[] = {
-    GNUNET_PQ_make_execute ("DELETE FROM auditor_predicted_result;"),
-    GNUNET_PQ_make_execute (
-      "DELETE FROM auditor_historic_denomination_revenue;"),
-    GNUNET_PQ_make_execute ("DELETE FROM auditor_balance_summary;"),
-    GNUNET_PQ_make_execute ("DELETE FROM auditor_denomination_pending;"),
-    GNUNET_PQ_make_execute ("DELETE FROM auditor_reserve_balance;"),
-    GNUNET_PQ_make_execute ("DELETE FROM auditor_wire_fee_balance;"),
-    GNUNET_PQ_make_execute ("DELETE FROM auditor_reserves;"),
-    GNUNET_PQ_make_execute ("DELETE FROM auditor_progress_reserve;"),
-    GNUNET_PQ_make_execute ("DELETE FROM auditor_progress_aggregation;"),
-    GNUNET_PQ_make_execute (
-      "DELETE FROM auditor_progress_deposit_confirmation;"),
-    GNUNET_PQ_make_execute ("DELETE FROM auditor_progress_coin;"),
-    GNUNET_PQ_make_execute ("DELETE FROM wire_auditor_progress;"),
-    GNUNET_PQ_make_execute ("DELETE FROM wire_auditor_account_progress;"),
-    GNUNET_PQ_make_execute ("DELETE FROM auditor_historic_reserve_summary;"),
-    GNUNET_PQ_EXECUTE_STATEMENT_END
-  };
-  struct GNUNET_PQ_ExecuteStatement esx[] = {
-    GNUNET_PQ_make_execute ("DROP TABLE IF EXISTS auditor_predicted_result;"),
-    GNUNET_PQ_make_execute (
-      "DROP TABLE IF EXISTS auditor_historic_denomination_revenue;"),
-    GNUNET_PQ_make_execute ("DROP TABLE IF EXISTS auditor_balance_summary;"),
-    GNUNET_PQ_make_execute (
-      "DROP TABLE IF EXISTS auditor_denomination_pending;"),
-    GNUNET_PQ_make_execute ("DROP TABLE IF EXISTS auditor_reserve_balance;"),
-    GNUNET_PQ_make_execute ("DROP TABLE IF EXISTS auditor_wire_fee_balance;"),
-    GNUNET_PQ_make_execute ("DROP TABLE IF EXISTS auditor_reserves;"),
-    GNUNET_PQ_make_execute ("DROP TABLE IF EXISTS auditor_progress_reserve;"),
-    GNUNET_PQ_make_execute (
-      "DROP TABLE IF EXISTS auditor_progress_aggregation;"),
-    GNUNET_PQ_make_execute (
-      "DROP TABLE IF EXISTS auditor_progress_deposit_confirmation;"),
-    GNUNET_PQ_make_execute ("DROP TABLE IF EXISTS auditor_progress_coin;"),
-    GNUNET_PQ_make_execute ("DROP TABLE IF EXISTS wire_auditor_progress;"),
-    GNUNET_PQ_make_execute (
-      "DROP TABLE IF EXISTS wire_auditor_account_progress;"),
-    GNUNET_PQ_make_execute (
-      "DROP TABLE IF EXISTS auditor_historic_reserve_summary CASCADE;"),
-    GNUNET_PQ_make_execute (
-      "DROP TABLE IF EXISTS auditor_denominations CASCADE;"),
-    GNUNET_PQ_make_execute (
-      "DROP TABLE IF EXISTS deposit_confirmations CASCADE;"),
-    GNUNET_PQ_make_execute ("DROP TABLE IF EXISTS auditor_exchanges CASCADE;"),
-    GNUNET_PQ_make_execute ("DROP SCHEMA IF EXISTS _v CASCADE;"),
-    GNUNET_PQ_EXECUTE_STATEMENT_END
-  };
   struct GNUNET_PQ_Context *conn;
-  int ret;
+  char *exec_dir;
 
+  GNUNET_asprintf (&exec_dir,
+                   (drop_exchangelist) ? "%sdrop" : "%srestart",
+                   pc->sql_dir);
   conn = GNUNET_PQ_connect (pc->connection_cfg_str,
+                            exec_dir,
                             NULL,
-                            es,
                             NULL);
   if (NULL == conn)
     return GNUNET_SYSERR;
-  ret = GNUNET_OK;
-  if (drop_exchangelist)
-    ret = GNUNET_PQ_exec_statements (conn,
-                                     esx);
   GNUNET_PQ_disconnect (conn);
-  return ret;
+  return GNUNET_OK;
 }
 
 
diff --git a/src/auditordb/restart0000.sql b/src/auditordb/restart0000.sql
new file mode 100644
index 00000000..1a141f78
--- /dev/null
+++ b/src/auditordb/restart0000.sql
@@ -0,0 +1,47 @@
+--
+-- This file is part of TALER
+-- Copyright (C) 2014--2020 Taler Systems SA
+--
+-- TALER is free software; you can redistribute it and/or modify it under the
+-- terms of the GNU General Public License as published by the Free Software
+-- Foundation; either version 3, or (at your option) any later version.
+--
+-- TALER is distributed in the hope that it will be useful, but WITHOUT ANY
+-- WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS 
FOR
+-- A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License along with
+-- TALER; see the file COPYING.  If not, see <http://www.gnu.org/licenses/>
+--
+
+-- Everything in one big transaction
+BEGIN;
+
+-- This script restart the auditor state as done to RESTART
+-- an audit from scratch. It does NOT drop tables and also
+-- PRESERVES data that running the auditor would not recover,
+-- such as:
+-- * the list of audited exchanges
+-- * deposit confirmation reports the auditor received from merchants
+-- * schema versioning information
+--
+-- Unlike the other SQL files, it SHOULD be updated to reflect the
+-- latest requirements for dropping tables.
+
+DELETE FROM auditor_predicted_result;
+DELETE FROM auditor_historic_denomination_revenue;
+DELETE FROM auditor_balance_summary;
+DELETE FROM auditor_denomination_pending;
+DELETE FROM auditor_reserve_balance;
+DELETE FROM auditor_wire_fee_balance;
+DELETE FROM auditor_reserves;
+DELETE FROM auditor_progress_reserve;
+DELETE FROM auditor_progress_aggregation;
+DELETE FROM auditor_progress_deposit_confirmation;
+DELETE FROM auditor_progress_coin;
+DELETE FROM wire_auditor_progress;
+DELETE FROM wire_auditor_account_progress;
+DELETE FROM auditor_historic_reserve_summary;
+
+-- And we're out of here...
+COMMIT;
diff --git a/src/exchangedb/Makefile.am b/src/exchangedb/Makefile.am
index 40db0974..e7ac4d71 100644
--- a/src/exchangedb/Makefile.am
+++ b/src/exchangedb/Makefile.am
@@ -16,7 +16,8 @@ sqldir = $(prefix)/share/taler/sql/exchange/
 
 sql_DATA = \
   0000.sql \
-  0001.sql
+  0001.sql \
+  drop0000.sql
 
 EXTRA_DIST = \
   exchangedb.conf \
diff --git a/src/exchangedb/drop0000.sql b/src/exchangedb/drop0000.sql
new file mode 100644
index 00000000..26e193ca
--- /dev/null
+++ b/src/exchangedb/drop0000.sql
@@ -0,0 +1,50 @@
+--
+-- This file is part of TALER
+-- Copyright (C) 2014--2020 Taler Systems SA
+--
+-- TALER is free software; you can redistribute it and/or modify it under the
+-- terms of the GNU General Public License as published by the Free Software
+-- Foundation; either version 3, or (at your option) any later version.
+--
+-- TALER is distributed in the hope that it will be useful, but WITHOUT ANY
+-- WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS 
FOR
+-- A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License along with
+-- TALER; see the file COPYING.  If not, see <http://www.gnu.org/licenses/>
+--
+
+-- Everything in one big transaction
+BEGIN;
+
+-- This script DROPs all of the tables we create, including the
+-- versioning schema!
+--
+-- Unlike the other SQL files, it SHOULD be updated to reflect the
+-- latest requirements for dropping tables.
+
+-- Drops for 0001.sql
+DROP TABLE IF EXISTS prewire CASCADE;
+DROP TABLE IF EXISTS payback CASCADE;
+DROP TABLE IF EXISTS payback_refresh CASCADE;
+DROP TABLE IF EXISTS aggregation_tracking CASCADE;
+DROP TABLE IF EXISTS wire_out CASCADE;
+DROP TABLE IF EXISTS wire_fee CASCADE;
+DROP TABLE IF EXISTS deposits CASCADE;
+DROP TABLE IF EXISTS refunds CASCADE;
+DROP TABLE IF EXISTS refresh_commitments CASCADE;
+DROP TABLE IF EXISTS refresh_revealed_coins CASCADE;
+DROP TABLE IF EXISTS refresh_transfer_keys CASCADE;
+DROP TABLE IF EXISTS known_coins CASCADE;
+DROP TABLE IF EXISTS reserves_close CASCADE;
+DROP TABLE IF EXISTS reserves_out CASCADE;
+DROP TABLE IF EXISTS reserves_in CASCADE;
+DROP TABLE IF EXISTS reserves CASCADE;
+DROP TABLE IF EXISTS denomination_revocations CASCADE;
+DROP TABLE IF EXISTS denominations CASCADE;
+
+-- Drop versioning (0000.sql)
+DROP SCHEMA IF EXISTS _v CASCADE;
+
+-- And we're out of here...
+COMMIT;
diff --git a/src/exchangedb/exchangedb-postgres.conf 
b/src/exchangedb/exchangedb-postgres.conf
index 40fe3de0..7d600586 100644
--- a/src/exchangedb/exchangedb-postgres.conf
+++ b/src/exchangedb/exchangedb-postgres.conf
@@ -2,4 +2,5 @@
 CONFIG = "postgres:///taler"
 
 # Where are the SQL files to setup our tables?
+# Important: this MUST end with a "/"!
 SQL_DIR = $DATADIR/sql/exchange/
diff --git a/src/exchangedb/plugin_exchangedb_postgres.c 
b/src/exchangedb/plugin_exchangedb_postgres.c
index afdebf92..80f91785 100644
--- a/src/exchangedb/plugin_exchangedb_postgres.c
+++ b/src/exchangedb/plugin_exchangedb_postgres.c
@@ -147,39 +147,17 @@ static int
 postgres_drop_tables (void *cls)
 {
   struct PostgresClosure *pc = cls;
-  struct GNUNET_PQ_ExecuteStatement es[] = {
-    GNUNET_PQ_make_execute ("DROP TABLE IF EXISTS prewire CASCADE;"),
-    GNUNET_PQ_make_execute ("DROP TABLE IF EXISTS payback CASCADE;"),
-    GNUNET_PQ_make_execute ("DROP TABLE IF EXISTS payback_refresh CASCADE;"),
-    GNUNET_PQ_make_execute (
-      "DROP TABLE IF EXISTS aggregation_tracking CASCADE;"),
-    GNUNET_PQ_make_execute ("DROP TABLE IF EXISTS wire_out CASCADE;"),
-    GNUNET_PQ_make_execute ("DROP TABLE IF EXISTS wire_fee CASCADE;"),
-    GNUNET_PQ_make_execute ("DROP TABLE IF EXISTS deposits CASCADE;"),
-    GNUNET_PQ_make_execute ("DROP TABLE IF EXISTS refunds CASCADE;"),
-    GNUNET_PQ_make_execute (
-      "DROP TABLE IF EXISTS refresh_commitments CASCADE;"),
-    GNUNET_PQ_make_execute (
-      "DROP TABLE IF EXISTS refresh_revealed_coins CASCADE;"),
-    GNUNET_PQ_make_execute (
-      "DROP TABLE IF EXISTS refresh_transfer_keys CASCADE;"),
-    GNUNET_PQ_make_execute ("DROP TABLE IF EXISTS known_coins CASCADE;"),
-    GNUNET_PQ_make_execute ("DROP TABLE IF EXISTS reserves_close CASCADE;"),
-    GNUNET_PQ_make_execute ("DROP TABLE IF EXISTS reserves_out CASCADE;"),
-    GNUNET_PQ_make_execute ("DROP TABLE IF EXISTS reserves_in CASCADE;"),
-    GNUNET_PQ_make_execute ("DROP TABLE IF EXISTS reserves CASCADE;"),
-    GNUNET_PQ_make_execute (
-      "DROP TABLE IF EXISTS denomination_revocations CASCADE;"),
-    GNUNET_PQ_make_execute ("DROP TABLE IF EXISTS denominations CASCADE;"),
-    GNUNET_PQ_make_execute ("DROP SCHEMA IF EXISTS _v CASCADE;"),
-    GNUNET_PQ_EXECUTE_STATEMENT_END
-  };
   struct GNUNET_PQ_Context *conn;
+  char *drop_dir;
 
+  GNUNET_asprintf (&drop_dir,
+                   "%sdrop",
+                   pc->sql_dir);
   conn = GNUNET_PQ_connect (pc->connection_cfg_str,
+                            drop_dir,
                             NULL,
-                            es,
                             NULL);
+  GNUNET_free (drop_dir);
   if (NULL == conn)
     return GNUNET_SYSERR;
   GNUNET_PQ_disconnect (conn);
diff --git a/src/pq/test_pq.c b/src/pq/test_pq.c
index e82599cd..4616d64e 100644
--- a/src/pq/test_pq.c
+++ b/src/pq/test_pq.c
@@ -88,7 +88,6 @@ run_queries (struct GNUNET_PQ_Context *conn)
   json = json_object ();
   json_object_set_new (json, "foo", json_integer (42));
   GNUNET_assert (NULL != json);
-  /* FIXME: test GNUNET_PQ_result_spec_variable_size */
   {
     struct GNUNET_PQ_QueryParam params_insert[] = {
       TALER_PQ_query_param_amount (&hamount),

-- 
To stop receiving notification emails like this one, please contact
address@hidden.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]