Christian Kamm
f25c49d983
Configurable max account write queue size
2022-03-16 11:04:30 +01:00
Christian Kamm
80423fdac9
Track "is_selected" to denote closed/reused accounts
2022-01-28 10:12:01 +01:00
Christian Kamm
185bf4f9cf
Postgres: Fix account_write cleanup query
...
Avoid misbehaving in situations where there's an account write for a
slot that doesn't yet have an entry in the slots table by limiting the
slot numbers.
2022-01-20 15:28:16 +01:00
Christian Kamm
dc80d8266c
Process postgres cleanup jobs separately
...
Executing them for every rooted slot may overwhelm the database.
2022-01-20 14:49:51 +01:00
Christian Kamm
7d8fd45de4
Add support for updating a monitoring table
...
That way connector interruptions can be seen directly form the target
database.
2022-01-06 12:54:35 +01:00
Christian Kamm
b1f18c0b13
Fix data deletion not being enableable
2022-01-05 16:02:34 +01:00
Christian Kamm
5b5eaba4ff
Pipeline SQL inserts for better performance
...
Previously insert speed was primarily limited by roundtrip time to the
database since they were fully sequential in each connection. Now a full
batch of inserts is done per connection in parallel.
This could still be improved a lot. Currently each connection will fully
wait for all inserts to be done in the current batch before starting
another one.
2022-01-04 10:15:57 +01:00
Christian Kamm
d5395a3b75
Add config flag for deleting old data
...
Keeping it is very useful for testing.
2022-01-03 10:36:11 +01:00
Christian Kamm
1b885355fd
Fix log messages for slot update retries
2021-12-20 11:28:53 +01:00
Christian Kamm
60ca647650
Do the slot updates before wiping non-rooted account writes
2021-11-26 11:59:23 +01:00
Christian Kamm
c65baee04f
If a slot becomes rooted, mark preceeding non-uncle slots rooted.
...
This fixes the _rooted views, which previously would skip data from
slots that were never actively confirmed to be rooted.
2021-11-26 11:54:08 +01:00
Christian Kamm
a941f486ed
Fix bug introduced by deleting older slots
...
Deleting older slots meant that older (but still most recent) account
writes that had their slot deleted would no longer show up in views.
Now the guarantee is that an account write for a missing slot that is
smaller than the top slot in the slots table is rooted.
To guarantee that, account writes for non-rooted slots that preceed
rooted slots are deleted now.
2021-11-25 10:38:55 +01:00
Christian Kamm
dbfbae1a49
Delay snapshot more, add metric on slot insertion queue
2021-11-15 15:49:59 +01:00
Christian Kamm
dde006243b
Minor clippy fixes
2021-11-15 15:37:29 +01:00
Christian Kamm
8f6bd7bc22
Postgres: Allow parallel slot update connections
...
It would be nicer if many of the writes could happen on the same
connection. Separate connections are only necessary if transactions are
used.
2021-11-15 15:28:18 +01:00
Christian Kamm
343b5408bc
Postgres: Add option to allow invalid certificates
2021-11-14 13:14:19 +01:00
Christian Kamm
c4bf05b1d2
Postgres: Use native-tls to allow TLS connections
2021-11-13 09:32:32 +01:00
Christian Kamm
3a0e2535f0
Use anyhow::Result over Result<T, anyhow::Error>
2021-11-09 14:27:09 +01:00
Christian Kamm
0cdee40851
Metrics cleanup
2021-11-09 14:23:55 +01:00
Christian Kamm
4d5f0c5d10
Basic metrics
2021-11-09 09:00:00 +01:00
Christian Kamm
11f4d6bd67
Use separate pubkey table
2021-11-08 14:10:48 +01:00
Christian Kamm
a17f142875
Use enum for slot status
2021-11-08 12:44:01 +01:00
Christian Kamm
7f6e25e107
Wipe old slots from table, now nothing accumulates
2021-11-08 12:09:14 +01:00
Christian Kamm
47f8bb823d
Remove unnecessary trailing backslashes from multiline string literals
2021-11-08 11:59:57 +01:00
Christian Kamm
d366581826
Make more postgres settings configurable
2021-11-08 11:30:17 +01:00
Christian Kamm
d9cb30c2b3
Make parallel postgres connections configurable
2021-11-08 10:05:17 +01:00
Christian Kamm
e67dd6c235
Split into connector library, and raw and mango binaries
2021-11-08 09:45:41 +01:00