Alex Kremer
b07fbb14dc
Refactor ETL into smaller components ( #649 )
...
Fixes #666 and #664
2023-06-02 16:12:06 +01:00
Alex Kremer
d816ef54ab
Reformat codebase with 120 char limit ( #583 )
2023-04-06 11:24:36 +01:00
Alex Kremer
d86104577b
Implement new experimental cassandra backend ( #537 )
2023-03-29 19:38:38 +01:00
cyan317
4180d81819
Fix subscription forward issue ( #544 )
...
Fixes #552
2023-03-23 13:54:55 +00:00
ledhed2222
b25ac5d707
Write NFT URIs to nf_token_uris table and pull from it for nft_info API ( #313 )
...
Fixes #308
2023-03-20 17:43:31 +00:00
Francis Mendoza
992d5a7a70
[FOLDED] Eliminate remaining bypass and add comment on rare edge case where it's necessary ( #298 ) ( #484 )
2023-01-25 13:49:28 -08:00
Alex Kremer
1708b929b8
Demote couple errors to warning/info in ETLSource ( #471 )
...
Fixes #468
2023-01-16 11:16:20 +00:00
cyan317
a377514287
Replace unique_lock with scoped_lock ( #467 )
...
Fixes #466
2023-01-10 17:50:53 +00:00
cyan317
2f65a26dc7
Add time measurement profiler ( #458 )
...
Rebase
2022-12-20 18:57:47 +00:00
Alex Kremer
f81086f40c
Add copyright to top of each source file ( #444 )
...
Fixes #411
2022-12-12 21:11:01 +00:00
Alexander Kremer
bf217345ae
Update headers to use #pragma once
2022-11-23 14:26:16 -08:00
Alex Kremer
a47bf2e8fe
Implement logging abstraction ( #371 )
...
Fixes #290
2022-11-17 22:02:16 +00:00
Alex Kremer
ea2837749a
Implement an abstraction for the config ( #358 )
...
Fixes #321
2022-11-01 16:59:23 +00:00
CJ Cobb
8bd8ab9b8a
Fix bug on cache download from peer when ledger not found ( #370 )
2022-10-26 22:30:39 -04:00
Alex Kremer
5bf334e5f7
Remove postgres support from clio ( #327 )
...
Fixes #310
2022-10-04 18:00:37 +01:00
CJ Cobb
97ef66d130
Allow server to download cache from another clio server ( #246 )
...
* Allow server to download cache from another clio server
* Config takes an array of clio peers. If any of these peers have a
full cache, clio picks a peer at random to download the cache from.
Otherwise, fall back to downloading cache from the database.
2022-10-04 12:29:29 -04:00
Alex Kremer
744af4b639
Implement unique taging of incoming requests ( #311 )
...
Fixes #212
2022-09-29 21:56:29 +01:00
Alex Kremer
ccf73dc68c
Fix ProbingETL toJson to serialize underlying source states ( #325 )
...
Fixes #323
2022-09-28 00:30:56 +01:00
Alex Kremer
d4a9560c3f
Implement subscription for book_changes ( #315 )
...
Fixes #315
2022-09-27 00:20:53 +01:00
Alex Kremer
1ada879072
Probing ETL Source ( #292 )
...
* Implement a probing ETL source and do not require SSL certs for SslETLSource (#251 )
Fixes #251
2022-09-12 23:32:13 +01:00
Alex Kremer
e2792f5a0c
Fix compiler warnings ( #306 )
2022-09-12 21:35:30 +01:00
Alex Kremer
97c431680a
Add 20 second timeout for ETLSource websocket ( #297 )
...
Fixes #289
2022-09-12 16:09:46 +01:00
CJ Cobb
83a099a547
Fix bug where some ledgers are not being published ( #281 )
...
* The ledger close time can occasionally be a few seconds in the future,
which causes ETL to not publish the ledger, because the age
calculation wraps around and the age is computed as a very large
unsigned integer. This fix rounds to zero when the age would be
negative
2022-09-07 16:17:42 -04:00
CJ Cobb
816625c44e
set grpc max message size to unlimited ( #249 )
2022-08-23 09:30:18 -04:00
CJ Cobb
81f7171368
wrap atomics in shared_ptr for cache download ( #230 )
2022-07-29 10:56:08 -04:00
ledhed2222
6bf8c5bc4e
Add NFT-specific data stores and add nft_info API ( #98 )
2022-07-26 15:01:14 -04:00
CJ Cobb
2ffd98f895
Fine tune cache download ( #215 )
...
* Fine tune cache download
* Allow operators to specify the max number of concurrent markers. The
software generates possible markers from ledger diffs, as before, but
only processes a specified number at one time, which caps database
reads and distributes the load more evenly over the entire download.
* Allow operators to specify the page fetch size during the cache
download, which is the number of ledger objects to fetch per marker at
one time.
* Refactor full ledger dump in test.py
2022-07-26 15:00:27 -04:00
CJ Cobb
05d09cc352
Only fetch validated ledgers
2022-07-08 12:10:12 -04:00
ethanlabelle
4579fa2f26
Use ledger close times for stale data warning ( #194 )
2022-06-29 16:10:03 -07:00
CJ Cobb
20c2654abc
bypass forwarding cache if ledger_index is current or closed ( #185 )
2022-06-17 14:06:47 -05:00
Nathan Nichols
166ff63dbc
cache commands that dont take parameters ( #153 )
...
* Adds a forwardCache to each ETLSource which allows operators to specify which commands (that don't require parameters) they want to cache.
2022-06-15 16:18:25 -05:00
ethanlabelle
b45b34edb1
append warning to response if clio is out of date ( #175 )
...
Fixes #46 .
2022-06-14 13:50:42 -05:00
Nathan Nichols
3f47b85e3b
disable cache when CacheLoadStyle::NONE ( #152 )
2022-05-15 19:29:05 -05:00
Nathan Nichols
1d5c482d9c
Make Clio RPCs more consistent with rippled ( #110 )
...
* parse ledger_index as number
* allow websocket to use "command" or "method"
* mark all non-forwarded responses as validated
* dont mark forwarded errors as successful
* reduce forwarding Websocket expiration 30->3 seconds
* fix merge conflict in test.py
* adds ledger_current and ledger_closed
* deserialize `taker_gets_funded` into amount json
* limit account RPCs by number of objects traversed
* assign result correctly
2022-03-21 18:28:03 -05:00
CJ Cobb
945222840b
change etl failover timeout to 10 seconds
2022-03-21 13:57:35 -07:00
CJ Cobb
39459ef6da
refactor publish logic
2022-03-21 13:57:35 -07:00
CJ Cobb
d3681df253
publish ledgers closed in the last ten minutes
2022-03-21 13:57:35 -07:00
CJ Cobb
b1add848f4
add etl info to server_info response
2022-03-21 13:57:35 -07:00
CJ Cobb
bcd59ddf73
generate cursors for cache download with configurable number of diffs
2022-03-21 13:57:35 -07:00
CJ Cobb
16e3c87dcc
don't create strands for cache download. output cache info in server_info
2022-03-21 13:57:35 -07:00
CJ Cobb
15505905cb
populate cache using coroutines. optionally disable cache
2022-03-21 13:57:35 -07:00
CJ Cobb
6fe957ef8f
cache fixes. remove defer reads flag. check latest sequence in etl
2022-03-11 20:01:39 -05:00
CJ Cobb
16f0159122
fix off by one error in read only monitor
2022-03-10 10:10:32 -05:00
CJ Cobb
1c3e7db8a0
init latestSequence
2022-03-09 13:54:10 -05:00
CJ Cobb
a8a87c2cff
parallel cache population
2022-03-09 09:34:16 -08:00
CJ Cobb
1510f24f4b
ETL fixes
...
* Don't use cache if cache is more recent than extracted ledger
* Use hardFetchLedgerRangeNoThrow exclusively in ETL, to prevent race
condition
2022-03-08 00:26:21 -05:00
CJ Cobb
ce01414fb3
Catch database timeout in coroutine
2022-03-07 15:55:48 -05:00
CJ Cobb
b332c388d2
Load cache from our own database
2022-03-07 15:55:42 -05:00
CJ Cobb
799bf58c95
Check optional before dereferencing
2022-03-04 16:02:20 -05:00
CJ Cobb
15004d80ee
Log AsyncCallData error at error level
2022-03-03 21:50:13 -05:00