gnunet-svn
[Top][All Lists]
Advanced

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

[taler-exchange] 03/03: update of batch 1-2-4 test


From: gnunet
Subject: [taler-exchange] 03/03: update of batch 1-2-4 test
Date: Tue, 20 Dec 2022 11:39:19 +0100

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

joseph-xu pushed a commit to branch master
in repository exchange.

commit 4cf0d8580f1cb84a962b23f88b0ad7dc0fa37480
Author: Joseph <Joseph.xu@efrei.net>
AuthorDate: Tue Dec 20 05:39:05 2022 -0500

    update of batch 1-2-4 test
---
 contrib/gana                                  |   2 +-
 src/exchangedb/pg_batch2_reserves_in_insert.c | 119 ++++----------------------
 src/exchangedb/test_exchangedb_by_j.c         |   6 +-
 3 files changed, 24 insertions(+), 103 deletions(-)

diff --git a/contrib/gana b/contrib/gana
index 149aa0a0..3e659ed5 160000
--- a/contrib/gana
+++ b/contrib/gana
@@ -1 +1 @@
-Subproject commit 149aa0a08d787419e02277ef231d93c6a0154a47
+Subproject commit 3e659ed54023230dd45dbec5664f176e1763d260
diff --git a/src/exchangedb/pg_batch2_reserves_in_insert.c 
b/src/exchangedb/pg_batch2_reserves_in_insert.c
index 64b7b1b0..5518b2c6 100644
--- a/src/exchangedb/pg_batch2_reserves_in_insert.c
+++ b/src/exchangedb/pg_batch2_reserves_in_insert.c
@@ -52,14 +52,6 @@ compute_notify_on_reserve (const struct 
TALER_ReservePublicKeyP *reserve_pub)
 }
 
 
-<<<<<<< HEAD
-enum GNUNET_DB_QueryStatus
-TEH_PG_batch2_reserves_in_insert (void *cls,
-                                  const struct
-                                  TALER_EXCHANGEDB_ReserveInInfo *reserves,
-                                  unsigned int reserves_length,
-                                  enum GNUNET_DB_QueryStatus *results)
-=======
 static enum GNUNET_DB_QueryStatus
 insert1(struct PostgresClosure *pg,
         const struct TALER_EXCHANGEDB_ReserveInInfo *reserve,
@@ -71,7 +63,6 @@ insert1(struct PostgresClosure *pg,
         bool *transaction_duplicate,
         bool *conflict,
         uint64_t *reserve_uuid)
->>>>>>> b9baf781 (new batch test and standard deviation)
 {
   enum GNUNET_DB_QueryStatus qs2;
   PREPARE (pg,
@@ -84,11 +75,11 @@ insert1(struct PostgresClosure *pg,
            " ($1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12);");
 
     struct GNUNET_PQ_QueryParam params[] = {
-      GNUNET_PQ_query_param_auto_from_type (&reserve->reserve_pub),
+      GNUNET_PQ_query_param_auto_from_type (reserve->reserve_pub),
       GNUNET_PQ_query_param_timestamp (&expiry),
       GNUNET_PQ_query_param_timestamp (&gc),
       GNUNET_PQ_query_param_uint64 (&reserve->wire_reference),
-      TALER_PQ_query_param_amount (&reserve->balance),
+      TALER_PQ_query_param_amount (reserve->balance),
       GNUNET_PQ_query_param_string (reserve->exchange_account_name),
       GNUNET_PQ_query_param_timestamp (&reserve->execution_time),
       GNUNET_PQ_query_param_auto_from_type (&h_payto),
@@ -160,90 +151,33 @@ insert2 (struct PostgresClosure *pg,
            ",ruuid AS reserve_uuid"
            ",ruuid2 AS reserve_uuid2"
            " FROM exchange_do_batch2_reserves_insert"
-<<<<<<< HEAD
-           " 
($1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16,$17,$18,$19,$20,$21);");
-  expiry = GNUNET_TIME_absolute_to_timestamp (
-    GNUNET_TIME_absolute_add (reserves->execution_time.abs_time,
-                              pg->idle_reserve_expiration_time));
-  gc = GNUNET_TIME_absolute_to_timestamp (
-    GNUNET_TIME_absolute_add (GNUNET_TIME_absolute_get (),
-                              pg->legal_reserve_expiration_time));
-  GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
-              "Creating reserve %s with expiration in %s\n",
-              TALER_B2S (reserves->reserve_pub),
-              GNUNET_STRINGS_relative_time_to_string (
-                pg->idle_reserve_expiration_time,
-                GNUNET_NO));
-
-  {
-    if (GNUNET_OK !=
-        TEH_PG_start_read_committed (pg,
-                                     "READ_COMMITED"))
-    {
-      GNUNET_break (0);
-      return GNUNET_DB_STATUS_HARD_ERROR;
-    }
-  }
-  /* Optimistically assume this is a new reserve, create balance for the first
-     time; we do this before adding the actual transaction to "reserves_in",
-     as for a new reserve it can't be a duplicate 'add' operation, and as
-     the 'add' operation needs the reserve entry as a foreign key. */
-  for (unsigned int i = 0; i<reserves_length; i++)
-  {
-    const struct TALER_EXCHANGEDB_ReserveInInfo *reserve = &reserves[i];
-    notify_s[i] = compute_notify_on_reserve (reserve->reserve_pub);
-  }
-
-  for (unsigned int i = 0; i<(reserves_length & ~1); i += 2)
-  {
-    const struct TALER_EXCHANGEDB_ReserveInInfo *reserve0 = &reserves[i];
-    const struct TALER_EXCHANGEDB_ReserveInInfo *reserve1 = &reserves[i + 1];
-    struct GNUNET_PQ_QueryParam params[] = {
-      GNUNET_PQ_query_param_auto_from_type (reserve0->reserve_pub),
-      GNUNET_PQ_query_param_timestamp (&expiry),
-      GNUNET_PQ_query_param_timestamp (&gc),
-      GNUNET_PQ_query_param_uint64 (&reserve0->wire_reference),
-      TALER_PQ_query_param_amount (reserve0->balance),
-      GNUNET_PQ_query_param_string (reserve0->exchange_account_name),
-      GNUNET_PQ_query_param_timestamp (&reserve0->execution_time),
-=======
            " 
($1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16,$17,$18,$19,$20,$21,$22);");
 
     struct GNUNET_PQ_QueryParam params[] = {
-      GNUNET_PQ_query_param_auto_from_type (&reserves[0].reserve_pub),
+      // THIS is wrong, not 22 args!
+      GNUNET_PQ_query_param_auto_from_type (reserves[0].reserve_pub),
       GNUNET_PQ_query_param_timestamp (&expiry),
       GNUNET_PQ_query_param_timestamp (&gc),
       GNUNET_PQ_query_param_uint64 (&reserves[0].wire_reference),
-      TALER_PQ_query_param_amount (&reserves[0].balance),
+      TALER_PQ_query_param_amount (reserves[0].balance),
       GNUNET_PQ_query_param_string (reserves[0].exchange_account_name),
       GNUNET_PQ_query_param_timestamp (&reserves[0].execution_time),
->>>>>>> b9baf781 (new batch test and standard deviation)
       GNUNET_PQ_query_param_auto_from_type (&h_payto),
       GNUNET_PQ_query_param_string (reserves[0].sender_account_details),
       GNUNET_PQ_query_param_timestamp (&reserve_expiration),
-<<<<<<< HEAD
-      GNUNET_PQ_query_param_string (notify_s[i]),
-      GNUNET_PQ_query_param_auto_from_type (reserve1->reserve_pub),
-      GNUNET_PQ_query_param_uint64 (&reserve1->wire_reference),
-      TALER_PQ_query_param_amount (reserve1->balance),
-      GNUNET_PQ_query_param_string (reserve1->exchange_account_name),
-      GNUNET_PQ_query_param_timestamp (&reserve1->execution_time),
-=======
       GNUNET_PQ_query_param_string (notify_s[0]), // FIXME: 2 different 
notifies!
       GNUNET_PQ_query_param_string (notify_s[1]),
-      GNUNET_PQ_query_param_auto_from_type (&reserves[1].reserve_pub),
+
+      GNUNET_PQ_query_param_auto_from_type (reserves[1].reserve_pub),
       GNUNET_PQ_query_param_uint64 (&reserves[1].wire_reference),
-      TALER_PQ_query_param_amount (&reserves[1].balance),
+      TALER_PQ_query_param_amount (reserves[1].balance),
       GNUNET_PQ_query_param_string (reserves[1].exchange_account_name),
       GNUNET_PQ_query_param_timestamp (&reserves[1].execution_time),
->>>>>>> b9baf781 (new batch test and standard deviation)
       GNUNET_PQ_query_param_auto_from_type (&h_payto),
       GNUNET_PQ_query_param_string (reserves[1].sender_account_details),
       GNUNET_PQ_query_param_timestamp (&reserve_expiration),
-
       GNUNET_PQ_query_param_end
     };
-
     struct GNUNET_PQ_ResultSpec rs[] = {
       GNUNET_PQ_result_spec_bool ("conflicted",
                                   &conflict[0]),
@@ -325,11 +259,11 @@ insert4 (struct PostgresClosure *pg,
            " 
($1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16,$17,$18,$19,$20,$21,$22,$23,$24,$25,$26,$27,$28,$29,$30,$31,$32,$33,$34,$35,$36,$37,$38,$39,
 $40, $41,$42);");
 
     struct GNUNET_PQ_QueryParam params[] = {
-      GNUNET_PQ_query_param_auto_from_type (&reserves[0].reserve_pub),
+      GNUNET_PQ_query_param_auto_from_type (reserves[0].reserve_pub),
       GNUNET_PQ_query_param_timestamp (&expiry),
       GNUNET_PQ_query_param_timestamp (&gc),
       GNUNET_PQ_query_param_uint64 (&reserves[0].wire_reference),
-      TALER_PQ_query_param_amount (&reserves[0].balance),
+      TALER_PQ_query_param_amount (reserves[0].balance),
       GNUNET_PQ_query_param_string (reserves[0].exchange_account_name),
       GNUNET_PQ_query_param_timestamp (&reserves[0].execution_time),
       GNUNET_PQ_query_param_auto_from_type (&h_payto),
@@ -340,27 +274,27 @@ insert4 (struct PostgresClosure *pg,
       GNUNET_PQ_query_param_string (notify_s[2]),
       GNUNET_PQ_query_param_string (notify_s[3]),
 
-      GNUNET_PQ_query_param_auto_from_type (&reserves[1].reserve_pub),
+      GNUNET_PQ_query_param_auto_from_type (reserves[1].reserve_pub),
       GNUNET_PQ_query_param_uint64 (&reserves[1].wire_reference),
-      TALER_PQ_query_param_amount (&reserves[1].balance),
+      TALER_PQ_query_param_amount (reserves[1].balance),
       GNUNET_PQ_query_param_string (reserves[1].exchange_account_name),
       GNUNET_PQ_query_param_timestamp (&reserves[1].execution_time),
       GNUNET_PQ_query_param_auto_from_type (&h_payto),
       GNUNET_PQ_query_param_string (reserves[1].sender_account_details),
       GNUNET_PQ_query_param_timestamp (&reserve_expiration),
 
-      GNUNET_PQ_query_param_auto_from_type (&reserves[2].reserve_pub),
+      GNUNET_PQ_query_param_auto_from_type (reserves[2].reserve_pub),
       GNUNET_PQ_query_param_uint64 (&reserves[2].wire_reference),
-      TALER_PQ_query_param_amount (&reserves[2].balance),
+      TALER_PQ_query_param_amount (reserves[2].balance),
       GNUNET_PQ_query_param_string (reserves[2].exchange_account_name),
       GNUNET_PQ_query_param_timestamp (&reserves[2].execution_time),
       GNUNET_PQ_query_param_auto_from_type (&h_payto),
       GNUNET_PQ_query_param_string (reserves[2].sender_account_details),
       GNUNET_PQ_query_param_timestamp (&reserve_expiration),
 
-      GNUNET_PQ_query_param_auto_from_type (&reserves[3].reserve_pub),
+      GNUNET_PQ_query_param_auto_from_type (reserves[3].reserve_pub),
       GNUNET_PQ_query_param_uint64 (&reserves[3].wire_reference),
-      TALER_PQ_query_param_amount (&reserves[3].balance),
+      TALER_PQ_query_param_amount (reserves[3].balance),
       GNUNET_PQ_query_param_string (reserves[3].exchange_account_name),
       GNUNET_PQ_query_param_timestamp (&reserves[3].execution_time),
       GNUNET_PQ_query_param_auto_from_type (&h_payto),
@@ -413,21 +347,6 @@ insert4 (struct PostgresClosure *pg,
                                                     rs);
     if (qs3 < 0)
     {
-<<<<<<< HEAD
-      const struct TALER_EXCHANGEDB_ReserveInInfo *reserve =
-        &reserves[reserves_length - 1];
-      // single insert logic here
-    }
-    GNUNET_assert (GNUNET_DB_STATUS_SUCCESS_NO_RESULTS != qs1);
-    results[i] = (transaction_duplicate)
-      ? GNUNET_DB_STATUS_SUCCESS_NO_RESULTS
-      : GNUNET_DB_STATUS_SUCCESS_ONE_RESULT;
-   conflicts[i] = conflicted;
-   conflicts2[i] = conflicted2;
-   // fprintf(stdout, "%d",conflicts[i]);
-   // fprintf(stdout, "%d", conflicts2[i]);
-   if ((!conflicts[i] && transaction_duplicate) ||(!conflicts2[i] && 
transaction_duplicate2))
-=======
       GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
                   "Failed to create reserves4 (%d)\n",
                   qs3);
@@ -440,7 +359,6 @@ insert4 (struct PostgresClosure *pg,
       : GNUNET_DB_STATUS_SUCCESS_ONE_RESULT;*/
 
     if (((conflict[0]) && (transaction_duplicate[0])) ||((conflict[1]) && 
(transaction_duplicate[1])) ||((conflict[2]) && (transaction_duplicate[2])) 
||((conflict[3]) && (transaction_duplicate[3])))
->>>>>>> b9baf781 (new batch test and standard deviation)
    {
      GNUNET_break (0);
      TEH_PG_rollback (pg);
@@ -459,7 +377,7 @@ TEH_PG_batch2_reserves_in_insert (void *cls,
                                  enum GNUNET_DB_QueryStatus *results)
 {
   struct PostgresClosure *pg = cls;
-  enum GNUNET_DB_QueryStatus qs1;
+  //  enum GNUNET_DB_QueryStatus qs1;
   enum GNUNET_DB_QueryStatus qs2;
   enum GNUNET_DB_QueryStatus qs4;
   enum GNUNET_DB_QueryStatus qs5;
@@ -509,7 +427,8 @@ TEH_PG_batch2_reserves_in_insert (void *cls,
   for (unsigned int i=0;i<reserves_length;i++)
   {
     const struct TALER_EXCHANGEDB_ReserveInInfo *reserve = &reserves[i];
-    notify_s[i] = compute_notify_on_reserve (&reserve->reserve_pub);
+
+    notify_s[i] = compute_notify_on_reserve (reserve->reserve_pub);
   }
 
   unsigned int i=0;
diff --git a/src/exchangedb/test_exchangedb_by_j.c 
b/src/exchangedb/test_exchangedb_by_j.c
index f0257e2c..8e0b413b 100644
--- a/src/exchangedb/test_exchangedb_by_j.c
+++ b/src/exchangedb/test_exchangedb_by_j.c
@@ -108,6 +108,7 @@ run (void *cls)
         struct TALER_Amount value;
         unsigned int batch_size = batches[i];
         unsigned int iterations = 1024*10;
+        struct TALER_ReservePublicKeyP reserve_pubs[iterations];
         struct GNUNET_TIME_Absolute now;
         struct GNUNET_TIME_Timestamp ts;
         struct GNUNET_TIME_Relative duration;
@@ -122,8 +123,9 @@ run (void *cls)
         ts = GNUNET_TIME_timestamp_get ();
         for (unsigned int r = 0; r<iterations; r++)
           {
-            RND_BLK (&reserves[r].reserve_pub);
-            reserves[r].balance = value;
+            RND_BLK (&reserve_pubs[r]);
+            reserves[r].reserve_pub = &reserve_pubs[r];
+            reserves[r].balance = &value;
             reserves[r].execution_time = ts;
             reserves[r].sender_account_details = sndr;
             reserves[r].exchange_account_name = "name";

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

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