2i order of events
When running a load of mainly 2i queries, there is a huge cost in the previous snapshot code. The time taken to create a clone of the Penciller (duplicating all the LoopState) varied between 1 and 200ms depedning on the size of the LoopState. For 2i queries, most of that LoopState was then being thrown away after running the query against the levelzero_cache. This was taking < 1ms on average. It would be better to avoid the o(100)ms of CPU burning and block for o(1)ms - so th eorder of events have been changed ot filter first so only the small part of the LoopState actually required is copied to the clone.
This commit is contained in:
parent
eb6f668fcd
commit
c92107e4b4
5 changed files with 161 additions and 113 deletions
|
@ -54,6 +54,8 @@
|
|||
{root_path :: string(),
|
||||
max_inmemory_tablesize :: integer(),
|
||||
start_snapshot = false :: boolean(),
|
||||
snapshot_query,
|
||||
bookies_mem :: tuple(),
|
||||
source_penciller :: pid(),
|
||||
levelzero_cointoss = false :: boolean()}).
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue