add required rowid for diagnostics
This commit is contained in:
parent
a3db0d4a8c
commit
54b3a9e930
@ -26,7 +26,6 @@
|
|||||||
*
|
*
|
||||||
* TODO:
|
* TODO:
|
||||||
* - modify auditordb to allow multiple last serial IDs per table in progress tracking
|
* - modify auditordb to allow multiple last serial IDs per table in progress tracking
|
||||||
* - modify auditordb to return row ID where we need it for diagnostics
|
|
||||||
* - implement coin/denomination audit
|
* - implement coin/denomination audit
|
||||||
* - implement merchant deposit audit
|
* - implement merchant deposit audit
|
||||||
* - see if we need more tables there
|
* - see if we need more tables there
|
||||||
@ -367,11 +366,13 @@ static int
|
|||||||
load_auditor_reserve_summary (struct ReserveSummary *rs)
|
load_auditor_reserve_summary (struct ReserveSummary *rs)
|
||||||
{
|
{
|
||||||
int ret;
|
int ret;
|
||||||
|
uint64_t rowid;
|
||||||
|
|
||||||
ret = adb->get_reserve_info (adb->cls,
|
ret = adb->get_reserve_info (adb->cls,
|
||||||
asession,
|
asession,
|
||||||
&rs->reserve_pub,
|
&rs->reserve_pub,
|
||||||
&master_pub,
|
&master_pub,
|
||||||
|
&rowid,
|
||||||
&rs->a_balance,
|
&rs->a_balance,
|
||||||
&rs->a_withdraw_fee_balance,
|
&rs->a_withdraw_fee_balance,
|
||||||
&rs->a_expiration_date,
|
&rs->a_expiration_date,
|
||||||
@ -402,7 +403,7 @@ load_auditor_reserve_summary (struct ReserveSummary *rs)
|
|||||||
&rs->a_balance)) )
|
&rs->a_balance)) )
|
||||||
{
|
{
|
||||||
report_row_inconsistency ("auditor-reserve-info",
|
report_row_inconsistency ("auditor-reserve-info",
|
||||||
UINT64_MAX, /* FIXME: modify API to get rowid! */
|
rowid,
|
||||||
"currencies for reserve differ");
|
"currencies for reserve differ");
|
||||||
/* TODO: find a sane way to continue... */
|
/* TODO: find a sane way to continue... */
|
||||||
GNUNET_break (0);
|
GNUNET_break (0);
|
||||||
|
@ -300,6 +300,7 @@ postgres_create_tables (void *cls)
|
|||||||
",expiration_date INT8 NOT NULL"
|
",expiration_date INT8 NOT NULL"
|
||||||
",last_reserve_in_serial_id INT8 NOT NULL"
|
",last_reserve_in_serial_id INT8 NOT NULL"
|
||||||
",last_reserve_out_serial_id INT8 NOT NULL"
|
",last_reserve_out_serial_id INT8 NOT NULL"
|
||||||
|
",auditor_reserves_rowid BIGSERIAL"
|
||||||
")");
|
")");
|
||||||
|
|
||||||
SQLEXEC_INDEX("CREATE INDEX auditor_reserves_by_reserve_pub "
|
SQLEXEC_INDEX("CREATE INDEX auditor_reserves_by_reserve_pub "
|
||||||
@ -645,6 +646,7 @@ postgres_prepare (PGconn *db_conn)
|
|||||||
",expiration_date"
|
",expiration_date"
|
||||||
",last_reserve_in_serial_id"
|
",last_reserve_in_serial_id"
|
||||||
",last_reserve_out_serial_id"
|
",last_reserve_out_serial_id"
|
||||||
|
",auditor_reserves_rowid"
|
||||||
" FROM auditor_reserves"
|
" FROM auditor_reserves"
|
||||||
" WHERE reserve_pub=$1 AND master_pub=$2;",
|
" WHERE reserve_pub=$1 AND master_pub=$2;",
|
||||||
2, NULL);
|
2, NULL);
|
||||||
@ -1656,6 +1658,7 @@ postgres_del_reserve_info (void *cls,
|
|||||||
* @param session connection to use
|
* @param session connection to use
|
||||||
* @param reserve_pub public key of the reserve
|
* @param reserve_pub public key of the reserve
|
||||||
* @param master_pub master public key of the exchange
|
* @param master_pub master public key of the exchange
|
||||||
|
* @param[out] rowid which row did we get the information from
|
||||||
* @param[out] reserve_balance amount stored in the reserve
|
* @param[out] reserve_balance amount stored in the reserve
|
||||||
* @param[out] withdraw_fee_balance amount the exchange gained in withdraw fees
|
* @param[out] withdraw_fee_balance amount the exchange gained in withdraw fees
|
||||||
* due to withdrawals from this reserve
|
* due to withdrawals from this reserve
|
||||||
@ -1672,6 +1675,7 @@ postgres_get_reserve_info (void *cls,
|
|||||||
struct TALER_AUDITORDB_Session *session,
|
struct TALER_AUDITORDB_Session *session,
|
||||||
const struct TALER_ReservePublicKeyP *reserve_pub,
|
const struct TALER_ReservePublicKeyP *reserve_pub,
|
||||||
const struct TALER_MasterPublicKeyP *master_pub,
|
const struct TALER_MasterPublicKeyP *master_pub,
|
||||||
|
uint64_t *rowid,
|
||||||
struct TALER_Amount *reserve_balance,
|
struct TALER_Amount *reserve_balance,
|
||||||
struct TALER_Amount *withdraw_fee_balance,
|
struct TALER_Amount *withdraw_fee_balance,
|
||||||
struct GNUNET_TIME_Absolute *expiration_date,
|
struct GNUNET_TIME_Absolute *expiration_date,
|
||||||
@ -1708,12 +1712,10 @@ postgres_get_reserve_info (void *cls,
|
|||||||
struct GNUNET_PQ_ResultSpec rs[] = {
|
struct GNUNET_PQ_ResultSpec rs[] = {
|
||||||
TALER_PQ_result_spec_amount ("reserve_balance", reserve_balance),
|
TALER_PQ_result_spec_amount ("reserve_balance", reserve_balance),
|
||||||
TALER_PQ_result_spec_amount ("withdraw_fee_balance", withdraw_fee_balance),
|
TALER_PQ_result_spec_amount ("withdraw_fee_balance", withdraw_fee_balance),
|
||||||
|
|
||||||
GNUNET_PQ_result_spec_auto_from_type ("expiration_date", expiration_date),
|
GNUNET_PQ_result_spec_auto_from_type ("expiration_date", expiration_date),
|
||||||
|
|
||||||
GNUNET_PQ_result_spec_uint64 ("last_reserve_in_serial_id", last_reserve_in_serial_id),
|
GNUNET_PQ_result_spec_uint64 ("last_reserve_in_serial_id", last_reserve_in_serial_id),
|
||||||
GNUNET_PQ_result_spec_uint64 ("last_reserve_out_serial_id", last_reserve_out_serial_id),
|
GNUNET_PQ_result_spec_uint64 ("last_reserve_out_serial_id", last_reserve_out_serial_id),
|
||||||
|
GNUNET_PQ_result_spec_uint64 ("auditor_reserves_rowid", rowid),
|
||||||
GNUNET_PQ_result_spec_end
|
GNUNET_PQ_result_spec_end
|
||||||
};
|
};
|
||||||
if (GNUNET_OK !=
|
if (GNUNET_OK !=
|
||||||
|
@ -73,6 +73,7 @@ run (void *cls)
|
|||||||
{
|
{
|
||||||
struct GNUNET_CONFIGURATION_Handle *cfg = cls;
|
struct GNUNET_CONFIGURATION_Handle *cfg = cls;
|
||||||
struct TALER_AUDITORDB_Session *session;
|
struct TALER_AUDITORDB_Session *session;
|
||||||
|
uint64_t rowid;
|
||||||
|
|
||||||
GNUNET_log (GNUNET_ERROR_TYPE_INFO,
|
GNUNET_log (GNUNET_ERROR_TYPE_INFO,
|
||||||
"loading database plugin\n");
|
"loading database plugin\n");
|
||||||
@ -303,6 +304,7 @@ run (void *cls)
|
|||||||
session,
|
session,
|
||||||
&reserve_pub,
|
&reserve_pub,
|
||||||
&master_pub,
|
&master_pub,
|
||||||
|
&rowid,
|
||||||
&reserve_balance2,
|
&reserve_balance2,
|
||||||
&withdraw_fee_balance2,
|
&withdraw_fee_balance2,
|
||||||
&date,
|
&date,
|
||||||
|
@ -413,6 +413,7 @@ struct TALER_AUDITORDB_Plugin
|
|||||||
* @param session connection to use
|
* @param session connection to use
|
||||||
* @param reserve_pub public key of the reserve
|
* @param reserve_pub public key of the reserve
|
||||||
* @param master_pub master public key of the exchange
|
* @param master_pub master public key of the exchange
|
||||||
|
* @param[out] rowid which row did we get the information from
|
||||||
* @param[out] reserve_balance amount stored in the reserve
|
* @param[out] reserve_balance amount stored in the reserve
|
||||||
* @param[out] withdraw_fee_balance amount the exchange gained in withdraw fees
|
* @param[out] withdraw_fee_balance amount the exchange gained in withdraw fees
|
||||||
* due to withdrawals from this reserve
|
* due to withdrawals from this reserve
|
||||||
@ -429,6 +430,7 @@ struct TALER_AUDITORDB_Plugin
|
|||||||
struct TALER_AUDITORDB_Session *session,
|
struct TALER_AUDITORDB_Session *session,
|
||||||
const struct TALER_ReservePublicKeyP *reserve_pub,
|
const struct TALER_ReservePublicKeyP *reserve_pub,
|
||||||
const struct TALER_MasterPublicKeyP *master_pub,
|
const struct TALER_MasterPublicKeyP *master_pub,
|
||||||
|
uint64_t *rowid,
|
||||||
struct TALER_Amount *reserve_balance,
|
struct TALER_Amount *reserve_balance,
|
||||||
struct TALER_Amount *withdraw_fee_balance,
|
struct TALER_Amount *withdraw_fee_balance,
|
||||||
struct GNUNET_TIME_Absolute *expiration_date,
|
struct GNUNET_TIME_Absolute *expiration_date,
|
||||||
|
Loading…
Reference in New Issue
Block a user