erigon-pulse/core/state
Mark Holt bd9896bf4b
added bor tx indexing with tests (#7826)
This request implements the insertion of Bor ephemeral transactions into
snapshot indexes.

I does this by taking the block hash from the header index and passing
it to the transaction indexer to add an additional index entry per block
into the transaction hash -> block index.

The passed entries are currently contained in an in memory array which
is (32 * number of blocks / sprint size) bytes.

In addition to the functional code there is also an update to the
`dump_test.go` so that it runs `DumpBlocks` to exercise the indexing
code. To facilitate this the `InsertChain` method in `mock_sentry` has
been modified so that it can process >128 blocks.

The code in this request also includes additional bor/consensus code
with the following functions:

`CalculateSprint`
`CalculateSprintCount`

The first function is a modification of the code in erigon-lib so that
the sprints are numerically rather than lexically ordered. This code
should be migrated to erigon-lib and should have its sprint set
calculated once from its underlying map rather than this process being
repeated every calculation.

---------

Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro-2.local>
Co-authored-by: ledgerwatch <akhounov@gmail.com>
Co-authored-by: Enrique Jose  Avila Asapche <eavilaasapche@gmail.com>
Co-authored-by: Giulio <giulio.rebuffo@gmail.com>
2023-07-12 23:31:38 +01:00
..
contracts Block Gas limit contract integration for Chiado (#7727) 2023-06-19 22:06:51 +05:30
historyv2read e2: avoid do RestoreCodeHash twice (#7706) 2023-06-11 12:28:47 +07:00
temporal e3: idx range method (#7767) 2023-06-20 10:58:37 +07:00
access_list_test.go e4: release some tests (#7729) 2023-06-14 10:01:00 +07:00
access_list.go e4: release some tests (#7729) 2023-06-14 10:01:00 +07:00
cached_reader2.go e4: release some tests (#7729) 2023-06-14 10:01:00 +07:00
cached_reader.go e4: release some tests (#7729) 2023-06-14 10:01:00 +07:00
cached_writer.go e4: release some tests (#7729) 2023-06-14 10:01:00 +07:00
change_set_writer.go e3: move domains to tables.go (#7707) 2023-06-11 21:12:05 +07:00
database_test.go e3: release chain maker changes (#7787) 2023-06-23 10:07:42 +07:00
database.go e4: release some tests (#7729) 2023-06-14 10:01:00 +07:00
db_state_reader.go reference hash, address, and chain config from lib (#6536) 2023-01-13 18:12:18 +00:00
db_state_writer.go e3: move domains to tables.go (#7707) 2023-06-11 21:12:05 +07:00
dump.go e3: move domains to tables.go (#7707) 2023-06-11 21:12:05 +07:00
helper.go Don't store RLPs in valueNodes (except tests). 2019-11-13 20:08:20 +01:00
history_reader_inc.go e4: release some tests (#7729) 2023-06-14 10:01:00 +07:00
history_reader_v3.go e4: release some tests (#7729) 2023-06-14 10:01:00 +07:00
history_test.go e3: move domains to tables.go (#7707) 2023-06-11 21:12:05 +07:00
history_walk.go e3: move domains to tables.go (#7707) 2023-06-11 21:12:05 +07:00
intra_block_state_test.go [Devnet tool] Side-quest to improve logging - part 1 (#7445) 2023-05-07 07:28:15 +01:00
intra_block_state.go lru lib version up (#7695) 2023-06-09 13:46:58 +07:00
journal.go Implement EIP-1153 transient storage (#7405) 2023-05-01 18:26:24 +02:00
plain_readonly.go e3: move domains to tables.go (#7707) 2023-06-11 21:12:05 +07:00
plain_state_reader.go fix import cycle in tests 2023-04-19 15:41:12 +07:00
plain_state_writer.go added bor tx indexing with tests (#7826) 2023-07-12 23:31:38 +01:00
recon_state.go e3: less conlicts 2023-04-10 09:38:08 +07:00
recon_writer_inc.go enable more linters #954 (#7179) 2023-03-25 05:13:27 +00:00
rw_v3.go fix for test (#7765) 2023-06-20 02:04:42 +01:00
state_object_test.go reference hash, address, and chain config from lib (#6536) 2023-01-13 18:12:18 +00:00
state_object.go reference hash, address, and chain config from lib (#6536) 2023-01-13 18:12:18 +00:00
state_test.go e4: release some tests (#7729) 2023-06-14 10:01:00 +07:00
transient_storage.go Implement EIP-1153 transient storage (#7405) 2023-05-01 18:26:24 +02:00