diff options
| author | Christian Grothoff <christian@grothoff.org> | 2018-08-19 16:01:57 +0200 | 
|---|---|---|
| committer | Christian Grothoff <christian@grothoff.org> | 2018-08-19 16:01:57 +0200 | 
| commit | 0df2028f96f5977739d4659bf253e0c6d9468326 (patch) | |
| tree | 906222af6c332e219af4a5d112891d7212237de3 /src/exchange/taler-exchange-httpd_refresh_melt.c | |
| parent | ddca1f5c68e112928d715e1aee2758c40e14fb51 (diff) | |
make transactions smaller to try to reduce rollbacks
Diffstat (limited to 'src/exchange/taler-exchange-httpd_refresh_melt.c')
| -rw-r--r-- | src/exchange/taler-exchange-httpd_refresh_melt.c | 16 | 
1 files changed, 16 insertions, 0 deletions
diff --git a/src/exchange/taler-exchange-httpd_refresh_melt.c b/src/exchange/taler-exchange-httpd_refresh_melt.c index 08ceaa86..83bf197e 100644 --- a/src/exchange/taler-exchange-httpd_refresh_melt.c +++ b/src/exchange/taler-exchange-httpd_refresh_melt.c @@ -474,6 +474,22 @@ TEH_REFRESH_handler_refresh_melt (struct TEH_RequestHandler *rh,      goto cleanup;    } +  /* make sure coin is 'known' in database */ +  { +    struct TEH_DB_KnowCoinContext kcc; +    int mhd_ret; + +    kcc.coin = &rmc.refresh_session.coin; +    kcc.connection = connection; +    if (GNUNET_OK != +        TEH_DB_run_transaction (connection, +                                "know coin for refresh-melt", +                                &mhd_ret, +                                &TEH_DB_know_coin_transaction, +                                &kcc)) +      return mhd_ret; +  } +    res = handle_refresh_melt (connection,                               &rmc);  | 
