erigon-pulse/core/state
ledgerwatch 0a31f5ac2a
Workaround for the code history of BSC system contracts (#6274)
Works around a flaw in the upgrade logic of the system contracts. Since
they are updated directly, without first being self-destructed and then
re-created, the usual incarnation logic does not get activated, and all
historical records of the code of these contracts are retrieved as the
most recent version. This problem will not exist in erigon3, but until
then, a workaround will be used to access code of such contracts through
a special structure, `SystemContractCodeLookup`

Fixes https://github.com/ledgerwatch/erigon/issues/5865

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-12-10 22:41:04 +00:00
..
contracts rename (#1978) 2021-05-20 19:25:53 +01:00
exec E3: fix unwind changes visibility (#6147) 2022-11-30 08:31:13 +07:00
access_list_test.go Workaround for the code history of BSC system contracts (#6274) 2022-12-10 22:41:04 +00:00
access_list.go rename (#1978) 2021-05-20 19:25:53 +01:00
cached_reader2.go RemoteRPC: coherentCache for kv.Code; LocalRPC: enable small blocksLRU (#2815) 2021-10-12 12:04:04 +07:00
cached_reader.go rename (#1978) 2021-05-20 19:25:53 +01:00
cached_writer.go remove ctx from state writer interface (#2302) 2021-07-05 15:42:44 +07:00
change_set_writer.go Update skip analysis (#4364) 2022-06-04 16:54:22 +01:00
database_test.go Workaround for the code history of BSC system contracts (#6274) 2022-12-10 22:41:04 +00:00
database.go remove ctx from state writer interface (#2302) 2021-07-05 15:42:44 +07:00
db_state_reader.go move kv to erigon-lib (#2467) 2021-07-29 18:53:13 +07:00
db_state_writer.go E3: parallel exec, apply on roTx (#5879) 2022-10-28 08:47:45 +07:00
dump.go Inner errors (#2774) 2021-10-04 22:16:52 +07:00
helper.go Don't store RLPs in valueNodes (except tests). 2019-11-13 20:08:20 +01:00
history_reader_22.go Fix test e3 (#6087) 2022-11-20 10:58:20 +07:00
history_reader_23.go erigon22: HistoryReader22 #5203 2022-08-27 15:36:42 +07:00
history_reader_inc.go [e3] Incremental reconstitution (#6270) 2022-12-10 09:34:17 +00:00
history_test.go Fix test e3 (#6087) 2022-11-20 10:58:20 +07:00
history.go Fix test e3 (#6087) 2022-11-20 10:58:20 +07:00
intra_block_state_test.go Use go:build lines and remove obsolete +build lines (#4175) 2022-05-17 14:46:53 +07:00
intra_block_state.go e3: experiment with Ibs.Reset (#6159) 2022-12-04 11:45:06 +07:00
journal.go storage override revert support (#3597) 2022-02-23 21:53:53 +00:00
plain_readonly.go Workaround for the code history of BSC system contracts (#6274) 2022-12-10 22:41:04 +00:00
plain_state_reader.go cache state check (#5844) 2022-11-07 13:04:31 +00:00
plain_state_writer.go cache state check (#5844) 2022-11-07 13:04:31 +00:00
recon_state.go [e3] Incremental reconstitution (#6270) 2022-12-10 09:34:17 +00:00
recon_writer_inc.go [e3] Incremental reconstitution (#6270) 2022-12-10 09:34:17 +00:00
rw22.go e3: don't put nil to pool (#6219) 2022-12-06 13:07:16 +07:00
state_object_test.go rename (#1978) 2021-05-20 19:25:53 +01:00
state_object.go [erigon2.2] State reconstitution prototype (#4508) 2022-07-02 20:48:42 +01:00
state_test.go Workaround for the code history of BSC system contracts (#6274) 2022-12-10 22:41:04 +00:00