Christian Grothoff
c2a0196f16
postgres documentation suggests to avoid 'FOR UPDATE' with serializable transactions
2020-08-08 20:01:56 +02:00
Christian Grothoff
ddf95c491a
remove unused/unusable coin_sig, return correct coin_pub in recoup-reveal failure context
2020-07-10 22:33:04 +02:00
Christian Grothoff
c3cd21508b
synchronize with latest GANA
2020-07-08 19:36:08 +02:00
Christian Grothoff
97dfbec081
add h_denom_pub to deposit signatures
2020-07-08 15:46:51 +02:00
Christian Grothoff
81fec09268
simplify DB access: do not fetch fields we do not need
2020-07-08 12:35:01 +02:00
Christian Grothoff
ed5b98a2c2
GNUNET_free_non_null is gone, use GNUNET_free
2020-07-05 16:58:43 +02:00
Christian Grothoff
6eb32a65bf
fix error reporting/handling
2020-07-05 16:50:51 +02:00
Christian Grothoff
4f82885560
towards changing timestamp in deposit confirmation (tests failing)
2020-07-05 16:35:00 +02:00
Christian Grothoff
6772037321
fix invariant check
2020-04-24 00:52:33 +02:00
Christian Grothoff
727eccbe64
add invariant checks for #6214
2020-04-23 11:55:10 +02:00
Christian Grothoff
a039bf4d81
fix #6200
2020-04-22 21:21:48 +02:00
Christian Grothoff
84a40be0bc
fix #6170 and rest of #6164
2020-04-08 23:52:01 +02:00
Christian Grothoff
3404fda463
typos
2020-03-31 20:57:11 +02:00
Christian Grothoff
f052527ea5
fix recoup-refresh audit logic
2020-03-26 20:54:41 +01:00
Christian Grothoff
293c241ae7
fix SQL statements
2020-03-26 20:06:23 +01:00
Christian Grothoff
1b24e2f9bb
more statistics, make explicit table lock optional, can hurt performance badly
2020-03-20 18:38:57 +01:00
Florian Dold
c17f05b5fd
fix critical bug in transaction history query for recoup-refresh
2020-03-20 13:52:29 +05:30
Christian Grothoff
bb7bd4b128
style fixes
2020-03-16 18:29:44 +01:00
Christian Grothoff
4322bbf2f1
move common logic to parse currency into libtalerutil
2020-03-15 20:08:38 +01:00
Christian Grothoff
ffcadbff8c
code cleanup (comments, scoping, naming, indentation)
2020-03-07 00:28:07 +01:00
Christian Grothoff
52d41311ac
new coins => fresh coins, also move comments into the database itself
2020-03-05 23:49:47 +01:00
Christian Grothoff
a49bfef2fb
rename for consistency
2020-03-05 23:02:38 +01:00
Christian Grothoff
7dd52a0892
clean up comments, renaming for clarity
2020-03-05 22:38:19 +01:00
Christian Grothoff
642992f9c3
more renaming
2020-03-04 12:10:11 +01:00
Christian Grothoff
6cc516427b
minor code clean up, renaming for consistency
2020-03-04 11:47:22 +01:00
Christian Grothoff
0a2b049864
big rename fest related to #6067 API renaming
2020-02-29 16:42:10 +01:00
Christian Grothoff
cdaf1ce69b
rename SQL files to make filenames consistent with versioning name
2020-02-09 16:34:40 +01:00
Christian Grothoff
ae5583f044
avoid duping configuration, start to use PQ_connect_with_cfg
2020-02-09 15:53:28 +01:00
Christian Grothoff
52797133a4
fix signal initialization race on startup with shutdown
2020-01-20 12:10:44 +01:00
Christian Grothoff
85f10a86ff
handle case where get_session() is called from main, i.e. in combination with -f option
2020-01-20 11:15:19 +01:00
Florian Dold
26ad7c8191
spelling of 'mismatch'
2020-01-20 02:11:03 +01:00
Christian Grothoff
db669ee495
payback -> recoup stranglers
2020-01-18 23:49:37 +01:00
Christian Grothoff
9317d6d69d
doxygen work
2020-01-18 13:23:17 +01:00
Christian Grothoff
dac255329f
doxygen
2020-01-18 13:23:17 +01:00
Christian Grothoff
646ec32adb
doxygen fixes
2020-01-17 22:17:48 +01:00
Christian Grothoff
6c5155ca74
Florian says libeufin will reject reserve pubs from alternating bank accounts
2020-01-17 20:11:43 +01:00
Christian Grothoff
376277f7e8
remove bogus comment
2020-01-17 20:07:57 +01:00
Christian Grothoff
0328ab313b
use more specific SELECT in exchange aggregator on refunds instead of filtering in application logic later
2020-01-17 15:43:04 +01:00
Christian Grothoff
540b22ce1c
implement rh caching
2020-01-17 12:52:33 +01:00
Christian Grothoff
d3fb16b380
also cover drop/restart cases with psql logic
2020-01-17 12:25:11 +01:00
Christian Grothoff
4b16198b43
moved SQL elimination
2020-01-17 03:11:25 +01:00
Christian Grothoff
d4fded4b66
fix build system
2020-01-17 03:08:30 +01:00
Christian Grothoff
da0a2f39d0
GNUnet PQ API change
2020-01-17 02:24:21 +01:00
Christian Grothoff
8ea2af444f
more work towards DB versioning
2020-01-17 01:55:01 +01:00
Christian Grothoff
5b11d19b67
SQL logic towards DB versioning
2020-01-17 01:28:39 +01:00
Christian Grothoff
d61c2e400a
kill another FIXME
2020-01-16 23:49:34 +01:00
Christian Grothoff
19922fa046
pointless to check denom_sig, do not return
2020-01-16 22:21:18 +01:00
Marcello Stanisci
90e1572039
Adapting wirewatch tests to new style.
2020-01-16 00:12:25 +01:00
Christian Grothoff
19d9369ff6
add another interpreter command to check incoming wire transfers
2020-01-15 15:44:24 +01:00
Marcello Stanisci
e77ccd0390
Preflight checks:
...
put preflight check inside exchangedb start()
function, and provide a preflight method for
auditordb.
2020-01-15 12:36:09 +01:00
Christian Grothoff
4d6ef1da29
eliminate libtalerwire
2020-01-13 18:16:01 +01:00
Christian Grothoff
9443c10d7f
major refactoring, eliminating wire-plugins and moving towards new bank API. main code compiles, testcases known to fail, code sure not to fully work yet
2020-01-11 15:20:17 +01:00
Christian Grothoff
385b3e77df
tighten formatting rules
2019-10-31 12:59:50 +01:00
Christian Grothoff
2696688aa3
fix compiler warnings
2019-10-29 20:57:18 +01:00
Christian Grothoff
c1ce2a03ed
fix NPE
2019-10-26 20:35:36 +02:00
Christian Grothoff
316a77a245
adaptions to libgnunetpq api change ( #5733 )
2019-10-11 23:28:25 +02:00
Christian Grothoff
b46fe9aa21
reindenting with uncrustify
2019-10-05 15:42:08 +02:00
Christian Grothoff
ebd2e7d763
fix leaks and unnecessary fetch of RSA signature on refresh/reveal
2019-09-15 12:39:15 +02:00
Christian Grothoff
e179fb9ba0
fix leak
2019-09-05 03:53:47 +02:00
Christian Grothoff
d2b85341c4
auditor needs serial IDs in coin history
2019-09-03 03:45:18 +02:00
Florian Dold
613217be03
locking for known_coins
2019-08-26 03:09:38 +02:00
Florian Dold
eb55997084
re-format code
2019-08-25 16:18:24 +02:00
Christian Grothoff
aea244d241
drop dead kyc logic
2019-08-23 15:51:44 +02:00
Christian Grothoff
4bf425c902
remove currency field from databases
2019-08-17 21:35:21 +02:00
Christian Grothoff
ccfe99a82d
more denom sig checking in auditor
2019-07-27 20:43:52 +02:00
Christian Grothoff
a654ceafba
make sure reserves are not gc'ed before legal expiration
2019-07-24 12:19:36 +02:00
Christian Grothoff
9e3f4bdd79
getting revocation/payback test with refreshed coins to pass
2019-07-24 11:57:03 +02:00
Christian Grothoff
5844a20f15
implement zombie check
2019-07-24 00:13:53 +02:00
Christian Grothoff
e75d552227
need the hash of coin_ev with an index for select
2019-07-23 23:26:56 +02:00
Christian Grothoff
7d43ad56d3
implement postges_get_old_coin_by_h_blind for #5777
2019-07-23 20:27:48 +02:00
Christian Grothoff
721c1ee73e
extending postgres plugin with functions required to store payback data on refreshed coins for #5777
2019-07-21 20:15:11 +02:00
Christian Grothoff
19e0b66f87
first steps on #5777
2019-06-27 00:04:20 +02:00
Christian Grothoff
c9480d2287
export get-known-coin function from DB API
2019-06-26 21:34:52 +02:00
Christian Grothoff
9a5030b993
add test for json_wire.c logic
2019-06-26 20:43:08 +02:00
Christian Grothoff
3a2f72b4aa
implement /link signatures
2019-06-26 15:34:44 +02:00
Christian Grothoff
4f846eab96
fix #5756 , also change sepa->iban as per payto:// spec
2019-06-08 19:55:18 +02:00
Christian Grothoff
2f0015b803
add locking to avoid transaction retries
2019-06-05 21:26:27 +02:00
Christian Grothoff
39263a48d3
fix #5716
2019-05-09 12:55:22 +02:00
Christian Grothoff
de9fdf860a
replace denom_pub with denom_pub_hash in exchange API to reduce bandwidth
2019-05-02 21:16:51 +02:00
Christian Grothoff
32a3a0ffb0
add post HTTP request check for hanging transactions
2019-04-18 14:38:32 +02:00
ng0
b669f0dfae
Refactor plugin_exchangedb_postgres for GNUNET_memcmp
2019-04-08 18:43:23 +00:00
Christian Grothoff
9413537e6d
add missing comments
2019-02-16 23:52:12 +01:00
Christian Grothoff
1a542148a6
implement iterate_denomination_info() call
2019-02-16 21:38:12 +01:00
Christian Grothoff
e56ed85f4f
preparations for #5536
2019-02-14 13:41:46 +01:00
Christian Grothoff
ac850bfcd2
add auditing of deposit confirmations to auditor ( #5447 )
2018-11-04 17:36:56 +01:00
Christian Grothoff
be9ff317dd
add operation to count number of known coins per denomination to exchangedb
2018-10-28 11:38:45 +01:00
Christian Grothoff
fb952babf6
reduce redundant data fetch ( #5444 )
2018-10-19 11:01:49 +02:00
Christian Grothoff
1f7f187d9e
typo
2018-08-19 17:24:13 +02:00
Christian Grothoff
190a1fadaf
re-init logging so we can tell by PID who it is
2018-08-19 17:19:27 +02:00
Christian Grothoff
0df2028f96
make transactions smaller to try to reduce rollbacks
2018-08-19 16:01:57 +02:00
Christian Grothoff
1ee55ea838
make wirewatch properly handle (soft) failed transations
2018-08-11 10:55:50 +02:00
Christian Grothoff
b2f602b1ac
add more logging to more clearly see real conficts, add AUTO_EXPLAIN option to analyze query performance
2018-08-10 22:30:38 +02:00
Christian Grothoff
e0935af764
add a few more FOR UPDATE where appropriate
2018-08-10 19:12:57 +02:00
Christian Grothoff
bce6a80f38
try with row locking to avoid rollbacks (in theory, to be verified)
2018-08-09 22:27:43 +02:00
Marcello Stanisci
9942032ae9
Add "general_id" for merchants into the DB system.
2018-07-18 11:29:30 +02:00
Marcello Stanisci
cbed072b27
Remove convenience note.
2018-07-10 15:56:57 +02:00
Marcello Stanisci
4630d92bd0
Test last change.
2018-07-10 15:56:26 +02:00
Marcello Stanisci
dd9837ff8b
Put logic to delete KYC events for merchant
2018-07-10 15:53:35 +02:00
Marcello Stanisci
1d81c99dca
note
2018-07-10 15:39:44 +02:00
Marcello Stanisci
6801c690b7
Test last change.
2018-07-10 15:37:56 +02:00
Marcello Stanisci
61e737f03e
Put logic to sum KYC-monitored wire transfers.
2018-07-10 15:30:17 +02:00
Marcello Stanisci
109a4a5aa1
KYC DB methods: store a wire transfer.
2018-07-10 13:08:53 +02:00
Marcello Stanisci
8f6b8dbe97
Fix SELECT statement.
2018-07-10 11:52:13 +02:00
Marcello Stanisci
5e25d7dbcf
Improve KYC status callback.
...
More parameters for this callback.
2018-07-09 21:15:47 +02:00
Marcello Stanisci
01158a4817
Method to mark a merchant as NOT KYC-checked.
2018-07-09 10:55:31 +02:00
Marcello Stanisci
cd2538efb5
Method to retrieve the KYC status of a merchant.
2018-07-09 10:37:12 +02:00
Marcello Stanisci
7c94a71def
Method to mark merchant as KYC-checked.
2018-07-09 10:05:59 +02:00
Marcello Stanisci
c13973626b
KYC db methods.
...
Add method to insert a merchant into the monitored
entries, and associates a "FALSE" KYC status to it.
2018-07-09 09:44:16 +02:00
Marcello Stanisci
edf3738b3f
Put KYC-related low-level DB methods.
2018-07-06 15:24:03 +02:00
Marcello Stanisci
f033320300
Addressing #5291 .
2018-06-27 16:49:23 +02:00
Christian Grothoff
202827ebda
merging Florian's changes with my wire changes
2018-04-15 12:20:00 +02:00
Christian Grothoff
081ffe994a
expand logging of HARD errors in DB reserve inserts
2018-04-04 17:01:59 +02:00
Christian Grothoff
aea82d3dcd
allow auditor to operate per-account
2018-04-02 21:12:18 +02:00
Christian Grothoff
cb55c1a3af
Changing configuration structure to enable multiple accounts.
...
This change enables using multiple wire plugins at the same time.
Also, we now distinguish between the wire plugin (i.e. EBICS or
taler_bank) and the wire method (i.e. SEPA or x-taler-bank) that
the wire plugin is implementing. The "taler-bank" wire method
was renamed from "test" to "x-taler-bank".
This also changes the format of the /wire response of the exchange,
as we now need to return multiple accounts. Note that wire fees
are specified per wire method, not per wire account.
taler-exchange-keyup now automatically signs all of the /wire
responses in the location specified by the configuration.
Account identification in wire plugins was changed to use
payto://-URLs instead of method-specific JSON fields. Signing
and validation of /wire responses was moved from each wire
plugin to a generic validation method in libtalerutil (crypto)
or libtalerjson (for JSON-formatted inputs).
Convenience methods were added to generate JSON for wire accounts
(salting, signing).
Various section and option names were adjusted to streamline the
configuration and make it more consistent overall. Documentation
was updated as well.
2018-04-02 14:29:44 +02:00
Christian Grothoff
cb623d44cb
ensure transaction_name is also set for deferred_wire_out transaction, re-use postgres_start logic
2018-03-12 11:39:31 +01:00
Christian Grothoff
a166ca7fec
fix #5281 for exchange: do preflight check that an old transaction is no longer running by accident
2018-03-12 11:33:10 +01:00
Florian Dold
48fd50f922
exchangedb/postgres: handle duplicate wire transfers correctly
2018-02-05 21:49:35 +01:00
Christian Grothoff
2526143a4f
fix type for bool to match what postgres returns -- 1 byte instead of 4 bytes
2018-01-15 15:18:00 +01:00
Christian Grothoff
5587732f52
fix auditor to properly verify wire fee signatures and more gracefully handle arithmetic amount issue
2018-01-04 00:41:19 +01:00
Christian Grothoff
d9f16db0ef
add testcase for 'select_refunds_by_coin'
2018-01-03 01:10:23 +01:00
Christian Grothoff
41b5dde709
implement select_refunds_by_coin in exchangedb plugin
2018-01-02 14:43:15 +01:00
Christian Grothoff
23cb1d46a8
fix enum confusion
2017-12-09 23:46:05 +01:00
Christian Grothoff
5540747ca2
patch to address #5183 : always round time before giving it to DB, tolerate DB answering without rounded time
2017-11-30 17:17:37 +01:00
Christian Grothoff
499247a480
fixing #5178
2017-11-29 20:23:08 +01:00
Christian Grothoff
029d3239e1
test select_deposits_missing_wire, fix uninitialized wire_deadline in deposit listing
2017-11-19 22:01:29 +01:00
Christian Grothoff
215c6db54c
true/false are keywords, use all-caps
2017-11-04 18:03:55 +01:00
Christian Grothoff
272f1135fc
add exchangedb function for #4961
2017-10-16 17:57:29 +02:00
Christian Grothoff
7cb48a720b
check json_array_append_new() return values, proper logging on errors
2017-09-26 12:30:24 +02:00
Christian Grothoff
7aa23a39bd
add support for #4840 (/keys cherry picking) to libtalerexchange
2017-09-12 15:34:38 +02:00
Christian Grothoff
a301aadd28
add missing indices where needed
2017-07-14 18:18:23 +02:00
Christian Grothoff
3a0e643b68
add UNIQUE constraint on BIGSERIAL columns as that is not automatic in Postgres
2017-07-14 17:56:47 +02:00
Christian Grothoff
0ea012e316
make reserves_update more canonical, avoiding odd WHERE constraint that is unnecessary
2017-07-14 17:52:09 +02:00
Christian Grothoff
e1aa257ee1
select on denom_pub_hash instead of denom_pub as the hash is a primary key
2017-07-14 17:49:34 +02:00
Christian Grothoff
2c6956f32a
clean up PQ tables (renamings, remove redunant column), and primarily fix #4751
2017-07-14 17:43:07 +02:00
Christian Grothoff
5d6dfde044
fix #4955 in auditordb, clean up fix in exchangedb
2017-07-04 23:33:57 +02:00
Christian Grothoff
f9950799fc
eliminate dead macros
2017-07-04 23:28:03 +02:00
Christian Grothoff
560051e6b0
migrating auditordb to new API to address #5010
2017-06-24 23:06:44 +02:00
Christian Grothoff
c42d544736
convert rest of exchangedb plugin API to fix #5010-issues
2017-06-24 16:15:42 +02:00
Christian Grothoff
2d662e3f8e
fix #5010 for taler-exchange-aggregator
2017-06-24 12:15:11 +02:00
Christian Grothoff
0599b3b35b
need extra font to build on my system
2017-06-24 09:35:02 +02:00
Christian Grothoff
9aa2e94812
working on #5010 for aggregator
2017-06-24 00:41:41 +02:00
Christian Grothoff
6acb0271d6
address #5010 for wirewatch
2017-06-23 14:37:53 +02:00
Christian Grothoff
ff8633910d
adapt /admin/add/incoming to #5010
2017-06-23 14:13:54 +02:00
Christian Grothoff
d4884c0c60
Fix #5010 for keystate
2017-06-23 13:16:12 +02:00
Christian Grothoff
fbff951e7d
address #5010 for /refresh/melt
2017-06-22 11:49:40 +02:00
Christian Grothoff
053096475f
fixing #5010 for /refresh/reveal
2017-06-20 22:33:20 +02:00
Christian Grothoff
39db1ae5db
address #5010 for /refresh/link
2017-06-20 13:40:17 +02:00
Christian Grothoff
703c54a279
fix #5010 for /track/transaction
2017-06-19 20:46:24 +02:00
Christian Grothoff
a0c66e7919
fix #5010 for /track/transfer
2017-06-19 20:12:00 +02:00
Christian Grothoff
51ee20102f
address #5010 for /payback
2017-06-19 17:53:42 +02:00