Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mist doesn't start on OSX #181

Closed
frewsxcv opened this issue Nov 11, 2014 · 4 comments
Closed

Mist doesn't start on OSX #181

frewsxcv opened this issue Nov 11, 2014 · 4 comments

Comments

@frewsxcv
Copy link
Contributor

Just tried to build the project with Homebrew. Couldn't start Mist.

~ $ brew reinstall go-ethereum --HEAD
==> Reinstalling go-ethereum
==> Cloning https://github.com/ethereum/go-ethereum.git
Updating /Library/Caches/Homebrew/go-ethereum--git
==> Checking out branch master
==> go env
==> go get -v -u -d github.com/ethereum/go-ethereum/ethereum
==> go get -v -u -d github.com/ethereum/go-ethereum/mist
==> mv mist src/
==> mv ethereum src/
==> go build -v ./src/ethereum
==> go build -v ./src/mist
==> mv src/mist/assets /usr/local/Cellar/go-ethereum/0.6.7-33/Resources
==> Caveats
To have launchd start go-ethereum at login:
    ln -sfv /usr/local/opt/go-ethereum/*.plist ~/Library/LaunchAgents
Then to load go-ethereum now:
    launchctl load ~/Library/LaunchAgents/homebrew.mxcl.go-ethereum.plist
==> Summary
🍺  /usr/local/Cellar/go-ethereum/0.6.7-33: 2100 files, 77M, built in 81 seconds
~ $ mist
2014/11/11 12:15:03 [CLI] identity created
panic: runtime error: index out of range

goroutine 22 [running]:
runtime.panic(0x4747060, 0x4c5907c)
    /usr/local/Cellar/go/1.3.3/libexec/src/pkg/runtime/panic.c:279 +0xf5
github.com/ethereum/eth-go.getOurIP(0x0, 0x0, 0x6b8ae08, 0xc208544800)
    /private/tmp/go-ethereum-UiW9sG/src/github.com/ethereum/eth-go/natupnp.go:177 +0x11c
github.com/ethereum/eth-go.Discover(0x0, 0x0, 0x0, 0x0)
    /private/tmp/go-ethereum-UiW9sG/src/github.com/ethereum/eth-go/natupnp.go:85 +0x89d
github.com/ethereum/eth-go.New(0x6b897f0, 0xc208046090, 0x6b89968, 0xc20806e410, 0xc2080a8180, 0x107, 0x417e86f, 0x0, 0x0)
    /private/tmp/go-ethereum-UiW9sG/src/github.com/ethereum/eth-go/ethereum.go:106 +0x78
github.com/ethereum/go-ethereum/utils.NewEthereum(0x6b897f0, 0xc208046090, 0x6b89968, 0xc20806e410, 0xc2080a8180, 0x1, 0x47c7b00, 0x5, 0xa, 0xc208002120)
    /private/tmp/go-ethereum-UiW9sG/src/github.com/ethereum/go-ethereum/utils/cmd.go:150 +0x7d
main.run(0x0, 0x0)
    /private/tmp/go-ethereum-UiW9sG/src/mist/main.go:45 +0x349
gopkg.in/qml%2ev1.func·002()
    /private/tmp/go-ethereum-UiW9sG/src/gopkg.in/qml.v1/bridge.go:60 +0x46
created by gopkg.in/qml%2ev1.Run
    /private/tmp/go-ethereum-UiW9sG/src/gopkg.in/qml.v1/bridge.go:62 +0x1a5

goroutine 16 [syscall]:
gopkg.in/qml%2ev1._Cfunc_applicationExec(0x472a360)
    gopkg.in/qml.v1/_obj/_cgo_defun.c:71 +0x31
gopkg.in/qml%2ev1.Run(0x4a10c40, 0x0, 0x0)
    /private/tmp/go-ethereum-UiW9sG/src/gopkg.in/qml.v1/bridge.go:63 +0x1ac
main.main()
    /private/tmp/go-ethereum-UiW9sG/src/mist/main.go:74 +0x6b

goroutine 19 [finalizer wait]:
runtime.park(0x40f3a20, 0x4c7b710, 0x4c5c4c9)
    /usr/local/Cellar/go/1.3.3/libexec/src/pkg/runtime/proc.c:1369 +0x89
runtime.parkunlock(0x4c7b710, 0x4c5c4c9)
    /usr/local/Cellar/go/1.3.3/libexec/src/pkg/runtime/proc.c:1385 +0x3b
runfinq()
    /usr/local/Cellar/go/1.3.3/libexec/src/pkg/runtime/mgc0.c:2644 +0xcf
runtime.goexit()
    /usr/local/Cellar/go/1.3.3/libexec/src/pkg/runtime/proc.c:1445

goroutine 17 [syscall]:
runtime.goexit()
    /usr/local/Cellar/go/1.3.3/libexec/src/pkg/runtime/proc.c:1445

goroutine 21 [syscall]:
os/signal.loop()
    /usr/local/Cellar/go/1.3.3/libexec/src/pkg/os/signal/signal_unix.go:21 +0x1e
created by os/signal.init·1
    /usr/local/Cellar/go/1.3.3/libexec/src/pkg/os/signal/signal_unix.go:27 +0x32

goroutine 23 [chan send]:
github.com/ethereum/eth-go/ethlog.start()
    /private/tmp/go-ethereum-UiW9sG/src/github.com/ethereum/eth-go/ethlog/loggers.go:75 +0x129
created by github.com/ethereum/eth-go/ethlog.AddLogSystem
    /private/tmp/go-ethereum-UiW9sG/src/github.com/ethereum/eth-go/ethlog/loggers.go:125 +0xec

goroutine 24 [select]:
github.com/syndtr/goleveldb/leveldb/util.(*BufferPool).drain(0xc2080ba2a0)
    /private/tmp/go-ethereum-UiW9sG/src/github.com/syndtr/goleveldb/leveldb/util/buffer_pool.go:192 +0x1b4
created by github.com/syndtr/goleveldb/leveldb/util.NewBufferPool
    /private/tmp/go-ethereum-UiW9sG/src/github.com/syndtr/goleveldb/leveldb/util/buffer_pool.go:222 +0x202

goroutine 25 [select]:
github.com/syndtr/goleveldb/leveldb.(*DB).compactionError(0xc2080226c0)
    /private/tmp/go-ethereum-UiW9sG/src/github.com/syndtr/goleveldb/leveldb/db_compaction.go:115 +0x1fa
created by github.com/syndtr/goleveldb/leveldb.openDB
    /private/tmp/go-ethereum-UiW9sG/src/github.com/syndtr/goleveldb/leveldb/db.go:121 +0x476

goroutine 26 [select]:
github.com/syndtr/goleveldb/leveldb.(*DB).mpoolDrain(0xc2080226c0)
    /private/tmp/go-ethereum-UiW9sG/src/github.com/syndtr/goleveldb/leveldb/db_state.go:73 +0xfb
created by github.com/syndtr/goleveldb/leveldb.openDB
    /private/tmp/go-ethereum-UiW9sG/src/github.com/syndtr/goleveldb/leveldb/db.go:122 +0x48e

goroutine 27 [select]:
github.com/syndtr/goleveldb/leveldb.(*DB).tCompaction(0xc2080226c0)
    /private/tmp/go-ethereum-UiW9sG/src/github.com/syndtr/goleveldb/leveldb/db_compaction.go:699 +0x774
created by github.com/syndtr/goleveldb/leveldb.openDB
    /private/tmp/go-ethereum-UiW9sG/src/github.com/syndtr/goleveldb/leveldb/db.go:125 +0x4d0

goroutine 28 [select]:
github.com/syndtr/goleveldb/leveldb.(*DB).mCompaction(0xc2080226c0)
    /private/tmp/go-ethereum-UiW9sG/src/github.com/syndtr/goleveldb/leveldb/db_compaction.go:646 +0x235
created by github.com/syndtr/goleveldb/leveldb.openDB
    /private/tmp/go-ethereum-UiW9sG/src/github.com/syndtr/goleveldb/leveldb/db.go:126 +0x4e8

goroutine 29 [select]:
github.com/syndtr/goleveldb/leveldb.(*DB).jWriter(0xc2080226c0)
    /private/tmp/go-ethereum-UiW9sG/src/github.com/syndtr/goleveldb/leveldb/db_write.go:37 +0x143
created by github.com/syndtr/goleveldb/leveldb.openDB
    /private/tmp/go-ethereum-UiW9sG/src/github.com/syndtr/goleveldb/leveldb/db.go:127 +0x500
~ $
@F1LT3R
Copy link

F1LT3R commented Dec 28, 2014

+1

I'm downloading the binary browser using the link in the README and it does nothing (quits instantly). Which is better (depending on where you live) than the previous build, which just turns my CPU into a cozy space heater :)

@obscuren
Copy link
Contributor

Could you run with mist -upnp=false

@frewsxcv
Copy link
Contributor Author

Sorry I never got back to you; I just tried reinstalling from master and things seem to work now

@obscuren
Copy link
Contributor

Develop is even better ;-)

ngtuna added a commit to ngtuna/tomochain that referenced this issue Sep 18, 2018
tailingchen added a commit to tailingchen/go-ethereum that referenced this issue Oct 17, 2018
…g-naming

travis.yml: update branch and tag naming
maoueh pushed a commit to streamingfast/go-ethereum that referenced this issue Aug 13, 2021
* config: flag for max acceptable calldata size

* logging: better logline

* api: only have max calldata size when xfers disabled
joshuacolvin0 pushed a commit to joshuacolvin0/go-ethereum that referenced this issue Jan 4, 2023
weiihann pushed a commit to weiihann/go-ethereum that referenced this issue Feb 23, 2023
* Add header and upgrade TransactionTrace

* Add header

* change blockResult struct

* rm chainID from TransactionData

* Rename blockResult to blockTrace in everywhere

* fix comments
jsign added a commit to jsign/go-ethereum that referenced this issue Mar 20, 2023
* alter Trie interface to use caching for slots

* fix: use a lock to protect the point cache (ethereum#185)

* use fastest non-master go-verkle version & pull trie/Verkle.go changes to use new api (ethereum#184)

* mod: update to fastest go-verkle version today

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* trie/verkle: use new batch serialization api

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Co-authored-by: Ignacio Hagopian <jsign.uy@gmail.com>
jsign added a commit to jsign/go-ethereum that referenced this issue Mar 23, 2023
* Unified point cache

* Use cache for Try*Account

* alter Trie interface to use caching for slots (ethereum#181)

* alter Trie interface to use caching for slots

* fix: use a lock to protect the point cache (ethereum#185)

* use fastest non-master go-verkle version & pull trie/Verkle.go changes to use new api (ethereum#184)

* mod: update to fastest go-verkle version today

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* trie/verkle: use new batch serialization api

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Co-authored-by: Ignacio Hagopian <jsign.uy@gmail.com>

* fix: TryDelete signature in unit tests

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Co-authored-by: Ignacio Hagopian <jsign.uy@gmail.com>
rjl493456442 pushed a commit to rjl493456442/go-ethereum that referenced this issue Aug 29, 2023
Squash the main verkle PR ahead of rebase

don't call Bytes() in GetTreeKey (ethereum#137)

trie: avoid endianness conversion in GetTreeKey (ethereum#140)

* trie/utils: add concrete expected value in trie key generation test

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* mod: update to latest go-verkle

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* trie/utils: avoid endianness conversions

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* apply review changes & update to official go-verkle version

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

upgrade go-verkle to CoW version and get TestProcessVerkle to build (ethereum#138)

updating ci to use self-hosted machine (ethereum#143)

fix: storage offset in non-header group + reuse of value buffer (ethereum#145)

dedup call to ChunkifyCode, same as replay branch (ethereum#156)

* dedup call to ChunkifyCode, same as replay branch

* fix some linter issues

fix code offset in tree update (ethereum#157)

fix REVERT in state processor test execution (ethereum#158)

* fix code offset in tree update

* fix REVERT in test execution

save on key hashing: lump code size update with first code chunk group (ethereum#159)

fix code chunk key calculation and storage key calculation (ethereum#161)

* fix codeKey calculation

* Remove

* fix storageOffset

* fix the fix to the fix to the offset fix

* Remove copy/pasted, unused code in test

* fix linter

---------

Co-authored-by: Guillaume Ballet <3272758+gballet@users.noreply.github.com>

fix: infinite loop when calling extcodecopy on empty code (ethereum#151)

upgrade to latest go-verkle

fix: only update code in the tree if it's dirty (ethereum#174)

fix: read-touch the code size and Keccak of the origin (ethereum#175)

List of changes for converting a sepolia database (ethereum#182)

* naive conversion rebased on top of beverly hills

* changes for the sepolia shadow fork conversion

* fixes to please the linter

* fixes to please the linter

Unified point cache (ethereum#180)

* Unified point cache

* Use cache for Try*Account

* alter Trie interface to use caching for slots (ethereum#181)

* alter Trie interface to use caching for slots

* fix: use a lock to protect the point cache (ethereum#185)

* use fastest non-master go-verkle version & pull trie/Verkle.go changes to use new api (ethereum#184)

* mod: update to fastest go-verkle version today

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* trie/verkle: use new batch serialization api

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Co-authored-by: Ignacio Hagopian <jsign.uy@gmail.com>

* fix: TryDelete signature in unit tests

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Co-authored-by: Ignacio Hagopian <jsign.uy@gmail.com>

trie/utils: fix potential overflow (ethereum#191)

* trie/utils: fix potential overflow

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* trie/utils: receive storage key as a byte slice

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* revert formatter changes

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* trie/utils: fix mod 256

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

trie/utils: fix incorrect bigint assignment (ethereum#193)

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

upgrade precomp link to fix CI

fix: add missing code size&keccak leaves in empty accounts (ethereum#192)

fixes to use the latest go-verkle@master (ethereum#197)

* fixes to use the latest go-verkle@master

* linter fixes

* linter fixes for tests

* fix: use jsign's go-verkle fix

refactor: remove unused (*StateDB).GetXLittleEndian methods (ethereum#204)

fix gas accounting issue in state_processor_test.go (ethereum#207)

update go-verkle not to use StatelessNode anymore (ethereum#206)

* update go-verkle not to use StatelessNode anymore

* update go-verkle to latest

refactor: move verkle gas accounting to its own block in TransitionDB (ethereum#208)

fix a panic in deserializeVerkleProof if GetProofItems returns a nil ProofElements

use the cachingDB instead of a custom VerkleDB (ethereum#209)

* use the cachingDB instead of a custom VerkleDB

* fix stack trace in LES

remove holiman from CODEOWNERS as he gets too many emails

read from tree in state object if the snapshot is nil (ethereum#205)

add missing error checks for the root node type (ethereum#214)

implement OpenStorageTrie for verkle trees (ethereum#210)

* implement OpenStorageTrie for verkle trees

* add a few comments for future maintenance

* fix linter issue

fix: copy balance leaf to new buffer in TryGetAccount (ethereum#217)

implement some heretofore unimplemented iterator methods (ethereum#219)

params: move verkle params to their own file (ethereum#228)

fix: proper number of chunk evals (ethereum#215)

overlay transition (ethereum#244)

* overlay transition

Fix some bugs identified in the code review

Co-authored-by: Ignacio Hagopian <jsign.uy@gmail.com>

Include base -> overlay key-values migration logic (ethereum#199)

* mod: add go-verkle version with key-value migration new apis

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* core/stateprocessor: use constant for max number of migrated key-values

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* core: add base->overlay key-values migration logic

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* core: fix some compiler errors

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* trie: consider removing transition trie api in the future

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* mod: use latest go-verkle

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

fix some unit tests errors

get convresion block from file

fix compilation issues

fix initialization issue in migrator

fix: changes needed to run the first 28 blocks

important sutff: fix the banner

fix: use nonce instead of balance in nonce leaf (ethereum#202)

fixes for performing the overlay transition (ethereum#203)

* fixes for performing the overlay transition

* fixes for the full replay

* fix: deletion-and-recreation of EoA

* fixes to replay 2M+ blocks

* upgrade to go-verkle@master

* fix: proper number of chunk evals

* rewrite conversion loop to fix known issues

changes to make replay work with the overlay method (ethereum#216)

* fixes for performing the overlay transition

fixes for the full replay

fix: deletion-and-recreation of EoA

fixes to replay 2M+ blocks

upgrade to go-verkle@master

fix: proper number of chunk evals

rewrite conversion loop to fix known issues

changes to make replay work with the overlay method

fixes to replay 2M+ blocks

update to latest go-verkle@master

* use a PBSS-like scheme for internal nodes (ethereum#221)

* use a PBSS-like scheme for internal nodes

* a couple of fixes coming from debugging replay

* fix: use an error to notify the transition tree that a deleted account was found in the overlay tree (ethereum#222)

* fixes for pbss replay (ethereum#227)

* fixes for pbss replay

* trie/verkle: use capped batch size (ethereum#229)

* trie/verkle: use capped batch size

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* trie/verkle: avoid path variable allocation per db.Put

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* don't keep more than 32 state root conversions in RAM (ethereum#230)

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Co-authored-by: Guillaume Ballet <3272758+gballet@users.noreply.github.com>

* cleanup some code

* mod: update go-verkle

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* re-enable snapshot (ethereum#231)

* re-enable cancun block / snapshot (ethereum#226)

* clear storage conversion key upon translating account (ethereum#234)

* clear storage conversion key upon translating account

* mod: use latest go-verkle

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Co-authored-by: Ignacio Hagopian <jsign.uy@gmail.com>

* fix: self-deadlock with translated root map mutex (ethereum#236)

* return compressed commitment as root commitment (ethereum#237)

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Co-authored-by: Ignacio Hagopian <jsign.uy@gmail.com>

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Co-authored-by: Ignacio Hagopian <jsign.uy@gmail.com>

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Co-authored-by: Ignacio Hagopian <jsign.uy@gmail.com>

fix first panic in *TransitionTrie.Copy()

upgrade go-verkle to latest master

mod: update go-verkle (ethereum#239)

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

core: print state root every 100 blocks (ethereum#240)

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

fix: only Commit the account trie (ethereum#242)

fixes to get TestProcessVerkle to work with the overlay branch (ethereum#238)

* fixes to get TestProcessVerkle to work with the overlay branch

* fix all panics in verkle state processor test

* fix proof verification

move transition management to cachingDB

* fix: mark the verkle transition as started if it's ended without being started

* fix the verkle state processing test

* fix linter errors

* Add a function to clear verkle params for replay

* fix: handle TransitionTrie in OpenStorageTrie

* fix linter issue

* fix the deleted account error (ethereum#247)

* code cleanup (ethereum#248)

* fix: don't error on a missing conversion.txt (ethereum#249)

* Overlay Tree preimages exporting and usage (ethereum#246)

* export overlay preimages tool

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* use preimages flat file in overlay tree migration logic

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* cmd/geth: add --roothash to overlay tree preimage exporting command

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* cleanup

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* review feedback

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* fix: reduce the PR footprint (ethereum#250)

* fix: don't fail when preimages.bin is missing (ethereum#251)

* fix: don't fail when preimages.bin is missing

* fix: don't open the preimages file when outside of transition

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Co-authored-by: Ignacio Hagopian <jsign.uy@gmail.com>

review changes

remove replay-specific code
weiihann pushed a commit to weiihann/go-ethereum that referenced this issue Sep 27, 2023
Squash the main verkle PR ahead of rebase

don't call Bytes() in GetTreeKey (ethereum#137)

trie: avoid endianness conversion in GetTreeKey (ethereum#140)

* trie/utils: add concrete expected value in trie key generation test

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* mod: update to latest go-verkle

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* trie/utils: avoid endianness conversions

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* apply review changes & update to official go-verkle version

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

upgrade go-verkle to CoW version and get TestProcessVerkle to build (ethereum#138)

updating ci to use self-hosted machine (ethereum#143)

fix: storage offset in non-header group + reuse of value buffer (ethereum#145)

dedup call to ChunkifyCode, same as replay branch (ethereum#156)

* dedup call to ChunkifyCode, same as replay branch

* fix some linter issues

fix code offset in tree update (ethereum#157)

fix REVERT in state processor test execution (ethereum#158)

* fix code offset in tree update

* fix REVERT in test execution

save on key hashing: lump code size update with first code chunk group (ethereum#159)

fix code chunk key calculation and storage key calculation (ethereum#161)

* fix codeKey calculation

* Remove

* fix storageOffset

* fix the fix to the fix to the offset fix

* Remove copy/pasted, unused code in test

* fix linter

---------

Co-authored-by: Guillaume Ballet <3272758+gballet@users.noreply.github.com>

fix: infinite loop when calling extcodecopy on empty code (ethereum#151)

upgrade to latest go-verkle

fix: only update code in the tree if it's dirty (ethereum#174)

fix: read-touch the code size and Keccak of the origin (ethereum#175)

List of changes for converting a sepolia database (ethereum#182)

* naive conversion rebased on top of beverly hills

* changes for the sepolia shadow fork conversion

* fixes to please the linter

* fixes to please the linter

Unified point cache (ethereum#180)

* Unified point cache

* Use cache for Try*Account

* alter Trie interface to use caching for slots (ethereum#181)

* alter Trie interface to use caching for slots

* fix: use a lock to protect the point cache (ethereum#185)

* use fastest non-master go-verkle version & pull trie/Verkle.go changes to use new api (ethereum#184)

* mod: update to fastest go-verkle version today

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* trie/verkle: use new batch serialization api

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Co-authored-by: Ignacio Hagopian <jsign.uy@gmail.com>

* fix: TryDelete signature in unit tests

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Co-authored-by: Ignacio Hagopian <jsign.uy@gmail.com>

trie/utils: fix potential overflow (ethereum#191)

* trie/utils: fix potential overflow

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* trie/utils: receive storage key as a byte slice

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* revert formatter changes

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* trie/utils: fix mod 256

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

trie/utils: fix incorrect bigint assignment (ethereum#193)

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

upgrade precomp link to fix CI

fix: add missing code size&keccak leaves in empty accounts (ethereum#192)

fixes to use the latest go-verkle@master (ethereum#197)

* fixes to use the latest go-verkle@master

* linter fixes

* linter fixes for tests

* fix: use jsign's go-verkle fix

refactor: remove unused (*StateDB).GetXLittleEndian methods (ethereum#204)

fix gas accounting issue in state_processor_test.go (ethereum#207)

update go-verkle not to use StatelessNode anymore (ethereum#206)

* update go-verkle not to use StatelessNode anymore

* update go-verkle to latest

refactor: move verkle gas accounting to its own block in TransitionDB (ethereum#208)

fix a panic in deserializeVerkleProof if GetProofItems returns a nil ProofElements

use the cachingDB instead of a custom VerkleDB (ethereum#209)

* use the cachingDB instead of a custom VerkleDB

* fix stack trace in LES

remove holiman from CODEOWNERS as he gets too many emails

read from tree in state object if the snapshot is nil (ethereum#205)

add missing error checks for the root node type (ethereum#214)

implement OpenStorageTrie for verkle trees (ethereum#210)

* implement OpenStorageTrie for verkle trees

* add a few comments for future maintenance

* fix linter issue

fix: copy balance leaf to new buffer in TryGetAccount (ethereum#217)

implement some heretofore unimplemented iterator methods (ethereum#219)

params: move verkle params to their own file (ethereum#228)

fix: proper number of chunk evals (ethereum#215)

overlay transition (ethereum#244)

* overlay transition

Fix some bugs identified in the code review

Co-authored-by: Ignacio Hagopian <jsign.uy@gmail.com>

Include base -> overlay key-values migration logic (ethereum#199)

* mod: add go-verkle version with key-value migration new apis

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* core/stateprocessor: use constant for max number of migrated key-values

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* core: add base->overlay key-values migration logic

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* core: fix some compiler errors

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* trie: consider removing transition trie api in the future

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* mod: use latest go-verkle

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

fix some unit tests errors

get convresion block from file

fix compilation issues

fix initialization issue in migrator

fix: changes needed to run the first 28 blocks

important sutff: fix the banner

fix: use nonce instead of balance in nonce leaf (ethereum#202)

fixes for performing the overlay transition (ethereum#203)

* fixes for performing the overlay transition

* fixes for the full replay

* fix: deletion-and-recreation of EoA

* fixes to replay 2M+ blocks

* upgrade to go-verkle@master

* fix: proper number of chunk evals

* rewrite conversion loop to fix known issues

changes to make replay work with the overlay method (ethereum#216)

* fixes for performing the overlay transition

fixes for the full replay

fix: deletion-and-recreation of EoA

fixes to replay 2M+ blocks

upgrade to go-verkle@master

fix: proper number of chunk evals

rewrite conversion loop to fix known issues

changes to make replay work with the overlay method

fixes to replay 2M+ blocks

update to latest go-verkle@master

* use a PBSS-like scheme for internal nodes (ethereum#221)

* use a PBSS-like scheme for internal nodes

* a couple of fixes coming from debugging replay

* fix: use an error to notify the transition tree that a deleted account was found in the overlay tree (ethereum#222)

* fixes for pbss replay (ethereum#227)

* fixes for pbss replay

* trie/verkle: use capped batch size (ethereum#229)

* trie/verkle: use capped batch size

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* trie/verkle: avoid path variable allocation per db.Put

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* don't keep more than 32 state root conversions in RAM (ethereum#230)

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Co-authored-by: Guillaume Ballet <3272758+gballet@users.noreply.github.com>

* cleanup some code

* mod: update go-verkle

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* re-enable snapshot (ethereum#231)

* re-enable cancun block / snapshot (ethereum#226)

* clear storage conversion key upon translating account (ethereum#234)

* clear storage conversion key upon translating account

* mod: use latest go-verkle

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Co-authored-by: Ignacio Hagopian <jsign.uy@gmail.com>

* fix: self-deadlock with translated root map mutex (ethereum#236)

* return compressed commitment as root commitment (ethereum#237)

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Co-authored-by: Ignacio Hagopian <jsign.uy@gmail.com>

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Co-authored-by: Ignacio Hagopian <jsign.uy@gmail.com>

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Co-authored-by: Ignacio Hagopian <jsign.uy@gmail.com>

fix first panic in *TransitionTrie.Copy()

upgrade go-verkle to latest master

mod: update go-verkle (ethereum#239)

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

core: print state root every 100 blocks (ethereum#240)

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

fix: only Commit the account trie (ethereum#242)

fixes to get TestProcessVerkle to work with the overlay branch (ethereum#238)

* fixes to get TestProcessVerkle to work with the overlay branch

* fix all panics in verkle state processor test

* fix proof verification

move transition management to cachingDB

* fix: mark the verkle transition as started if it's ended without being started

* fix the verkle state processing test

* fix linter errors

* Add a function to clear verkle params for replay

* fix: handle TransitionTrie in OpenStorageTrie

* fix linter issue

* fix the deleted account error (ethereum#247)

* code cleanup (ethereum#248)

* fix: don't error on a missing conversion.txt (ethereum#249)

* Overlay Tree preimages exporting and usage (ethereum#246)

* export overlay preimages tool

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* use preimages flat file in overlay tree migration logic

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* cmd/geth: add --roothash to overlay tree preimage exporting command

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* cleanup

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* review feedback

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>

* fix: reduce the PR footprint (ethereum#250)

* fix: don't fail when preimages.bin is missing (ethereum#251)

* fix: don't fail when preimages.bin is missing

* fix: don't open the preimages file when outside of transition

---------

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Co-authored-by: Ignacio Hagopian <jsign.uy@gmail.com>

review changes

remove replay-specific code
atenjin pushed a commit to alt-research/go-ethereum that referenced this issue Apr 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants