diff --git a/.github/workflows/rocksdb-unit_tests.yml b/.github/workflows/rocksdb-unit_tests.yml index 9664c4e1a3..62e98a1ef7 100644 --- a/.github/workflows/rocksdb-unit_tests.yml +++ b/.github/workflows/rocksdb-unit_tests.yml @@ -56,7 +56,7 @@ jobs: run: | export CGO_CFLAGS="-I/usr/local/include" export CGO_LDFLAGS="-L/usr/local/lib -lrocksdb -lz -lbz2 -lsnappy -llz4 -lzstd -ljemalloc" - go test -v -mod=readonly -tags=rocksdbBackend ./sei-db/ss/rocksdb/... -covermode=atomic -coverprofile=./rdb-profile.out + go test -v -mod=readonly -tags=rocksdbBackend ./sei-db/db_engine/rocksdb/... -covermode=atomic -coverprofile=./rdb-profile.out - name: Upload coverage to Codecov uses: codecov/codecov-action@v5 with: diff --git a/app/app.go b/app/app.go index 653298491c..dab67151b0 100644 --- a/app/app.go +++ b/app/app.go @@ -98,8 +98,8 @@ import ( evmrpcconfig "github.com/sei-protocol/sei-chain/evmrpc/config" "github.com/sei-protocol/sei-chain/precompiles" putils "github.com/sei-protocol/sei-chain/precompiles/utils" - "github.com/sei-protocol/sei-chain/sei-db/ss" - seidb "github.com/sei-protocol/sei-chain/sei-db/ss/types" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss" + seidb "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" "github.com/sei-protocol/sei-chain/sei-ibc-go/modules/apps/transfer" ibctransferkeeper "github.com/sei-protocol/sei-chain/sei-ibc-go/modules/apps/transfer/keeper" ibctransfertypes "github.com/sei-protocol/sei-chain/sei-ibc-go/modules/apps/transfer/types" diff --git a/app/seidb.go b/app/seidb.go index e32c1657a7..b4d4729c1e 100644 --- a/app/seidb.go +++ b/app/seidb.go @@ -7,7 +7,7 @@ import ( servertypes "github.com/cosmos/cosmos-sdk/server/types" "github.com/cosmos/cosmos-sdk/storev2/rootmulti" "github.com/sei-protocol/sei-chain/sei-db/config" - seidb "github.com/sei-protocol/sei-chain/sei-db/ss/types" + seidb "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" "github.com/spf13/cast" "github.com/tendermint/tendermint/libs/log" ) diff --git a/app/test_helpers.go b/app/test_helpers.go index 429d04d426..4cf7d6119b 100644 --- a/app/test_helpers.go +++ b/app/test_helpers.go @@ -14,8 +14,8 @@ import ( slashingtypes "github.com/cosmos/cosmos-sdk/x/slashing/types" "github.com/cosmos/cosmos-sdk/x/staking" ssconfig "github.com/sei-protocol/sei-chain/sei-db/config" - "github.com/sei-protocol/sei-chain/sei-db/ss" - seidbtypes "github.com/sei-protocol/sei-chain/sei-db/ss/types" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss" + seidbtypes "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" "github.com/sei-protocol/sei-chain/sei-wasmd/x/wasm" wasmkeeper "github.com/sei-protocol/sei-chain/sei-wasmd/x/wasm/keeper" "github.com/stretchr/testify/suite" diff --git a/evmrpc/server.go b/evmrpc/server.go index 8a6d948080..7326eecf87 100644 --- a/evmrpc/server.go +++ b/evmrpc/server.go @@ -14,7 +14,7 @@ import ( "github.com/sei-protocol/sei-chain/app/legacyabci" evmrpcconfig "github.com/sei-protocol/sei-chain/evmrpc/config" "github.com/sei-protocol/sei-chain/evmrpc/stats" - sstypes "github.com/sei-protocol/sei-chain/sei-db/ss/types" + sstypes "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" evmCfg "github.com/sei-protocol/sei-chain/x/evm/config" "github.com/sei-protocol/sei-chain/x/evm/keeper" "github.com/tendermint/tendermint/libs/log" diff --git a/evmrpc/simulate_test.go b/evmrpc/simulate_test.go index 6142fe4568..adf49080e2 100644 --- a/evmrpc/simulate_test.go +++ b/evmrpc/simulate_test.go @@ -20,7 +20,7 @@ import ( "github.com/sei-protocol/sei-chain/app/legacyabci" "github.com/sei-protocol/sei-chain/evmrpc" "github.com/sei-protocol/sei-chain/example/contracts/simplestorage" - sstypes "github.com/sei-protocol/sei-chain/sei-db/ss/types" + sstypes "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" testkeeper "github.com/sei-protocol/sei-chain/testutil/keeper" "github.com/sei-protocol/sei-chain/x/evm/types" "github.com/stretchr/testify/require" diff --git a/evmrpc/watermark_manager.go b/evmrpc/watermark_manager.go index 5f1c8fafbf..89c4ad1e0f 100644 --- a/evmrpc/watermark_manager.go +++ b/evmrpc/watermark_manager.go @@ -7,7 +7,7 @@ import ( sdk "github.com/cosmos/cosmos-sdk/types" "github.com/ethereum/go-ethereum/rpc" - sstypes "github.com/sei-protocol/sei-chain/sei-db/ss/types" + sstypes "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" rpcclient "github.com/tendermint/tendermint/rpc/client" "github.com/tendermint/tendermint/rpc/coretypes" ) diff --git a/evmrpc/watermark_manager_test.go b/evmrpc/watermark_manager_test.go index 0eaf0f784b..1dcf7f2c25 100644 --- a/evmrpc/watermark_manager_test.go +++ b/evmrpc/watermark_manager_test.go @@ -14,7 +14,7 @@ import ( sdk "github.com/cosmos/cosmos-sdk/types" proto "github.com/sei-protocol/sei-chain/sei-db/proto" - sstypes "github.com/sei-protocol/sei-chain/sei-db/ss/types" + sstypes "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" abci "github.com/tendermint/tendermint/abci/types" "github.com/tendermint/tendermint/libs/bytes" diff --git a/go.work.sum b/go.work.sum index 8595df5116..579b1b3f06 100644 --- a/go.work.sum +++ b/go.work.sum @@ -502,9 +502,7 @@ crawshaw.io/sqlite v0.3.3-0.20220618202545-d1964889ea3c/go.mod h1:igAO5JulrQ1Dbd dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9 h1:VpgP7xuJadIUuKccphEpTJnWhS2jkQyMt6Y7pJCD7fY= gioui.org v0.0.0-20210308172011-57750fc8a0a6 h1:K72hopUosKG3ntOPNG4OzzbuhxGuVf06fa2la1/H/Ho= git.sr.ht/~sbinet/gg v0.3.1 h1:LNhjNn8DerC8f9DHLz6lS0YYul/b602DUxDgGkd/Aik= -github.com/Abirdcfly/dupword v0.0.7/go.mod h1:K/4M1kj+Zh39d2aotRwypvasonOyAMH1c/IZJzE0dmk= github.com/AndreasBriese/bbloom v0.0.0-20190306092124-e2d15f34fcf9/go.mod h1:bOvUY6CB00SOBii9/FifXqc0awNKxLFCL/+pkDPuyl8= -github.com/Antonboom/errname v0.1.7/go.mod h1:g0ONh16msHIPgJSGsecu1G/dcF2hlYR/0SddnIAGavU= github.com/Azure/azure-sdk-for-go/sdk/azcore v1.7.0 h1:8q4SaHjFsClSvuVne0ID/5Ka8u3fcIHyqkLjcFpNRHQ= github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.3.0 h1:vcYCAze6p19qBW7MhZybIsqD8sMV8js0NyQM8JDnVtg= github.com/Azure/azure-sdk-for-go/sdk/internal v1.3.0 h1:sXr+ck84g/ZlZUOZiNELInmMgOsuGwdjjVkEIde0OtY= @@ -524,7 +522,6 @@ github.com/CloudyKit/jet v2.1.3-0.20180809161101-62edd43e4f88+incompatible h1:rZ github.com/CloudyKit/jet v2.1.3-0.20180809161101-62edd43e4f88+incompatible/go.mod h1:HPYO+50pSWkPoj9Q/eq0aRGByCL6ScRlUmiEX5Zgm+w= github.com/CloudyKit/jet/v6 v6.2.0 h1:EpcZ6SR9n28BUGtNJSvlBqf90IpjeFr36Tizxhn/oME= github.com/DataDog/datadog-go v3.2.0+incompatible h1:qSG2N4FghB1He/r2mFrWKCaL7dXCilEuNEeAn20fdD4= -github.com/GaijinEntertainment/go-exhaustruct/v2 v2.3.0/go.mod h1:b3g59n2Y+T5xmcxJL+UEG2f8cQploZm1mR/v6BW0mU0= github.com/GoogleCloudPlatform/cloudsql-proxy v0.0.0-20190129172621-c8b1d7a94ddf h1:8F6fjL5iQP6sArGtPuXh0l6hggdcIpAm4ChjVJE4oTs= github.com/GoogleCloudPlatform/grpc-gcp-go/grpcgcp v1.5.0 h1:oVLqHXhnYtUwM89y9T1fXGaK9wTkXHgNp8/ZNMQzUxE= github.com/GoogleCloudPlatform/grpc-gcp-go/grpcgcp v1.5.0/go.mod h1:dppbR7CwXD4pgtV9t3wD1812RaLDcBjtblcDF5f1vI0= @@ -544,7 +541,6 @@ github.com/Joker/jade v1.1.3 h1:Qbeh12Vq6BxURXT1qZBRHsDxeURB8ztcL6f3EXSGeHk= github.com/Knetic/govaluate v3.0.1-0.20171022003610-9aa49832a739+incompatible h1:1G1pk05UrOh0NlF1oeaaix1x8XzrfjIDK47TY0Zehcw= github.com/Masterminds/goutils v1.1.0 h1:zukEsf/1JZwCMgHiK3GZftabmxiCw4apj3a28RPBiVg= github.com/Masterminds/sprig v2.22.0+incompatible h1:z4yfnGrZ7netVz+0EDJ0Wi+5VZCSYp4Z0m2dk6cEM60= -github.com/OpenPeeDeeP/depguard v1.1.1/go.mod h1:JtAMzWkmFEzDPyAd+W0NHl1lvpQKTvT9jnRVsohBKpc= github.com/RoaringBitmap/roaring v1.2.2 h1:RT+1qfb7a8rkOIxPnyJdvU4G8Ynmhc2YYP6MvzqEtwk= github.com/RoaringBitmap/roaring v1.2.2/go.mod h1:plvDsJQpxOC5bw8LRteu/MLWHsHez/3y6cubLI4/1yE= github.com/Shopify/goreferrer v0.0.0-20181106222321-ec9c9a553398/go.mod h1:a1uqRtAwp2Xwc6WNPJEufxJ7fx3npB4UV/JOLmbu5I0= @@ -573,7 +569,6 @@ github.com/alecthomas/kingpin/v2 v2.4.0/go.mod h1:0gyi0zQnjuFk8xrkNKamJoyUo382HR github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751 h1:JYp7IbQjafoB+tBA3gMyHYHrpOtNuDiK/uB5uXxq5wM= github.com/alecthomas/units v0.0.0-20211218093645-b94a6e3cc137 h1:s6gZFSlWYmbqAuRjVTiNNhvNRfY2Wxp9nhfyel4rklc= github.com/alecthomas/units v0.0.0-20211218093645-b94a6e3cc137/go.mod h1:OMCwj8VM1Kc9e19TLln2VL61YJF0x1XFtfdL4JdbSyE= -github.com/alingse/asasalint v0.0.11/go.mod h1:nCaoMhw7a9kSJObvQyVzNTPBDbNpdocqrSP7t/cW5+I= github.com/anacrolix/chansync v0.3.0 h1:lRu9tbeuw3wl+PhMu/r+JJCRu5ArFXIluOgdF0ao6/U= github.com/anacrolix/chansync v0.3.0/go.mod h1:DZsatdsdXxD0WiwcGl0nJVwyjCKMDv+knl1q2iBjA2k= github.com/anacrolix/dht/v2 v2.19.2-0.20221121215055-066ad8494444 h1:8V0K09lrGoeT2KRJNOtspA7q+OMxGwQqK/Ug0IiaaRE= @@ -665,7 +660,6 @@ github.com/casbin/casbin/v2 v2.37.0/go.mod h1:vByNa/Fchek0KZUgG5wEsl7iFsiviAYKRt github.com/cenkalti/backoff/v4 v4.1.1 h1:G2HAfAmvm/GcKan2oOQpBXOd2tT2G57ZnZGWa1PxPBQ= github.com/cenkalti/backoff/v4 v4.1.1/go.mod h1:scbssz8iZGpm3xbr14ovlUdkxfGXNInqkPWOWmG2CLw= github.com/census-instrumentation/opencensus-proto v0.4.1 h1:iKLQ0xPNFxR/2hzXZMrBo8f1j86j5WHzznCCQxV/b8g= -github.com/chavacava/garif v0.0.0-20220630083739-93517212f375/go.mod h1:4m1Rv7xfuwWPNKXlThldNuJvutYM6J95wNuuVmn55To= github.com/checkpoint-restore/go-criu/v5 v5.0.0 h1:TW8f/UvntYoVDMN1K2HlT82qH1rb0sOjpGw3m6Ym+i4= github.com/cheekybits/is v0.0.0-20150225183255-68e9c0620927 h1:SKI1/fuSdodxmNNyVBR8d7X/HuLnRpvvFO0AgyQk764= github.com/chzyer/logex v1.2.0 h1:+eqR0HfOetur4tgnC8ftU5imRnhi4te+BadWS95c5AM= @@ -708,11 +702,9 @@ github.com/crate-crypto/go-eth-kzg v1.3.0/go.mod h1:J9/u5sWfznSObptgfa92Jq8rTswn github.com/creachadair/command v0.0.0-20220426235536-a748effdf6a1 h1:r626P+s8TKpQaHwIaLmA2nGetfIVYEhtqcs3g2U1dC8= github.com/creachadair/command v0.0.0-20220426235536-a748effdf6a1/go.mod h1:bAM+qFQb/KwWyCc9MLC4U1jvn3XyakqP5QRkds5T6cY= github.com/creack/pty v1.1.9 h1:uDmaGzcdjhF4i/plgjmEsriH11Y0o7RKapEf/LDaM3w= -github.com/cristalhq/acmd v0.8.1/go.mod h1:LG5oa43pE/BbxtfMoImHCQN++0Su7dzipdgBjMCBVDQ= -github.com/curioswitch/go-reassign v0.2.0/go.mod h1:x6OpXuWvgfQaMGks2BZybTngWjT84hqJfKoO8Tt/Roc= +github.com/cristalhq/acmd v0.8.1 h1:mtFp/cbeJNY5jokF9zPz5mRllGHropRrOkOVxeGS6FI= github.com/cyberdelia/templates v0.0.0-20141128023046-ca7fffd4298c h1:/ovYnF02fwL0kvspmy9AuyKg1JhdTRUgPw4nUxd9oZM= github.com/cyphar/filepath-securejoin v0.2.2 h1:jCwT2GTP+PY5nBz3c/YL5PAIbusElVrPujOBSCj8xRg= -github.com/daixiang0/gci v0.8.1/go.mod h1:EpVfrztufwVgQRXjnX4zuNinEpLj5OmMjtu/+MB0V0c= github.com/decred/dcrd/lru v1.0.0 h1:Kbsb1SFDsIlaupWPwsPp+dkxiBY1frcS07PCPgotKz8= github.com/deepmap/oapi-codegen v1.6.0 h1:w/d1ntwh91XI0b/8ja7+u5SvA4IFfM0UNNLmiDR1gg0= github.com/dgraph-io/badger v1.6.0 h1:DshxFxZWXUcO0xX476VJC07Xsr6ZCBVRHKZ93Oh7Evo= @@ -750,7 +742,6 @@ github.com/fasthttp-contrib/websocket v0.0.0-20160511215533-1f3b11f56072 h1:Dddq github.com/fasthttp-contrib/websocket v0.0.0-20160511215533-1f3b11f56072/go.mod h1:duJ4Jxv5lDcvg4QuQr0oowTf7dz4/CR8NtyCooz9HL8= github.com/fatih/structs v1.1.0 h1:Q7juDM0QtcnhCpeyLGQKyg4TOIghuNXrkL32pHAUMxo= github.com/ferranbt/fastssz v0.1.2 h1:Dky6dXlngF6Qjc+EfDipAkE83N5I5DE68bY6O0VLNPk= -github.com/firefart/nonamedreturns v1.0.4/go.mod h1:TDhe/tjI1BXo48CmYbUduTV7BdIga8MAO/xbKdcVsGI= github.com/fjl/gencodec v0.1.0 h1:B3K0xPfc52cw52BBgUbSPxYo+HlLfAgWMVKRWXUXBcs= github.com/flosch/pongo2 v0.0.0-20190707114632-bbf5a6c351f4 h1:GY1+t5Dr9OKADM64SYnQjw/w99HMYvQ0A8/JoUkxVmc= github.com/flosch/pongo2 v0.0.0-20190707114632-bbf5a6c351f4/go.mod h1:T9YF2M40nIgbVgp3rreNmTged+9HrbNTIQf1PsaIiTA= @@ -759,7 +750,6 @@ github.com/fogleman/gg v1.3.0 h1:/7zJX8F6AaYQc57WQCyN9cAIz+4bCJGO9B+dyW29am8= github.com/franela/goblin v0.0.0-20200105215937-c9ffbefa60db h1:gb2Z18BhTPJPpLQWj4T+rfKHYCHxRHCtRxhKKjRidVw= github.com/franela/goreq v0.0.0-20171204163338-bcd34c9993f8 h1:a9ENSRDFBUPkJ5lCgVZh26+ZbGyoVJG7yb5SSzF5H54= github.com/fullstorydev/grpcurl v1.6.0 h1:p8BB6VZF8O7w6MxGr3KJ9E6EVKaswCevSALK6FBtMzA= -github.com/fzipp/gocyclo v0.6.0/go.mod h1:rXPyn8fnlpa0R2csP/31uerbiVBugk5whMdlyaLkLoA= github.com/garslo/gogen v0.0.0-20170306192744-1d203ffc1f61 h1:IZqZOB2fydHte3kUgxrzK5E1fW7RQGeDwE8F/ZZnUYc= github.com/gavv/httpexpect v2.0.0+incompatible h1:1X9kcRshkSKEjNJJxX9Y9mQ5BRfbxU5kORdjhlA1yX8= github.com/gavv/httpexpect v2.0.0+incompatible/go.mod h1:x+9tiU1YnrOvnB725RkpoLv1M62hOWzwo5OXotisrKc= @@ -770,7 +760,6 @@ github.com/ghodss/yaml v1.0.0 h1:wQHKEahhL6wmXdzwWG11gIVCkOv05bNOh+Rxn0yngAk= github.com/go-check/check v0.0.0-20180628173108-788fd7840127 h1:0gkP6mzaMqkmpcJYCFOLkIBwI7xFExG03bbkOkCvUPI= github.com/go-check/check v0.0.0-20180628173108-788fd7840127/go.mod h1:9ES+weclKsC9YodN5RgxqK/VD9HM9JsCSh7rNhMZE98= github.com/go-chi/chi/v5 v5.0.0 h1:DBPx88FjZJH3FsICfDAfIfnb7XxKIYVGG6lOPlhENAg= -github.com/go-critic/go-critic v0.6.5/go.mod h1:ezfP/Lh7MA6dBNn4c6ab5ALv3sKnZVLx37tr00uuaOY= github.com/go-errors/errors v1.0.1/go.mod h1:f4zRHt4oKfwPJE5k8C9vpYG+aDHdBFUsgrm6/TyX73Q= github.com/go-fonts/dejavu v0.1.0 h1:JSajPXURYqpr+Cu8U9bt8K+XcACIHWqWrvWCKyeFmVQ= github.com/go-fonts/latin-modern v0.2.0 h1:5/Tv1Ek/QCr20C6ZOz15vw3g7GELYL98KWr8Hgo+3vk= @@ -788,9 +777,6 @@ github.com/go-redis/redis v6.15.8+incompatible h1:BKZuG6mCnRj5AOaWJXoCgf6rqTYnYJ github.com/go-redis/redis/v8 v8.11.5 h1:AcZZR7igkdvfVmQTPnu9WE37LRrO/YrBH5zWyjDC0oI= github.com/go-stack/stack v1.8.1 h1:ntEHSVwIt7PNXNpgPmVfMrNhLtgjlmnZha2kOpuRiDw= github.com/go-task/slim-sprig v0.0.0-20210107165309-348f09dbbbc0 h1:p104kn46Q8WdvHunIJ9dAyjPVtrBPhSr3KT2yUst43I= -github.com/go-toolsmith/astcopy v1.0.2/go.mod h1:4TcEdbElGc9twQEYpVo/aieIXfHhiuLh4aLAck6dO7Y= -github.com/go-toolsmith/astequal v1.0.2/go.mod h1:9Ai4UglvtR+4up+bAD4+hCj7iTo4m/OXVTSLnCyTAx4= -github.com/go-toolsmith/astequal v1.0.3/go.mod h1:9Ai4UglvtR+4up+bAD4+hCj7iTo4m/OXVTSLnCyTAx4= github.com/go-zookeeper/zk v1.0.2 h1:4mx0EYENAdX/B/rbunjlt5+4RTA/a9SMHBRuSKdGxPM= github.com/go-zookeeper/zk v1.0.2/go.mod h1:nOB03cncLtlp4t+UAkGSV+9beXP/akpekBwL+UX1Qcw= github.com/godbus/dbus/v5 v5.0.4 h1:9349emZab16e7zQvpmsbtjc18ykshndd8y2PG3sgJbA= @@ -798,9 +784,6 @@ github.com/gogo/googleapis v1.4.1 h1:1Yx4Myt7BxzvUr5ldGSbwYiZG6t9wGBZ+8/fX3Wvtq0 github.com/gogo/status v1.1.0 h1:+eIkrewn5q6b30y+g/BJINVVdi2xH7je5MPJ3ZPK3JA= github.com/golang-jwt/jwt v3.2.2+incompatible h1:IfV12K8xAKAnZqdXVzCZ+TOjboZ2keLg81eXfW3O+oY= github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0 h1:DACJavvAHhabrF08vX0COfcOBJRhZ8lUbR+ZWIs0Y5g= -github.com/golangci/gofmt v0.0.0-20220901101216-f2edd75033f2/go.mod h1:9wOXstvyDRshQ9LggQuzBCGysxs3b6Uo/1MvYCR2NMs= -github.com/golangci/golangci-lint v1.50.1/go.mod h1:AQjHBopYS//oB8xs0y0M/dtxdKHkdhl0RvmjUct0/4w= -github.com/golangci/revgrep v0.0.0-20220804021717-745bb2f7c2e6/go.mod h1:0AKcRCkMoKvUvlf89F6O7H2LYdhr1zBh736mBItOdRs= github.com/gomodule/redigo v1.7.1-0.20190724094224-574c33c3df38 h1:y0Wmhvml7cGnzPa9nocn/fMraMH/lMDdeG+rkx4VgYY= github.com/gomodule/redigo v1.7.1-0.20190724094224-574c33c3df38/go.mod h1:B4C85qUVwatsJoIUNIfCRsp7qO0iAmpGFZ4EELWSbC4= github.com/gonum/blas v0.0.0-20181208220705-f22b278b28ac h1:Q0Jsdxl5jbxouNs1TQYt0gxesYMU4VXRbsTlgDloZ50= @@ -842,6 +825,7 @@ github.com/googleapis/gax-go/v2 v2.14.1/go.mod h1:Hb/NubMaVM88SrNkvl8X/o8XWwDJEP github.com/googleapis/go-type-adapters v1.0.0 h1:9XdMn+d/G57qq1s8dNc5IesGCXHf6V2HZ2JwRxfA2tA= github.com/googleapis/google-cloud-go-testing v0.0.0-20200911160855-bcd43fbb19e8 h1:tlyzajkF3030q6M8SvmJSemC9DTHL/xaMa18b65+JM4= github.com/gookit/color v1.5.0 h1:1Opow3+BWDwqor78DcJkJCIwnkviFi+rrOANki9BUFw= +github.com/gookit/color v1.5.1 h1:Vjg2VEcdHpwq+oY63s/ksHrgJYCTo0bwWvmmYWdE9fQ= github.com/gookit/color v1.5.1/go.mod h1:wZFzea4X8qN6vHOSP2apMb4/+w/orMznEzYsIHPaqKM= github.com/gopherjs/gopherjs v1.17.2 h1:fQnZVsXk8uxXIStYb0N4bGk7jeyTalG/wsZjQ25dO0g= github.com/gorhill/cronexpr v0.0.0-20180427100037-88b0669f7d75 h1:f0n1xnMSmBLzVfsMMvriDyA75NB/oBgILX2GcHXIQzY= @@ -862,7 +846,6 @@ github.com/guptarohit/asciigraph v0.5.5 h1:ccFnUF8xYIOUPPY3tmdvRyHqmn1MYI9iv1pLK github.com/hashicorp/consul/api v1.11.0/go.mod h1:XjsvQN+RJGWI2TWy1/kqaE16HrR2J/FWgkYjdZQsX9M= github.com/hashicorp/consul/api v1.12.0 h1:k3y1FYv6nuKyNTqj6w9gXOx5r5CfLj/k/euUeBXj1OY= github.com/hashicorp/consul/sdk v0.8.0 h1:OJtKBtEjboEZvG6AOUdh4Z1Zbyu0WcxQ0qatRrZHTVU= -github.com/hashicorp/errwrap v1.1.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= github.com/hashicorp/go-cleanhttp v0.5.2 h1:035FKYIWjmULyFRBKPs8TBQoi0x6d9G4xc9neXJWAZQ= github.com/hashicorp/go-hclog v1.0.0/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ= github.com/hashicorp/go-hclog v1.2.0 h1:La19f8d7WIlm4ogzNHB0JGqs5AUDAZ2UfCY4sJXcJdM= @@ -871,7 +854,6 @@ github.com/hashicorp/go-retryablehttp v0.5.3 h1:QlWt0KvWT0lq8MFppF9tsJGF+ynG7ztc github.com/hashicorp/go-rootcerts v1.0.2 h1:jzhAVGtqPKbwpyCPELlgNWhE1znq+qwJtW5Oi2viEzc= github.com/hashicorp/go-sockaddr v1.0.0 h1:GeH6tui99pF4NJgfnhp+L6+FfobzVW3Ah46sLo0ICXs= github.com/hashicorp/go-syslog v1.0.0 h1:KaodqZuhUoZereWVIYmpUgZysurB1kBLX2j0MwMrUAE= -github.com/hashicorp/go-version v1.6.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= github.com/hashicorp/go.net v0.0.1 h1:sNCoNyDEvN1xa+X0baata4RdcpKwcMS6DH+xwfqPgjw= github.com/hashicorp/logutils v1.0.0 h1:dLEQVugN8vlakKOUE3ihGLTZJRB4j+M2cdTm/ORI65Y= github.com/hashicorp/mdns v1.0.1/go.mod h1:4gW7WsVCke5TE7EPeYliwHlRUyBtfCwuFwuMg2DmyNY= @@ -912,6 +894,7 @@ github.com/jhump/goprotoc v0.5.0 h1:Y1UgUX+txUznfqcGdDef8ZOVlyQvnV0pKWZH08RmZuo= github.com/jmoiron/sqlx v1.2.0 h1:41Ip0zITnmWNR/vHV+S4m+VoUivnWY5E4OJfLZjCJMA= github.com/jonboulle/clockwork v0.2.0 h1:J2SLSdy7HgElq8ekSl2Mxh6vrRNFxqbXGenYH2I02Vs= github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY= +github.com/josharian/txtarfs v0.0.0-20210218200122-0702f000015a h1:8NZHLa6Gp0hW6xJ0c3F1Kse7dJw30fOcDzHuF9sLbnE= github.com/josharian/txtarfs v0.0.0-20210218200122-0702f000015a/go.mod h1:izVPOvVRsHiKkeGCT6tYBNWyDVuzj9wAaBb5R9qamfw= github.com/jpillora/backoff v1.0.0 h1:uvFg412JmmHBHw7iwprIxkPMI+sGQ4kzOWsMeHnm2EA= github.com/jrick/logrotate v1.0.0 h1:lQ1bL/n9mBNeIXoTUoYRlK4dHuNJVofX9oWqBtPnSzI= @@ -942,8 +925,6 @@ github.com/kataras/sitemap v0.0.6 h1:w71CRMMKYMJh6LR2wTgnk5hSgjVNB9KL60n5e2KHvLY github.com/kataras/tunnel v0.0.4 h1:sCAqWuJV7nPzGrlb0os3j49lk2JhILT0rID38NHNLpA= github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51 h1:Z9n2FFNUXsshfwJMBgNA0RU6/i7WVaAegv3PtuIHPMs= github.com/kilic/bls12-381 v0.1.0 h1:encrdjqKMEvabVQ7qYOKu1OvhqpK4s47wDYtNiPtlp4= -github.com/kisielk/errcheck v1.6.2/go.mod h1:nXw/i/MfnvRHqXa7XXmQMUB0oNFGuBrNI8d8NLy0LPw= -github.com/kkHAIKE/contextcheck v1.1.3/go.mod h1:PG/cwd6c0705/LM0KTr1acO2gORUxkSVWyLJOFW5qoo= github.com/kkdai/bstream v0.0.0-20161212061736-f391b8402d23 h1:FOOIBWrEkLgmlgGfMuZT83xIwfPDxEI2OHu6xUmJMFE= github.com/klauspost/asmfmt v1.3.2 h1:4Ri7ox3EwapiOjCki+hw14RyKk201CN4rzyCJRFLpK4= github.com/klauspost/compress v1.8.2/go.mod h1:RyIbtBH6LamlWaDj8nUwkbUhJ87Yi3uG0guNDohfE1A= @@ -962,8 +943,6 @@ github.com/konsorten/go-windows-terminal-sequences v1.0.3 h1:CE8S1cTafDpPvMhIxNJ github.com/kr/fs v0.1.0 h1:Jskdu9ieNAYnjxsi0LbQp1ulIKZV1LAFgK1tWhpZgl8= github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515 h1:T+h1c/A9Gawja4Y9mFVWj2vyii2bbUNDw3kt9VxK2EY= github.com/kr/pty v1.1.1 h1:VkoXIwSboBpnk99O/KFauAEILuNHv5DVFKZMBN/gUgw= -github.com/kulti/thelper v0.6.3/go.mod h1:DsqKShOvP40epevkFrvIwkCMNYxMeTNjdWL4dqWHZ6I= -github.com/kunwardeep/paralleltest v1.0.6/go.mod h1:Y0Y0XISdZM5IKm3TREQMZ6iteqn1YuwCsJO/0kL9Zes= github.com/labstack/echo/v4 v4.1.11/go.mod h1:i541M3Fj6f76NZtHSj7TXnyM8n2gaodfvfxNnFqi74g= github.com/labstack/echo/v4 v4.10.0 h1:5CiyngihEO4HXsz3vVsJn7f8xAlWwRr3aY6Ih280ZKA= github.com/labstack/gommon v0.4.0 h1:y7cvthEAEbU0yHOf4axH8ZG2NH8knB9iNSoTO8dyIk8= @@ -982,7 +961,6 @@ github.com/linxGnu/grocksdb v1.8.4/go.mod h1:xZCIb5Muw+nhbDK4Y5UJuOrin5MceOuiXkV github.com/lispad/go-generics-tools v1.1.0 h1:mbSgcxdFVmpoyso1X/MJHXbSbSL3dD+qhRryyxk+/XY= github.com/lispad/go-generics-tools v1.1.0/go.mod h1:2csd1EJljo/gy5qG4khXol7ivCPptNjG5Uv2X8MgK84= github.com/lucasjones/reggen v0.0.0-20180717132126-cdb49ff09d77 h1:6xiz3+ZczT3M4+I+JLpcPGG1bQKm8067HktB17EDWEE= -github.com/lufeee/execinquery v1.2.1/go.mod h1:EC7DrEKView09ocscGHC+apXMIaorh4xqSxS/dy8SbM= github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0 h1:6E+4a0GO5zZEnZ81pIr0yLvtUWk2if982qA3F3QD6H4= github.com/lyft/protoc-gen-star v0.5.3/go.mod h1:V0xaHgaf5oCCqmcxYcWiDfTiKsZsRc87/1qhoTACD8w= github.com/lyft/protoc-gen-star v0.6.1 h1:erE0rdztuaDq3bpGifD95wfoPrSZc95nGA6tbiNYh6M= @@ -990,11 +968,10 @@ github.com/lyft/protoc-gen-star/v2 v2.0.1 h1:keaAo8hRuAT0O3DfJ/wM3rufbAjGeJ1lAtW github.com/lyft/protoc-gen-star/v2 v2.0.1/go.mod h1:RcCdONR2ScXaYnQC5tUzxzlpA3WVYF7/opLeUgcQs/o= github.com/lyft/protoc-gen-star/v2 v2.0.4-0.20230330145011-496ad1ac90a4 h1:sIXJOMrYnQZJu7OB7ANSF4MYri2fTEGIsRLz6LwI4xE= github.com/lyft/protoc-gen-star/v2 v2.0.4-0.20230330145011-496ad1ac90a4/go.mod h1:amey7yeodaJhXSbf/TlLvWiqQfLOSpEk//mLlc+axEk= +github.com/magefile/mage v1.14.0 h1:6QDX3g6z1YvJ4olPhT1wksUcSa/V0a1B+pJb73fBjyo= github.com/magefile/mage v1.14.0/go.mod h1:z5UZb/iS3GoOSn0JgWuiw7dxlurVYTu+/jHXqQg881A= github.com/mailgun/raymond/v2 v2.0.48 h1:5dmlB680ZkFG2RN/0lvTAghrSxIESeu9/2aeDqACtjw= github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0= -github.com/maratori/testableexamples v1.0.0/go.mod h1:4rhjL1n20TUTT4vdh3RDqSizKLyXp7K2u6HgraZCGzE= -github.com/maratori/testpackage v1.1.0/go.mod h1:PeAhzU8qkCwdGEMTEupsHJNlQu2gZopMC6RjbhmHeDc= github.com/matryer/moq v0.3.0 h1:4j0goF/XK3pMTc7fJB3fveuTJoQNdavRX/78vlK3Xb4= github.com/matryer/moq v0.3.0/go.mod h1:RJ75ZZZD71hejp39j4crZLsEDszGk6iH4v4YsWFKH4s= github.com/matryer/try v0.0.0-20161228173917-9ac251b645a2 h1:JAEbJn3j/FrhdWA9jW8B5ajsLIjeuEHLi8xE4fk997o= @@ -1007,7 +984,6 @@ github.com/mediocregopher/mediocre-go-lib v0.0.0-20181029021733-cb65787f37ed/go. github.com/mediocregopher/radix/v3 v3.3.0/go.mod h1:EmfVyvspXz1uZEyPBMyGK+kjWiKQGvsUt6O3Pj+LDCQ= github.com/mediocregopher/radix/v3 v3.8.1 h1:rOkHflVuulFKlwsLY01/M2cM2tWCjDoETcMqKbAWu1M= github.com/mgechev/dots v0.0.0-20210922191527-e955255bf517 h1:zpIH83+oKzcpryru8ceC6BxnoG8TBrhgAvRg8obzup0= -github.com/mgechev/revive v1.2.4/go.mod h1:iAWlQishqCuj4yhV24FTnKSXGpbAA+0SckXB8GQMX/Q= github.com/microcosm-cc/bluemonday v1.0.2/go.mod h1:iVP4YcDBq+n/5fb23BhYFvIMq/leAFZyRl6bYmGDlGc= github.com/microcosm-cc/bluemonday v1.0.23 h1:SMZe2IGa0NuHvnVNAZ+6B38gsTbi5e4sViiWJyDDqFY= github.com/miekg/dns v1.1.43 h1:JKfpVSCB84vrAmHzyrsxB5NAr5kLoMXZArPSw7Qlgyg= @@ -1054,7 +1030,6 @@ github.com/nats-io/nuid v1.0.1 h1:5iA8DT8V7q8WK2EScv2padNa/rTESc1KdnPw4TC2paw= github.com/neelance/astrewrite v0.0.0-20160511093645-99348263ae86 h1:D6paGObi5Wud7xg83MaEFyjxQB1W5bz5d0IFppr+ymk= github.com/neelance/sourcemap v0.0.0-20200213170602-2833bce08e4c h1:bY6ktFuJkt+ZXkX0RChQch2FtHpWQLVS8Qo1YasiIVk= github.com/neilotoole/errgroup v0.1.5 h1:DxEGoIfFm5ooGicidR+okiHjoOaGRKFaSxDPVZuuu2I= -github.com/nishanths/exhaustive v0.8.3/go.mod h1:qj+zJJUgJ76tR92+25+03oYUhzF4R7/2Wk7fGTfCHmg= github.com/oklog/oklog v0.3.2 h1:wVfs8F+in6nTBMkA7CbRw+zZMIB7nNM825cM1wuzoTk= github.com/oklog/run v1.0.0 h1:Ru7dDtJNOyC66gQ5dQmaCa0qIsAUFY3sFpK1Xk8igrw= github.com/oklog/ulid v1.3.1 h1:EGfNDEx6MqHz8B3uNV6QAib1UR2Lm97sHi3ocA6ESJ4= @@ -1124,7 +1099,6 @@ github.com/pkg/sftp v1.13.7 h1:uv+I3nNJvlKZIQGSr8JVQLNHFU9YhhNpvC14Y6KgmSM= github.com/pkg/sftp v1.13.7/go.mod h1:KMKI0t3T6hfA+lTR/ssZdunHo+uwq7ghoN09/FSu3DY= github.com/planetscale/vtprotobuf v0.6.1-0.20240319094008-0393e58bdf10 h1:GFCKgmp0tecUJ0sJuv4pzYCqS9+RGSn52M3FUwPs+uo= github.com/planetscale/vtprotobuf v0.6.1-0.20240319094008-0393e58bdf10/go.mod h1:t/avpk3KcrXxUnYOhZhMXJlSEyie6gQbtLq5NM3loB8= -github.com/polyfloyd/go-errorlint v1.0.5/go.mod h1:APVvOesVSAnne5SClsPxPdfvZTVDojXh1/G3qb5wjGI= github.com/posener/complete v1.2.3 h1:NP0eAhjcjImqslEwo/1hq7gpajME0fTLTezBKDqfXqo= github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c h1:ncq/mPwQF4JjgDlrVEn3C11VoGHZN7m8qihwgMEtzYw= github.com/prashantv/gostub v1.1.0 h1:BTyx3RfQjRHnUWaGF9oQos79AlQ5k8WNktv7VGvVH4g= @@ -1141,12 +1115,9 @@ github.com/protolambda/ztyp v0.2.2 h1:rVcL3vBu9W/aV646zF6caLS/dyn9BN8NYiuJzicLNy github.com/prysmaticlabs/gohashtree v0.0.1-alpha.0.20220714111606-acbb2962fb48 h1:cSo6/vk8YpvkLbk9v3FO97cakNmUoxwi2KMP8hd5WIw= github.com/pseudomuto/protoc-gen-doc v1.3.2 h1:61vWZuxYa8D7Rn4h+2dgoTNqnluBmJya2MgbqO32z6g= github.com/pseudomuto/protokit v0.2.0 h1:hlnBDcy3YEDXH7kc9gV+NLaN0cDzhDvD1s7Y6FZ8RpM= -github.com/quasilyte/go-ruleguard v0.3.18/go.mod h1:lOIzcYlgxrQ2sGJ735EHXmf/e9MJ516j16K/Ifcttvs= -github.com/quasilyte/go-ruleguard/dsl v0.3.21/go.mod h1:KeCP03KrjuSO0H1kTuZQCWlQPulDV6YMIXmpQss17rU= github.com/quasilyte/go-ruleguard/dsl v0.3.22 h1:wd8zkOhSNr+I+8Qeciml08ivDt1pSXe60+5DqOpCjPE= github.com/quasilyte/go-ruleguard/dsl v0.3.22/go.mod h1:KeCP03KrjuSO0H1kTuZQCWlQPulDV6YMIXmpQss17rU= github.com/quasilyte/go-ruleguard/rules v0.0.0-20211022131956-028d6511ab71 h1:CNooiryw5aisadVfzneSZPswRWvnVW8hF1bS/vo8ReI= -github.com/quasilyte/gogrep v0.0.0-20220828223005-86e4605de09f/go.mod h1:Cm9lpz9NZjEoL1tgZ2OgeUKPIxL1meE7eo60Z6Sk+Ng= github.com/rcrowley/go-metrics v0.0.0-20181016184325-3113b8401b8a h1:9ZKAASQSHhDYGoxY8uLVpewe1GDZ2vu2Tr/vTdVAkFQ= github.com/rcrowley/go-metrics v0.0.0-20200313005456-10cdbea86bc0/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4= github.com/rcrowley/go-metrics v0.0.0-20201227073835-cf1acfcdf475 h1:N/ElC8H3+5XpJzTSTfLsJV/mx9Q9g7kxmchpfZyxgzM= @@ -1166,7 +1137,6 @@ github.com/rs/dnscache v0.0.0-20211102005908-e0241e321417 h1:Lt9DzQALzHoDwMBGJ6v github.com/rs/dnscache v0.0.0-20211102005908-e0241e321417/go.mod h1:qe5TWALJ8/a1Lqznoc5BDHpYX/8HU60Hm2AwRmqzxqA= github.com/russross/blackfriday v1.5.2 h1:HyvC0ARfnZBqnXwABFeSZHpKvJHJJfPz81GNueLj0oo= github.com/ruudk/golang-pdf417 v0.0.0-20201230142125-a7e3863a1245 h1:K1Xf3bKttbF+koVGaX5xngRIZ5bVjbmPnaxE/dR08uY= -github.com/ryancurrah/gomodguard v1.2.4/go.mod h1:+Kem4VjWwvFpUJRJSwa16s1tBJe+vbv02+naTow2f6M= github.com/ryanuber/columnize v0.0.0-20160712163229-9b3edd62028f h1:UFr9zpz4xgTnIE5yIMtWAMngCdZ9p/+q6lTbgelo80M= github.com/ryanuber/columnize v2.1.0+incompatible h1:j1Wcmh8OrK4Q7GXY+V7SVSY8nUWQxHW5TkBe7YUl+2s= github.com/ryanuber/columnize v2.1.0+incompatible/go.mod h1:sm1tb6uqfes/u+d4ooFouqFdy9/2g9QGwK3SQygK0Ts= @@ -1175,14 +1145,11 @@ github.com/sagikazarmark/crypt v0.6.0 h1:REOEXCs/NFY/1jOCEouMuT4zEniE5YoXbvpC5X/ github.com/sagikazarmark/crypt v0.6.0/go.mod h1:U8+INwJo3nBv1m6A/8OBXAq7Jnpspk5AxSgDyEQcea8= github.com/samuel/go-zookeeper v0.0.0-20190923202752-2cc03de413da h1:p3Vo3i64TCLY7gIfzeQaUJ+kppEO5WQG3cL8iE8tGHU= github.com/sanity-io/litter v1.5.5 h1:iE+sBxPBzoK6uaEP5Lt3fHNgpKcHXc/A2HGETy0uJQo= -github.com/sashamelentyev/interfacebloat v1.1.0/go.mod h1:+Y9yU5YdTkrNvoX0xHc84dxiN1iBi9+G8zZIhPVoNjQ= -github.com/sashamelentyev/usestdlibvars v1.20.0/go.mod h1:0GaP+ecfZMXShS0A94CJn6aEuPRILv8h/VuWI9n1ygg= github.com/schollz/closestmatch v2.1.0+incompatible h1:Uel2GXEpJqOWBrlyI+oY9LTiyyjYS17cCYRqP13/SHk= github.com/sclevine/agouti v3.0.0+incompatible h1:8IBJS6PWz3uTlMP3YBIR5f+KAldcGuOeFkFbUWfBgK4= github.com/sclevine/agouti v3.0.0+incompatible/go.mod h1:b4WX9W9L1sfQKXeJf1mUTLZKJ48R1S7H23Ji7oFO5Bw= github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529 h1:nn5Wsu0esKSJiIVhscUtVbo7ada43DJhG55ua/hjS5I= github.com/seccomp/libseccomp-golang v0.9.1 h1:NJjM5DNFOs0s3kYE1WUOr6G8V97sdt46rlXTMfXGWBo= -github.com/securego/gosec/v2 v2.13.1/go.mod h1:EO1sImBMBWFjOTFzMWfTRrZW6M15gm60ljzrmy/wtHo= github.com/segmentio/fasthash v1.0.3 h1:EI9+KE1EwvMLBWwjpRDc+fEM+prwxDYbslddQGtrmhM= github.com/sergi/go-diff v1.1.0 h1:we8PVUC3FE2uYfodKH/nBHMSetSfHDR6scGdBi+erh0= github.com/shirou/gopsutil/v3 v3.22.9/go.mod h1:bBYl1kjgEJpWpxeHmLI+dVHWtyAwfcmSBLDsp2TNT8A= @@ -1193,8 +1160,6 @@ github.com/shurcooL/httpfs v0.0.0-20190707220628-8d4bc4ba7749 h1:bUGsEnyNbVPw06B github.com/shurcooL/sanitized_anchor_name v1.0.0 h1:PdmoCO6wvbs+7yrJyMORt4/BmY5IYyJwS/kOiWx8mHo= github.com/shurcooL/vfsgen v0.0.0-20200824052919-0d455de96546 h1:pXY9qYc/MP5zdvqWEUH6SjNiu7VhSjuVFTFiTcphaLU= github.com/sirkon/gitlab v0.0.5 h1:FXi1K3yE8x/3Bc9/AXmWyCRcWGwfED6hEXEV2XrDNl8= -github.com/sivchari/nosnakecase v1.7.0/go.mod h1:CwDzrzPea40/GB6uynrNLiorAlgFRvRbFSgJx2Gs+QY= -github.com/sivchari/tenv v1.7.0/go.mod h1:64yStXKSOxDfX47NlhVwND4dHwfZDdbp2Lyl018Icvg= github.com/smarty/assertions v1.15.0 h1:cR//PqUBUiQRakZWqBiFFQ9wb8emQGDb0HeGdqGByCY= github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d h1:zE9ykElWQ6/NYmHa3jpm/yHnI4xSofP+UP6SpjHcSeM= github.com/smartystreets/goconvey v1.8.1 h1:qGjIddxOk4grTu9JPOU31tVfq3cNdBlNa5sSznIX1xY= @@ -1216,20 +1181,16 @@ github.com/tdewolff/minify/v2 v2.12.4 h1:kejsHQMM17n6/gwdw53qsi6lg0TGddZADVyQOz1 github.com/tdewolff/parse/v2 v2.6.4 h1:KCkDvNUMof10e3QExio9OPZJT8SbdKojLBumw8YZycQ= github.com/tdewolff/test v1.0.7 h1:8Vs0142DmPFW/bQeHRP3MV19m1gvndjUb1sn8yy74LM= github.com/tidwall/sjson v1.1.4 h1:bTSsPLdAYF5QNLSwYsKfBKKTnlGbIuhqL3CpRsjzGhg= -github.com/timonwong/loggercheck v0.9.3/go.mod h1:wUqnk9yAOIKtGA39l1KLE9Iz0QiTocu/YZoOf+OzFdw= github.com/tklauser/go-sysconf v0.3.10/go.mod h1:C8XykCvCb+Gn0oNCWPIlcb0RuglQTYaQ2hGm7jmxEFk= github.com/tklauser/numcpus v0.4.0/go.mod h1:1+UI3pD8NW14VMwdgJNJ1ESk2UnwhAnz5hMwiKKqXCQ= github.com/tmc/grpc-websocket-proxy v0.0.0-20200427203606-3cfed13b9966 h1:j6JEOq5QWFker+d7mFQYOhjTZonQ7YkLTHm56dbn+yM= -github.com/tomarrell/wrapcheck/v2 v2.7.0/go.mod h1:ao7l5p0aOlUNJKI0qVwB4Yjlqutd0IvAB9Rdwyilxvg= github.com/tomasen/realip v0.0.0-20180522021738-f0c99a92ddce h1:fb190+cK2Xz/dvi9Hv8eCYJYvIGUTN2/KLq1pT6CjEc= -github.com/tommy-muehle/go-mnd/v2 v2.5.1/go.mod h1:WsUAkMJMYww6l/ufffCD3m+P7LEvr8TnZn9lwVDlgzw= github.com/torquem-ch/mdbx-go v0.27.5 h1:bbhXQGFCmoxbRDXKYEJwxSOOTeBKwoD4pFBUpK9+V1g= github.com/torquem-ch/mdbx-go v0.27.5/go.mod h1:T2fsoJDVppxfAPTLd1svUgH1kpPmeXdPESmroSHcL1E= github.com/tv42/httpunix v0.0.0-20191220191345-2ba4b9c3382c h1:u6SKchux2yDvFQnDHS3lPnIRmfVJ5Sxy3ao2SIdysLQ= github.com/tyler-smith/go-bip39 v1.0.2 h1:+t3w+KwLXO6154GNJY+qUtIxLTmFjfUmpguQT1OlOT8= github.com/urfave/cli v1.22.1 h1:+mkCCcOFKPnCmVYVcURKps1Xe+3zP90gSYGNfRkjoIY= github.com/urfave/negroni v1.0.0 h1:kIimOitoypq34K7TG7DUaJ9kq/N4Ofuwi1sjz0KipXc= -github.com/uudashr/gocognit v1.0.6/go.mod h1:nAIUuVBnYU7pcninia3BHOvQkpQCeO76Uscky5BOwcY= github.com/valyala/bytebufferpool v1.0.0 h1:GqA5TC/0021Y/b9FG4Oi9Mr3q7XYx6KllzawFIhcdPw= github.com/valyala/fasthttp v1.6.0/go.mod h1:FstJa9V+Pj9vQ7OJie2qMHdwemEDaDiSdBnvPM1Su9w= github.com/valyala/fasthttp v1.30.0/go.mod h1:2rsYD01CKFrjjsvFxx75KlEUNpWNBY9JWD3K/7o2Cus= @@ -1269,7 +1230,6 @@ github.com/yusufpapurcu/wmi v1.2.2 h1:KBNDSne4vP5mbSWnJbO+51IMOXJB67QiYCSBrubbPR github.com/zeebo/assert v1.3.0 h1:g7C04CbJuIDKNPFHmsk4hwZDO5O+kntRxzaUoNXj+IQ= github.com/zeebo/xxh3 v1.0.2 h1:xZmwmqxHZA8AI603jOQ0tMqmBr9lPeFwGg6d+xy9DC0= github.com/zenazn/goji v0.9.0 h1:RSQQAbXGArQ0dIDEq+PI6WqN6if+5KHu6x2Cx/GXLTQ= -gitlab.com/bosi/decorder v0.2.3/go.mod h1:9K1RB5+VPNQYtXtTDAzd2OEftsZb1oV0IrJrzChSdGE= go.einride.tech/aip v0.68.0 h1:4seM66oLzTpz50u4K1zlJyOXQ3tCzcJN7I22tKkjipw= go.einride.tech/aip v0.68.0/go.mod h1:7y9FF8VtPWqpxuAxl0KQWqaULxW4zFIesD6zF5RIHHg= go.etcd.io/etcd v0.0.0-20200513171258-e048e166ab9c h1:/RwRVN9EdXAVtdHxP7Ndn/tfmM9/goiwU0QTnLBgS4w= @@ -1306,12 +1266,9 @@ go.opentelemetry.io/proto/otlp v1.0.0 h1:T0TX0tmXU8a3CbNXzEKGeU5mIVOdf0oykP+u2lI go.opentelemetry.io/proto/otlp v1.0.0/go.mod h1:Sy6pihPLfYHkr3NkUbEhGHFhINUSI/v80hjKIs5JXpM= go.uber.org/automaxprocs v1.5.2 h1:2LxUOGiR3O6tw8ui5sZa2LAaHnsviZdVOUZw4fvbnME= go.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee h1:0mgffUl7nfd+FpvXMVz4IDEaUSmT1ysygQC7qYo7sG4= -go.uber.org/zap v1.22.0/go.mod h1:H4siCOZOrAolnUPJEkfaSjDqyP+BDS0DdDWzwcgt3+U= golang.org/x/exp v0.0.0-20220722155223-a9213eeb770e/go.mod h1:Kr81I6Kryrl9sr8s2FK3vxD90NdsKWRuOIl2O4CvYbA= golang.org/x/exp v0.0.0-20230811145659-89c5cff77bcb/go.mod h1:FXUEEKJgO7OQYeo8N01OfiKP8RXMtf6e8aTskBGqWdc= -golang.org/x/exp/typeparams v0.0.0-20220428152302-39d4317da171/go.mod h1:AbB0pIl9nAr9wVwH+Z2ZpaocVmF5I4GyWCDIsVjR0bk= golang.org/x/exp/typeparams v0.0.0-20220613132600-b0d781184e0d/go.mod h1:AbB0pIl9nAr9wVwH+Z2ZpaocVmF5I4GyWCDIsVjR0bk= -golang.org/x/exp/typeparams v0.0.0-20220827204233-334a2380cb91/go.mod h1:AbB0pIl9nAr9wVwH+Z2ZpaocVmF5I4GyWCDIsVjR0bk= golang.org/x/image v0.0.0-20220302094943-723b81ca9867 h1:TcHcE0vrmgzNH1v3ppjcMGbhG5+9fMuvOmUYwNEF4q4= golang.org/x/lint v0.0.0-20210508222113-6edffad5e616 h1:VLliZ0d+/avPrXXH+OakdXhpJuEoBZuwh1m2j7U6Iug= golang.org/x/mobile v0.0.0-20190719004257-d2bd2a29d028 h1:4+4C/Iv2U4fMZBiMCc98MG1In4gJY5YRhtpDNeDeHWs= @@ -1334,7 +1291,6 @@ golang.org/x/sync v0.2.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.14.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA= golang.org/x/sys v0.0.0-20211205182925-97ca703d548d/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220627191245-f75cf1eec38b/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220702020025-31831981b65f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.16.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.21.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= @@ -1348,7 +1304,6 @@ golang.org/x/time v0.8.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= golang.org/x/tools v0.0.0-20181221001348-537d06c36207/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190327201419-c70d86f8b7cf/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.1.11-0.20220513221640-090b14e8501f/go.mod h1:SgwaegtQh8clINPpECJMqnxLv9I09HLqnW3RMqW0CA4= -golang.org/x/tools v0.1.11/go.mod h1:SgwaegtQh8clINPpECJMqnxLv9I09HLqnW3RMqW0CA4= golang.org/x/tools v0.1.12-0.20220628192153-7743d1d949f1/go.mod h1:SgwaegtQh8clINPpECJMqnxLv9I09HLqnW3RMqW0CA4= golang.org/x/tools v0.15.0/go.mod h1:hpksKq4dtpQWS1uQ61JkdqWM3LscIS6Slf+VVkm+wQk= golang.org/x/tools v0.26.0/go.mod h1:TPVVj70c7JJ3WCazhD8OdXcZg/og+b9+tH/KxylGwH0= @@ -1406,7 +1361,6 @@ gopkg.in/mgo.v2 v2.0.0-20180705113604-9856a29383ce h1:xcEWjVhvbDy+nHP67nPDDpbYrY gopkg.in/mgo.v2 v2.0.0-20180705113604-9856a29383ce/go.mod h1:yeKp02qBN3iKW1OzL3MGk2IdtZzaj7SFntXj72NppTA= gopkg.in/resty.v1 v1.12.0 h1:CuXP0Pjfw9rOuY6EP+UvtNvt5DSqHpIxILZKT/quCZI= gopkg.in/warnings.v0 v0.1.2 h1:wFXVbFY8DY5/xOe1ECiWdKCzZlxgshcYVNkBHstARME= -honnef.co/go/tools v0.3.3/go.mod h1:jzwdWgg7Jdq75wlfblQxO4neNaFFSvgc1tD5Wv8U0Yw= lukechampine.com/uint128 v1.2.0 h1:mBi/5l91vocEN8otkC5bDLhi2KdCticRiwbdB0O+rjI= modernc.org/cc/v3 v3.36.3 h1:uISP3F66UlixxWEcKuIWERa4TwrZENHSL8tWxZz8bHg= modernc.org/cc/v3 v3.40.0/go.mod h1:/bTg4dnWkSXowUO6ssQKnOV0yMVxDYNIsIrzqTFDGH0= @@ -1428,8 +1382,6 @@ modernc.org/token v1.0.0 h1:a0jaWiNMDhDUtqOj09wvjWWAqd3q7WpBulmL9H2egsk= modernc.org/token v1.0.1/go.mod h1:UGzOrNV1mAFSEB63lOFHIpNRUVMvYTc6yu1SMY/XTDM= modernc.org/z v1.5.1 h1:RTNHdsrOpeoSeOF4FbzTo8gBYByaJ5xT7NgZ9ZqRiJM= moul.io/http2curl/v2 v2.3.0 h1:9r3JfDzWPcbIklMOs2TnIFzDYvfAZvjeavG6EzP7jYs= -mvdan.cc/gofumpt v0.4.0/go.mod h1:PljLOHDeZqgS8opHRKLzp2It2VBuSdteAgqUfzMTxlQ= -mvdan.cc/unparam v0.0.0-20220706161116-678bad134442/go.mod h1:F/Cxw/6mVrNKqrR2YjFf5CaW0Bw4RL8RfbEf4GRggJk= rsc.io/binaryregexp v0.2.0 h1:HfqmD5MEmC0zvwBuF187nq9mdnXjXsSivRiXN7SmRkE= rsc.io/pdf v0.1.1 h1:k1MczvYDUvJBe93bYd7wrZLLUEcLZAuF824/I4e5Xr4= rsc.io/quote/v3 v3.1.0 h1:9JKUTTIUgS6kzR9mK1YuGKv6Nl+DijDNIc0ghT58FaY= diff --git a/sei-cosmos/storev2/commitment/store.go b/sei-cosmos/storev2/commitment/store.go index 055a41a8e3..975870974f 100644 --- a/sei-cosmos/storev2/commitment/store.go +++ b/sei-cosmos/storev2/commitment/store.go @@ -11,7 +11,7 @@ import ( "github.com/cosmos/cosmos-sdk/store/types" sdkerrors "github.com/cosmos/cosmos-sdk/types/errors" "github.com/cosmos/cosmos-sdk/types/kv" - sctypes "github.com/sei-protocol/sei-chain/sei-db/sc/types" + sctypes "github.com/sei-protocol/sei-chain/sei-db/state_db/sc/types" iavl "github.com/sei-protocol/sei-chain/sei-iavl" abci "github.com/tendermint/tendermint/abci/types" "github.com/tendermint/tendermint/libs/log" @@ -25,12 +25,12 @@ var ( // Store Implements types.KVStore and CommitKVStore. type Store struct { - tree sctypes.Tree + tree sctypes.ModuleStore logger log.Logger changeSet iavl.ChangeSet } -func NewStore(tree sctypes.Tree, logger log.Logger) *Store { +func NewStore(tree sctypes.ModuleStore, logger log.Logger) *Store { return &Store{ tree: tree, logger: logger, diff --git a/sei-cosmos/storev2/commitment/store_test.go b/sei-cosmos/storev2/commitment/store_test.go index af9d583e9b..0e35eb0e63 100644 --- a/sei-cosmos/storev2/commitment/store_test.go +++ b/sei-cosmos/storev2/commitment/store_test.go @@ -4,7 +4,7 @@ import ( "testing" "github.com/cosmos/cosmos-sdk/store/types" - "github.com/sei-protocol/sei-chain/sei-db/sc/memiavl" + "github.com/sei-protocol/sei-chain/sei-db/state_db/sc/memiavl" "github.com/stretchr/testify/require" "github.com/tendermint/tendermint/libs/log" ) diff --git a/sei-cosmos/storev2/rootmulti/store.go b/sei-cosmos/storev2/rootmulti/store.go index f618a6e630..d0b63de1aa 100644 --- a/sei-cosmos/storev2/rootmulti/store.go +++ b/sei-cosmos/storev2/rootmulti/store.go @@ -25,11 +25,11 @@ import ( commonerrors "github.com/sei-protocol/sei-chain/sei-db/common/errors" "github.com/sei-protocol/sei-chain/sei-db/config" "github.com/sei-protocol/sei-chain/sei-db/proto" - "github.com/sei-protocol/sei-chain/sei-db/sc" - sctypes "github.com/sei-protocol/sei-chain/sei-db/sc/types" - "github.com/sei-protocol/sei-chain/sei-db/ss" - "github.com/sei-protocol/sei-chain/sei-db/ss/pruning" - sstypes "github.com/sei-protocol/sei-chain/sei-db/ss/types" + "github.com/sei-protocol/sei-chain/sei-db/state_db/sc" + sctypes "github.com/sei-protocol/sei-chain/sei-db/state_db/sc/types" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/pruning" + sstypes "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" abci "github.com/tendermint/tendermint/abci/types" "github.com/tendermint/tendermint/libs/log" dbm "github.com/tendermint/tm-db" @@ -275,7 +275,7 @@ func (rs *Store) CacheMultiStoreForExport(version int64) (types.CacheMultiStore, } for k, store := range rs.ckvStores { if store.GetStoreType() == types.StoreTypeIAVL { - tree := scStore.GetTreeByName(k.Name()) + tree := scStore.GetModuleByName(k.Name()) stores[k] = commitment.NewStore(tree, rs.logger) } } @@ -439,7 +439,7 @@ func (rs *Store) loadCommitStoreFromParams(key types.StoreKey, params storeParam case types.StoreTypeMulti: panic("recursive MultiStores not yet supported") case types.StoreTypeIAVL: - tree := rs.scStore.GetTreeByName(key.Name()) + tree := rs.scStore.GetModuleByName(key.Name()) if tree == nil { return nil, fmt.Errorf("new store is not added in upgrades: %s", key.Name()) } @@ -550,7 +550,7 @@ func (rs *Store) Query(req abci.RequestQuery) abci.ResponseQuery { return sdkerrors.QueryResult(err) } defer scStore.Close() - store = types.Queryable(commitment.NewStore(scStore.GetTreeByName(storeName), rs.logger)) + store = types.Queryable(commitment.NewStore(scStore.GetModuleByName(storeName), rs.logger)) commitInfo = convertCommitInfo(scStore.LastCommitInfo()) commitInfo = amendCommitInfo(commitInfo, rs.storesParams) } diff --git a/sei-cosmos/storev2/state/store.go b/sei-cosmos/storev2/state/store.go index f5a86c6a9b..0de506ed92 100644 --- a/sei-cosmos/storev2/state/store.go +++ b/sei-cosmos/storev2/state/store.go @@ -11,7 +11,7 @@ import ( "github.com/cosmos/cosmos-sdk/store/types" sdkerrors "github.com/cosmos/cosmos-sdk/types/errors" "github.com/cosmos/cosmos-sdk/types/kv" - sstypes "github.com/sei-protocol/sei-chain/sei-db/ss/types" + sstypes "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" abci "github.com/tendermint/tendermint/abci/types" ) diff --git a/sei-db/stream/changelog/changelog.go b/sei-db/changelog/changelog/changelog.go similarity index 99% rename from sei-db/stream/changelog/changelog.go rename to sei-db/changelog/changelog/changelog.go index b1320b5ba5..7ac1951101 100644 --- a/sei-db/stream/changelog/changelog.go +++ b/sei-db/changelog/changelog/changelog.go @@ -7,10 +7,10 @@ import ( "path/filepath" "time" + "github.com/sei-protocol/sei-chain/sei-db/changelog/types" errorutils "github.com/sei-protocol/sei-chain/sei-db/common/errors" "github.com/sei-protocol/sei-chain/sei-db/common/logger" "github.com/sei-protocol/sei-chain/sei-db/proto" - "github.com/sei-protocol/sei-chain/sei-db/stream/types" "github.com/tidwall/wal" ) diff --git a/sei-db/stream/changelog/changelog_test.go b/sei-db/changelog/changelog/changelog_test.go similarity index 100% rename from sei-db/stream/changelog/changelog_test.go rename to sei-db/changelog/changelog/changelog_test.go diff --git a/sei-db/stream/changelog/subscriber.go b/sei-db/changelog/changelog/subscriber.go similarity index 96% rename from sei-db/stream/changelog/subscriber.go rename to sei-db/changelog/changelog/subscriber.go index a2099185d1..b8fe896303 100644 --- a/sei-db/stream/changelog/subscriber.go +++ b/sei-db/changelog/changelog/subscriber.go @@ -3,8 +3,8 @@ package changelog import ( "fmt" + "github.com/sei-protocol/sei-chain/sei-db/changelog/types" "github.com/sei-protocol/sei-chain/sei-db/proto" - "github.com/sei-protocol/sei-chain/sei-db/stream/types" ) var _ types.Subscriber[proto.ChangelogEntry] = (*Subscriber)(nil) diff --git a/sei-db/stream/changelog/utils.go b/sei-db/changelog/changelog/utils.go similarity index 100% rename from sei-db/stream/changelog/utils.go rename to sei-db/changelog/changelog/utils.go diff --git a/sei-db/stream/types/types.go b/sei-db/changelog/types/types.go similarity index 100% rename from sei-db/stream/types/types.go rename to sei-db/changelog/types/types.go diff --git a/sei-db/db_engine/parquet/placeholder.go b/sei-db/db_engine/parquet/placeholder.go new file mode 100644 index 0000000000..d59caa7f94 --- /dev/null +++ b/sei-db/db_engine/parquet/placeholder.go @@ -0,0 +1 @@ +package parquet diff --git a/sei-db/db_engine/pebbledb/kv/batch.go b/sei-db/db_engine/pebbledb/kv/batch.go new file mode 100644 index 0000000000..a3ae69b1eb --- /dev/null +++ b/sei-db/db_engine/pebbledb/kv/batch.go @@ -0,0 +1,104 @@ +package pebbledb + +import ( + "encoding/binary" + goerrors "errors" + "fmt" + + "github.com/cockroachdb/pebble" +) + +const ( + currentVersionKey = "s/_meta/version" // the key name of the version. + VersionSize = 8 // the number of bytes needed to store the version. +) + +// Batch is a set of modifications to apply to the store. +type Batch struct { + db *pebble.DB + batch *pebble.Batch + writeOps *pebble.WriteOptions +} + +// NewBatch creates new batch. +func NewBatch(db *pebble.DB) *Batch { + batch := db.NewBatch() + return &Batch{ + db: db, + batch: batch, + writeOps: pebble.NoSync, + } +} + +// Size returns number of operations in the batch. +func (b *Batch) Size() int { + return b.batch.Len() +} + +// Reset resets the batch. +func (b *Batch) Reset() { + b.batch.Reset() +} + +// Set sets key. +func (b *Batch) Set(key, value []byte) error { + if err := b.batch.Set(key, value, nil); err != nil { + return fmt.Errorf("failed to write PebbleDB batch: %w", err) + } + return nil +} + +// SetCurrentVersion sets the version metadata. +func (b *Batch) SetCurrentVersion(version uint64) error { + var versionBz [VersionSize]byte + binary.LittleEndian.PutUint64(versionBz[:], version) + if err := b.batch.Set([]byte(currentVersionKey), versionBz[:], nil); err != nil { + return fmt.Errorf("failed to write current version to PebbleDB batch: %w", err) + } + return nil +} + +// Delete deletes key from the store. +func (b *Batch) Delete(key []byte) error { + return b.batch.Delete(key, nil) +} + +// Commit commits changes. +func (b *Batch) Commit() (err error) { + defer func() { + err = goerrors.Join(err, b.batch.Close()) + }() + + return b.batch.Commit(b.writeOps) +} + +// SetByStore sets key in the store. +func (b *Batch) SetByStore(storeKey string, key, value []byte) error { + prefixedKey := prependStoreKey(storeKey, key) + if err := b.batch.Set(prefixedKey, value, nil); err != nil { + return fmt.Errorf("failed to write PebbleDB batch: %w", err) + } + return nil +} + +// DeleteByStore deletes key from the store. +func (b *Batch) DeleteByStore(storeKey string, key []byte) error { + prefixedKey := prependStoreKey(storeKey, key) + return b.batch.Delete(prefixedKey, nil) +} + +func getStorePrefix(storeKey string) []byte { + // "s/k:" + storeKey + "/" + b := make([]byte, 0, len("s/k:/")+len(storeKey)) + b = append(b, "s/k:"...) + b = append(b, storeKey...) + b = append(b, '/') + return b +} + +func prependStoreKey(storeKey string, key []byte) []byte { + if storeKey == "" { + return key + } + return append(getStorePrefix(storeKey), key...) +} diff --git a/sei-db/db_engine/pebbledb/kv/db.go b/sei-db/db_engine/pebbledb/kv/db.go new file mode 100644 index 0000000000..0704c99872 --- /dev/null +++ b/sei-db/db_engine/pebbledb/kv/db.go @@ -0,0 +1,102 @@ +package pebbledb + +import ( + "github.com/cockroachdb/pebble" + "github.com/cockroachdb/pebble/bloom" + "github.com/pkg/errors" + "golang.org/x/exp/slices" +) + +// Database represents database. +type Database struct { + storage *pebble.DB + writeOps *pebble.WriteOptions +} + +// OpenDB opens an existing or create a new database. +func OpenDB(dbPath string) *Database { + cache := pebble.NewCache(1024 * 1024 * 512) + defer cache.Unref() + opts := &pebble.Options{ + Cache: cache, + FormatMajorVersion: pebble.FormatNewest, + L0CompactionThreshold: 4, + L0StopWritesThreshold: 1000, + LBaseMaxBytes: 64 << 20, // 64 MB + Levels: make([]pebble.LevelOptions, 7), + MaxConcurrentCompactions: func() int { return 3 }, + MemTableSize: 64 << 20, + MemTableStopWritesThreshold: 4, + DisableWAL: false, + } + + for i := range opts.Levels { + l := &opts.Levels[i] + l.BlockSize = 32 << 10 // 32 KB + l.IndexBlockSize = 256 << 10 // 256 KB + l.FilterPolicy = bloom.FilterPolicy(10) + l.FilterType = pebble.TableFilter + if i > 1 { + l.Compression = pebble.ZstdCompression + } + if i > 0 { + l.TargetFileSize = opts.Levels[i-1].TargetFileSize * 2 + } + l.EnsureDefaults() + } + opts.Levels[6].FilterPolicy = nil + opts.FlushSplitBytes = opts.Levels[0].TargetFileSize + opts = opts.EnsureDefaults() + + db, err := pebble.Open(dbPath, opts) + if err != nil { + panic(err) + } + + database := &Database{ + storage: db, + writeOps: pebble.NoSync, + } + + return database +} + +// Has checks if key is available. +func (db *Database) Has(key []byte) (bool, error) { + val, err := db.Get(key) + if err != nil { + return false, errors.WithStack(err) + } + return val != nil, nil +} + +// Get returns value by key. +// The returned value is a copy and safe to use after this call returns. +func (db *Database) Get(key []byte) ([]byte, error) { + value, closer, err := db.storage.Get(key) + if err != nil { + if errors.Is(err, pebble.ErrNotFound) { + return nil, nil + } + return nil, errors.WithStack(err) + } + defer func() { + _ = closer.Close() + }() + // Must clone the value before closer.Close() is called, + // as PebbleDB's zero-copy semantics mean the underlying + // memory is only valid until the closer is closed. + return slices.Clone(value), nil +} + +// Set override and persist key,value pair. +func (db *Database) Set(key []byte, value []byte) error { + return db.storage.Set(key, value, db.writeOps) +} + +// Close closes the database. +func (db *Database) Close() error { + _ = db.storage.Flush() + err := db.storage.Close() + return errors.WithStack(err) +} diff --git a/sei-db/ss/pebbledb/batch.go b/sei-db/db_engine/pebbledb/mvcc/batch.go similarity index 99% rename from sei-db/ss/pebbledb/batch.go rename to sei-db/db_engine/pebbledb/mvcc/batch.go index 3bd9c7f425..c397ea21c6 100644 --- a/sei-db/ss/pebbledb/batch.go +++ b/sei-db/db_engine/pebbledb/mvcc/batch.go @@ -1,4 +1,4 @@ -package pebbledb +package mvcc import ( "context" diff --git a/sei-db/ss/pebbledb/bench_test.go b/sei-db/db_engine/pebbledb/mvcc/bench_test.go similarity index 61% rename from sei-db/ss/pebbledb/bench_test.go rename to sei-db/db_engine/pebbledb/mvcc/bench_test.go index 0e62a113a2..3d21da4838 100644 --- a/sei-db/ss/pebbledb/bench_test.go +++ b/sei-db/db_engine/pebbledb/mvcc/bench_test.go @@ -1,17 +1,17 @@ -package pebbledb +package mvcc import ( "testing" "github.com/sei-protocol/sei-chain/sei-db/config" - sstest "github.com/sei-protocol/sei-chain/sei-db/ss/test" - "github.com/sei-protocol/sei-chain/sei-db/ss/types" + sstest "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/test" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" ) func BenchmarkDBBackend(b *testing.B) { s := &sstest.StorageBenchSuite{ NewDB: func(dir string) (types.StateStore, error) { - return New(dir, config.DefaultStateStoreConfig()) + return OpenDB(dir, config.DefaultStateStoreConfig()) }, BenchBackendName: "PebbleDB", } diff --git a/sei-db/ss/pebbledb/comparator.go b/sei-db/db_engine/pebbledb/mvcc/comparator.go similarity index 99% rename from sei-db/ss/pebbledb/comparator.go rename to sei-db/db_engine/pebbledb/mvcc/comparator.go index 24d503f31b..83a407613e 100644 --- a/sei-db/ss/pebbledb/comparator.go +++ b/sei-db/db_engine/pebbledb/mvcc/comparator.go @@ -1,4 +1,4 @@ -package pebbledb +package mvcc import ( "bytes" diff --git a/sei-db/ss/pebbledb/db.go b/sei-db/db_engine/pebbledb/mvcc/db.go similarity index 99% rename from sei-db/ss/pebbledb/db.go rename to sei-db/db_engine/pebbledb/mvcc/db.go index ea96b171a0..27cc7e532e 100644 --- a/sei-db/ss/pebbledb/db.go +++ b/sei-db/db_engine/pebbledb/mvcc/db.go @@ -1,4 +1,4 @@ -package pebbledb +package mvcc import ( "bytes" @@ -15,14 +15,14 @@ import ( "github.com/armon/go-metrics" "github.com/cockroachdb/pebble" "github.com/cockroachdb/pebble/bloom" + "github.com/sei-protocol/sei-chain/sei-db/changelog/changelog" errorutils "github.com/sei-protocol/sei-chain/sei-db/common/errors" "github.com/sei-protocol/sei-chain/sei-db/common/logger" "github.com/sei-protocol/sei-chain/sei-db/common/utils" "github.com/sei-protocol/sei-chain/sei-db/config" "github.com/sei-protocol/sei-chain/sei-db/proto" - "github.com/sei-protocol/sei-chain/sei-db/ss/types" - "github.com/sei-protocol/sei-chain/sei-db/ss/util" - "github.com/sei-protocol/sei-chain/sei-db/stream/changelog" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/util" "go.opentelemetry.io/otel/attribute" "go.opentelemetry.io/otel/metric" "golang.org/x/exp/slices" @@ -90,7 +90,7 @@ type VersionedChangesets struct { Changesets []*proto.NamedChangeSet } -func New(dataDir string, config config.StateStoreConfig) (*Database, error) { +func OpenDB(dataDir string, config config.StateStoreConfig) (*Database, error) { cache := pebble.NewCache(1024 * 1024 * 32) defer cache.Unref() opts := &pebble.Options{ diff --git a/sei-db/ss/pebbledb/db_test.go b/sei-db/db_engine/pebbledb/mvcc/db_test.go similarity index 71% rename from sei-db/ss/pebbledb/db_test.go rename to sei-db/db_engine/pebbledb/mvcc/db_test.go index 93ab936428..71fca206cc 100644 --- a/sei-db/ss/pebbledb/db_test.go +++ b/sei-db/db_engine/pebbledb/mvcc/db_test.go @@ -1,11 +1,11 @@ -package pebbledb +package mvcc import ( "testing" "github.com/sei-protocol/sei-chain/sei-db/config" - sstest "github.com/sei-protocol/sei-chain/sei-db/ss/test" - "github.com/sei-protocol/sei-chain/sei-db/ss/types" + sstest "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/test" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" "github.com/stretchr/testify/suite" ) @@ -14,7 +14,7 @@ func TestStorageTestSuite(t *testing.T) { pebbleConfig.Backend = "pebbledb" s := &sstest.StorageTestSuite{ NewDB: func(dir string, config config.StateStoreConfig) (types.StateStore, error) { - return New(dir, config) + return OpenDB(dir, config) }, Config: pebbleConfig, EmptyBatchSize: 12, diff --git a/sei-db/ss/pebbledb/hash_test.go b/sei-db/db_engine/pebbledb/mvcc/hash_test.go similarity index 98% rename from sei-db/ss/pebbledb/hash_test.go rename to sei-db/db_engine/pebbledb/mvcc/hash_test.go index b524497067..3ff1634b3c 100644 --- a/sei-db/ss/pebbledb/hash_test.go +++ b/sei-db/db_engine/pebbledb/mvcc/hash_test.go @@ -1,4 +1,4 @@ -package pebbledb +package mvcc import ( "bytes" @@ -10,7 +10,7 @@ import ( "github.com/cockroachdb/pebble" "github.com/sei-protocol/sei-chain/sei-db/config" "github.com/sei-protocol/sei-chain/sei-db/proto" - "github.com/sei-protocol/sei-chain/sei-db/ss/util" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/util" iavl "github.com/sei-protocol/sei-chain/sei-iavl" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" @@ -29,7 +29,7 @@ func setupTestDB(t *testing.T) (*Database, string) { ImportNumWorkers: 4, } - db, err := New(tempDir, cfg) + db, err := OpenDB(tempDir, cfg) require.NoError(t, err) return db, tempDir @@ -367,7 +367,7 @@ func TestAsyncComputeMissingRanges(t *testing.T) { } // Wait until async computation completes / timeouts - // We should now have hashed up to version 30 (3 complete ranges) + // We should now have hashed up to version 40 (4 complete ranges) lastHashed = waitForLastRangeHashed(t, db, 40, 5*time.Second) assert.Equal(t, int64(40), lastHashed) } @@ -436,7 +436,7 @@ func TestHashRangeDisabled(t *testing.T) { ImportNumWorkers: 4, } - db, err := New(tempDir, cfg) + db, err := OpenDB(tempDir, cfg) require.NoError(t, err) defer cleanupTestDB(t, db, tempDir) diff --git a/sei-db/ss/pebbledb/iterator.go b/sei-db/db_engine/pebbledb/mvcc/iterator.go similarity index 99% rename from sei-db/ss/pebbledb/iterator.go rename to sei-db/db_engine/pebbledb/mvcc/iterator.go index 6bc9a77719..7d2a61fc70 100644 --- a/sei-db/ss/pebbledb/iterator.go +++ b/sei-db/db_engine/pebbledb/mvcc/iterator.go @@ -1,15 +1,16 @@ -package pebbledb +package mvcc import ( "bytes" "context" "fmt" - "github.com/cockroachdb/pebble" - "github.com/sei-protocol/sei-chain/sei-db/ss/types" "go.opentelemetry.io/otel/attribute" "go.opentelemetry.io/otel/metric" "golang.org/x/exp/slices" + + "github.com/cockroachdb/pebble" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" ) var _ types.DBIterator = (*iterator)(nil) diff --git a/sei-db/ss/pebbledb/metrics.go b/sei-db/db_engine/pebbledb/mvcc/metrics.go similarity index 99% rename from sei-db/ss/pebbledb/metrics.go rename to sei-db/db_engine/pebbledb/mvcc/metrics.go index 68496afb0e..ad87087347 100644 --- a/sei-db/ss/pebbledb/metrics.go +++ b/sei-db/db_engine/pebbledb/mvcc/metrics.go @@ -1,4 +1,4 @@ -package pebbledb +package mvcc import ( "go.opentelemetry.io/otel" diff --git a/sei-db/ss/rocksdb/batch.go b/sei-db/db_engine/rocksdb/mvcc/batch.go similarity index 98% rename from sei-db/ss/rocksdb/batch.go rename to sei-db/db_engine/rocksdb/mvcc/batch.go index 65bdf421cd..d3ac532d1b 100644 --- a/sei-db/ss/rocksdb/batch.go +++ b/sei-db/db_engine/rocksdb/mvcc/batch.go @@ -1,7 +1,7 @@ //go:build rocksdbBackend // +build rocksdbBackend -package rocksdb +package mvcc import ( "encoding/binary" diff --git a/sei-db/ss/rocksdb/bench_test.go b/sei-db/db_engine/rocksdb/mvcc/bench_test.go similarity index 64% rename from sei-db/ss/rocksdb/bench_test.go rename to sei-db/db_engine/rocksdb/mvcc/bench_test.go index a2715f0526..641677f928 100644 --- a/sei-db/ss/rocksdb/bench_test.go +++ b/sei-db/db_engine/rocksdb/mvcc/bench_test.go @@ -1,20 +1,20 @@ //go:build rocksdbBackend // +build rocksdbBackend -package rocksdb +package mvcc import ( "testing" "github.com/sei-protocol/sei-chain/sei-db/config" - sstest "github.com/sei-protocol/sei-chain/sei-db/ss/test" - "github.com/sei-protocol/sei-chain/sei-db/ss/types" + sstest "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/test" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" ) func BenchmarkDBBackend(b *testing.B) { s := &sstest.StorageBenchSuite{ NewDB: func(dir string) (types.StateStore, error) { - return New(dir, config.DefaultStateStoreConfig()) + return OpenDB(dir, config.DefaultStateStoreConfig()) }, BenchBackendName: "RocksDB", } diff --git a/sei-db/ss/rocksdb/comparator.go b/sei-db/db_engine/rocksdb/mvcc/comparator.go similarity index 99% rename from sei-db/ss/rocksdb/comparator.go rename to sei-db/db_engine/rocksdb/mvcc/comparator.go index 34284f6d6d..c9d2a99fa5 100644 --- a/sei-db/ss/rocksdb/comparator.go +++ b/sei-db/db_engine/rocksdb/mvcc/comparator.go @@ -1,7 +1,7 @@ //go:build rocksdbBackend // +build rocksdbBackend -package rocksdb +package mvcc import ( "bytes" diff --git a/sei-db/ss/rocksdb/db.go b/sei-db/db_engine/rocksdb/mvcc/db.go similarity index 97% rename from sei-db/ss/rocksdb/db.go rename to sei-db/db_engine/rocksdb/mvcc/db.go index f8042622af..28ff0d6fd7 100644 --- a/sei-db/ss/rocksdb/db.go +++ b/sei-db/db_engine/rocksdb/mvcc/db.go @@ -1,7 +1,7 @@ //go:build rocksdbBackend // +build rocksdbBackend -package rocksdb +package mvcc import ( "bytes" @@ -13,14 +13,14 @@ import ( "time" "github.com/linxGnu/grocksdb" + "github.com/sei-protocol/sei-chain/sei-db/changelog/changelog" "github.com/sei-protocol/sei-chain/sei-db/common/errors" "github.com/sei-protocol/sei-chain/sei-db/common/logger" "github.com/sei-protocol/sei-chain/sei-db/common/utils" "github.com/sei-protocol/sei-chain/sei-db/config" "github.com/sei-protocol/sei-chain/sei-db/proto" - "github.com/sei-protocol/sei-chain/sei-db/ss/types" - "github.com/sei-protocol/sei-chain/sei-db/ss/util" - "github.com/sei-protocol/sei-chain/sei-db/stream/changelog" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/util" "golang.org/x/exp/slices" ) @@ -71,7 +71,7 @@ type Database struct { pendingChanges chan VersionedChangesets } -func New(dataDir string, config config.StateStoreConfig) (*Database, error) { +func OpenDB(dataDir string, config config.StateStoreConfig) (*Database, error) { //TODO: add a new config and check if readonly = true to support readonly mode storage, cfHandle, err := OpenRocksDB(dataDir) diff --git a/sei-db/ss/rocksdb/db_test.go b/sei-db/db_engine/rocksdb/mvcc/db_test.go similarity index 73% rename from sei-db/ss/rocksdb/db_test.go rename to sei-db/db_engine/rocksdb/mvcc/db_test.go index 03ee8fc90d..402a449cfc 100644 --- a/sei-db/ss/rocksdb/db_test.go +++ b/sei-db/db_engine/rocksdb/mvcc/db_test.go @@ -1,14 +1,14 @@ //go:build rocksdbBackend // +build rocksdbBackend -package rocksdb +package mvcc import ( "testing" "github.com/sei-protocol/sei-chain/sei-db/config" - sstest "github.com/sei-protocol/sei-chain/sei-db/ss/test" - "github.com/sei-protocol/sei-chain/sei-db/ss/types" + sstest "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/test" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" "github.com/stretchr/testify/suite" ) @@ -17,7 +17,7 @@ func TestStorageTestSuite(t *testing.T) { rocksConfig.Backend = "rocksdb" s := &sstest.StorageTestSuite{ NewDB: func(dir string, config config.StateStoreConfig) (types.StateStore, error) { - return New(dir, config) + return OpenDB(dir, config) }, Config: rocksConfig, EmptyBatchSize: 12, diff --git a/sei-db/ss/rocksdb/iterator.go b/sei-db/db_engine/rocksdb/mvcc/iterator.go similarity index 97% rename from sei-db/ss/rocksdb/iterator.go rename to sei-db/db_engine/rocksdb/mvcc/iterator.go index daaa8d372a..bcc561dbe7 100644 --- a/sei-db/ss/rocksdb/iterator.go +++ b/sei-db/db_engine/rocksdb/mvcc/iterator.go @@ -1,13 +1,13 @@ //go:build rocksdbBackend // +build rocksdbBackend -package rocksdb +package mvcc import ( "bytes" "github.com/linxGnu/grocksdb" - "github.com/sei-protocol/sei-chain/sei-db/ss/types" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" ) var _ types.DBIterator = (*iterator)(nil) diff --git a/sei-db/ss/rocksdb/opts.go b/sei-db/db_engine/rocksdb/mvcc/opts.go similarity index 99% rename from sei-db/ss/rocksdb/opts.go rename to sei-db/db_engine/rocksdb/mvcc/opts.go index aa4aa25e1f..61c7979de7 100644 --- a/sei-db/ss/rocksdb/opts.go +++ b/sei-db/db_engine/rocksdb/mvcc/opts.go @@ -1,7 +1,7 @@ //go:build rocksdbBackend // +build rocksdbBackend -package rocksdb +package mvcc import ( "encoding/binary" diff --git a/sei-db/ledger_db/block/placeholder.go b/sei-db/ledger_db/block/placeholder.go new file mode 100644 index 0000000000..bd5a2ecd15 --- /dev/null +++ b/sei-db/ledger_db/block/placeholder.go @@ -0,0 +1 @@ +package block diff --git a/sei-db/ledger_db/event/placeholder.go b/sei-db/ledger_db/event/placeholder.go new file mode 100644 index 0000000000..0e4b82e85c --- /dev/null +++ b/sei-db/ledger_db/event/placeholder.go @@ -0,0 +1 @@ +package event diff --git a/sei-db/ledger_db/receipt/placeholder.go b/sei-db/ledger_db/receipt/placeholder.go new file mode 100644 index 0000000000..be82dd6408 --- /dev/null +++ b/sei-db/ledger_db/receipt/placeholder.go @@ -0,0 +1 @@ +package receipt diff --git a/sei-db/ledger_db/transaction/placeholder.go b/sei-db/ledger_db/transaction/placeholder.go new file mode 100644 index 0000000000..0619207533 --- /dev/null +++ b/sei-db/ledger_db/transaction/placeholder.go @@ -0,0 +1 @@ +package transaction diff --git a/sei-db/sc/types/tree.go b/sei-db/sc/types/tree.go deleted file mode 100644 index 8545b8fd2b..0000000000 --- a/sei-db/sc/types/tree.go +++ /dev/null @@ -1,28 +0,0 @@ -package types - -import ( - "io" - - ics23 "github.com/confio/ics23/go" - dbm "github.com/tendermint/tm-db" -) - -type Tree interface { - Get(key []byte) []byte - - Has(key []byte) bool - - Set(key, value []byte) - - Remove(key []byte) - - Version() int64 - - RootHash() []byte - - Iterator(start, end []byte, ascending bool) dbm.Iterator - - GetProof(key []byte) *ics23.CommitmentProof - - io.Closer -} diff --git a/sei-db/ss/rocksdb/README.md b/sei-db/ss/rocksdb/README.md deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/sei-db/sc/live_state/lthash/api.go b/sei-db/state_db/sc/flatkv/lthash/api.go similarity index 100% rename from sei-db/sc/live_state/lthash/api.go rename to sei-db/state_db/sc/flatkv/lthash/api.go diff --git a/sei-db/sc/live_state/lthash/lthash.go b/sei-db/state_db/sc/flatkv/lthash/lthash.go similarity index 100% rename from sei-db/sc/live_state/lthash/lthash.go rename to sei-db/state_db/sc/flatkv/lthash/lthash.go diff --git a/sei-db/sc/live_state/lthash/lthash_test.go b/sei-db/state_db/sc/flatkv/lthash/lthash_test.go similarity index 100% rename from sei-db/sc/live_state/lthash/lthash_test.go rename to sei-db/state_db/sc/flatkv/lthash/lthash_test.go diff --git a/sei-db/state_db/sc/flatkv/placeholder.go b/sei-db/state_db/sc/flatkv/placeholder.go new file mode 100644 index 0000000000..e5366b611b --- /dev/null +++ b/sei-db/state_db/sc/flatkv/placeholder.go @@ -0,0 +1 @@ +package flatkv diff --git a/sei-db/sc/memiavl/README.md b/sei-db/state_db/sc/memiavl/README.md similarity index 100% rename from sei-db/sc/memiavl/README.md rename to sei-db/state_db/sc/memiavl/README.md diff --git a/sei-db/sc/memiavl/benchmark_test.go b/sei-db/state_db/sc/memiavl/benchmark_test.go similarity index 100% rename from sei-db/sc/memiavl/benchmark_test.go rename to sei-db/state_db/sc/memiavl/benchmark_test.go diff --git a/sei-db/sc/memiavl/db.go b/sei-db/state_db/sc/memiavl/db.go similarity index 99% rename from sei-db/sc/memiavl/db.go rename to sei-db/state_db/sc/memiavl/db.go index 66ace7e02f..458f3db81c 100644 --- a/sei-db/sc/memiavl/db.go +++ b/sei-db/state_db/sc/memiavl/db.go @@ -18,12 +18,12 @@ import ( "go.opentelemetry.io/otel/attribute" "go.opentelemetry.io/otel/metric" + "github.com/sei-protocol/sei-chain/sei-db/changelog/changelog" + "github.com/sei-protocol/sei-chain/sei-db/changelog/types" errorutils "github.com/sei-protocol/sei-chain/sei-db/common/errors" "github.com/sei-protocol/sei-chain/sei-db/common/logger" "github.com/sei-protocol/sei-chain/sei-db/common/utils" "github.com/sei-protocol/sei-chain/sei-db/proto" - "github.com/sei-protocol/sei-chain/sei-db/stream/changelog" - "github.com/sei-protocol/sei-chain/sei-db/stream/types" iavl "github.com/sei-protocol/sei-chain/sei-iavl" ) diff --git a/sei-db/sc/memiavl/db_rewrite_test.go b/sei-db/state_db/sc/memiavl/db_rewrite_test.go similarity index 100% rename from sei-db/sc/memiavl/db_rewrite_test.go rename to sei-db/state_db/sc/memiavl/db_rewrite_test.go diff --git a/sei-db/sc/memiavl/db_test.go b/sei-db/state_db/sc/memiavl/db_test.go similarity index 100% rename from sei-db/sc/memiavl/db_test.go rename to sei-db/state_db/sc/memiavl/db_test.go diff --git a/sei-db/sc/memiavl/export.go b/sei-db/state_db/sc/memiavl/export.go similarity index 98% rename from sei-db/sc/memiavl/export.go rename to sei-db/state_db/sc/memiavl/export.go index abdbe1721f..9d4d60d316 100644 --- a/sei-db/sc/memiavl/export.go +++ b/sei-db/state_db/sc/memiavl/export.go @@ -9,7 +9,7 @@ import ( errorutils "github.com/sei-protocol/sei-chain/sei-db/common/errors" "github.com/sei-protocol/sei-chain/sei-db/common/logger" - "github.com/sei-protocol/sei-chain/sei-db/sc/types" + "github.com/sei-protocol/sei-chain/sei-db/state_db/sc/types" ) // exportBufferSize is the number of nodes to buffer in the exporter. It improves throughput by diff --git a/sei-db/sc/memiavl/filelock.go b/sei-db/state_db/sc/memiavl/filelock.go similarity index 100% rename from sei-db/sc/memiavl/filelock.go rename to sei-db/state_db/sc/memiavl/filelock.go diff --git a/sei-db/sc/memiavl/import.go b/sei-db/state_db/sc/memiavl/import.go similarity index 99% rename from sei-db/sc/memiavl/import.go rename to sei-db/state_db/sc/memiavl/import.go index 9b625497be..18e88d67e7 100644 --- a/sei-db/sc/memiavl/import.go +++ b/sei-db/state_db/sc/memiavl/import.go @@ -9,7 +9,7 @@ import ( "time" "github.com/sei-protocol/sei-chain/sei-db/proto" - "github.com/sei-protocol/sei-chain/sei-db/sc/types" + "github.com/sei-protocol/sei-chain/sei-db/state_db/sc/types" ) var ( diff --git a/sei-db/sc/memiavl/iterator.go b/sei-db/state_db/sc/memiavl/iterator.go similarity index 100% rename from sei-db/sc/memiavl/iterator.go rename to sei-db/state_db/sc/memiavl/iterator.go diff --git a/sei-db/sc/memiavl/iterator_test.go b/sei-db/state_db/sc/memiavl/iterator_test.go similarity index 100% rename from sei-db/sc/memiavl/iterator_test.go rename to sei-db/state_db/sc/memiavl/iterator_test.go diff --git a/sei-db/sc/memiavl/layout_little_endian.go b/sei-db/state_db/sc/memiavl/layout_little_endian.go similarity index 100% rename from sei-db/sc/memiavl/layout_little_endian.go rename to sei-db/state_db/sc/memiavl/layout_little_endian.go diff --git a/sei-db/sc/memiavl/layout_native.go b/sei-db/state_db/sc/memiavl/layout_native.go similarity index 100% rename from sei-db/sc/memiavl/layout_native.go rename to sei-db/state_db/sc/memiavl/layout_native.go diff --git a/sei-db/sc/memiavl/mem_node.go b/sei-db/state_db/sc/memiavl/mem_node.go similarity index 100% rename from sei-db/sc/memiavl/mem_node.go rename to sei-db/state_db/sc/memiavl/mem_node.go diff --git a/sei-db/sc/memiavl/metrics.go b/sei-db/state_db/sc/memiavl/metrics.go similarity index 100% rename from sei-db/sc/memiavl/metrics.go rename to sei-db/state_db/sc/memiavl/metrics.go diff --git a/sei-db/sc/memiavl/mmap.go b/sei-db/state_db/sc/memiavl/mmap.go similarity index 100% rename from sei-db/sc/memiavl/mmap.go rename to sei-db/state_db/sc/memiavl/mmap.go diff --git a/sei-db/sc/memiavl/multitree.go b/sei-db/state_db/sc/memiavl/multitree.go similarity index 99% rename from sei-db/sc/memiavl/multitree.go rename to sei-db/state_db/sc/memiavl/multitree.go index b07c5b98f9..b12d5a20da 100644 --- a/sei-db/sc/memiavl/multitree.go +++ b/sei-db/state_db/sc/memiavl/multitree.go @@ -12,11 +12,11 @@ import ( "time" "github.com/alitto/pond" + "github.com/sei-protocol/sei-chain/sei-db/changelog/types" "github.com/sei-protocol/sei-chain/sei-db/common/errors" "github.com/sei-protocol/sei-chain/sei-db/common/logger" "github.com/sei-protocol/sei-chain/sei-db/common/utils" "github.com/sei-protocol/sei-chain/sei-db/proto" - "github.com/sei-protocol/sei-chain/sei-db/stream/types" iavl "github.com/sei-protocol/sei-chain/sei-iavl" "golang.org/x/exp/slices" ) diff --git a/sei-db/sc/memiavl/node.go b/sei-db/state_db/sc/memiavl/node.go similarity index 100% rename from sei-db/sc/memiavl/node.go rename to sei-db/state_db/sc/memiavl/node.go diff --git a/sei-db/sc/memiavl/opts.go b/sei-db/state_db/sc/memiavl/opts.go similarity index 100% rename from sei-db/sc/memiavl/opts.go rename to sei-db/state_db/sc/memiavl/opts.go diff --git a/sei-db/sc/memiavl/persisted_node.go b/sei-db/state_db/sc/memiavl/persisted_node.go similarity index 100% rename from sei-db/sc/memiavl/persisted_node.go rename to sei-db/state_db/sc/memiavl/persisted_node.go diff --git a/sei-db/sc/memiavl/proof.go b/sei-db/state_db/sc/memiavl/proof.go similarity index 100% rename from sei-db/sc/memiavl/proof.go rename to sei-db/state_db/sc/memiavl/proof.go diff --git a/sei-db/sc/memiavl/proof_test.go b/sei-db/state_db/sc/memiavl/proof_test.go similarity index 100% rename from sei-db/sc/memiavl/proof_test.go rename to sei-db/state_db/sc/memiavl/proof_test.go diff --git a/sei-db/sc/memiavl/snapshot.go b/sei-db/state_db/sc/memiavl/snapshot.go similarity index 98% rename from sei-db/sc/memiavl/snapshot.go rename to sei-db/state_db/sc/memiavl/snapshot.go index 0c7ce8fe9a..be84eed742 100644 --- a/sei-db/sc/memiavl/snapshot.go +++ b/sei-db/state_db/sc/memiavl/snapshot.go @@ -16,7 +16,7 @@ import ( "unsafe" "github.com/sei-protocol/sei-chain/sei-db/common/logger" - "github.com/sei-protocol/sei-chain/sei-db/sc/types" + "github.com/sei-protocol/sei-chain/sei-db/state_db/sc/types" "golang.org/x/sys/unix" "github.com/sei-protocol/sei-chain/sei-db/common/errors" @@ -986,12 +986,12 @@ func (snapshot *Snapshot) prefetchSnapshot(snapshotDir string, prefetchThreshold } if residentNodes < prefetchThreshold { - log.Info(fmt.Sprintf("Tree %s nodes page cache residency ratio is %f, below threshold %f\n", treeName, residentNodes, prefetchThreshold)) + log.Info(fmt.Sprintf("ModuleStore %s nodes page cache residency ratio is %f, below threshold %f\n", treeName, residentNodes, prefetchThreshold)) _ = SequentialReadAndFillPageCache(log, filepath.Join(snapshotDir, FileNameNodes)) } if residentLeaves < prefetchThreshold { - log.Info(fmt.Sprintf("Tree %s leaves page cache residency ratio is %f, below threshold %f\n", treeName, residentLeaves, prefetchThreshold)) + log.Info(fmt.Sprintf("ModuleStore %s leaves page cache residency ratio is %f, below threshold %f\n", treeName, residentLeaves, prefetchThreshold)) _ = SequentialReadAndFillPageCache(log, filepath.Join(snapshotDir, FileNameLeaves)) } diff --git a/sei-db/sc/memiavl/snapshot_catchup_test.go b/sei-db/state_db/sc/memiavl/snapshot_catchup_test.go similarity index 100% rename from sei-db/sc/memiavl/snapshot_catchup_test.go rename to sei-db/state_db/sc/memiavl/snapshot_catchup_test.go diff --git a/sei-db/sc/memiavl/snapshot_methods_test.go b/sei-db/state_db/sc/memiavl/snapshot_methods_test.go similarity index 98% rename from sei-db/sc/memiavl/snapshot_methods_test.go rename to sei-db/state_db/sc/memiavl/snapshot_methods_test.go index 0390f05c5b..a63835845f 100644 --- a/sei-db/sc/memiavl/snapshot_methods_test.go +++ b/sei-db/state_db/sc/memiavl/snapshot_methods_test.go @@ -4,7 +4,7 @@ import ( "context" "testing" - "github.com/sei-protocol/sei-chain/sei-db/sc/types" + "github.com/sei-protocol/sei-chain/sei-db/state_db/sc/types" "github.com/stretchr/testify/require" ) diff --git a/sei-db/sc/memiavl/snapshot_pipeline_test.go b/sei-db/state_db/sc/memiavl/snapshot_pipeline_test.go similarity index 99% rename from sei-db/sc/memiavl/snapshot_pipeline_test.go rename to sei-db/state_db/sc/memiavl/snapshot_pipeline_test.go index 6527825ba5..5e18fb5805 100644 --- a/sei-db/sc/memiavl/snapshot_pipeline_test.go +++ b/sei-db/state_db/sc/memiavl/snapshot_pipeline_test.go @@ -5,7 +5,7 @@ import ( "testing" "github.com/sei-protocol/sei-chain/sei-db/common/logger" - "github.com/sei-protocol/sei-chain/sei-db/sc/types" + "github.com/sei-protocol/sei-chain/sei-db/state_db/sc/types" iavl "github.com/sei-protocol/sei-chain/sei-iavl" "github.com/stretchr/testify/require" ) diff --git a/sei-db/sc/memiavl/snapshot_test.go b/sei-db/state_db/sc/memiavl/snapshot_test.go similarity index 98% rename from sei-db/sc/memiavl/snapshot_test.go rename to sei-db/state_db/sc/memiavl/snapshot_test.go index 8c386a8da0..7db9ea1738 100644 --- a/sei-db/sc/memiavl/snapshot_test.go +++ b/sei-db/state_db/sc/memiavl/snapshot_test.go @@ -8,7 +8,7 @@ import ( errorutils "github.com/sei-protocol/sei-chain/sei-db/common/errors" "github.com/sei-protocol/sei-chain/sei-db/common/logger" "github.com/sei-protocol/sei-chain/sei-db/proto" - "github.com/sei-protocol/sei-chain/sei-db/sc/types" + "github.com/sei-protocol/sei-chain/sei-db/state_db/sc/types" "github.com/stretchr/testify/require" ) diff --git a/sei-db/sc/memiavl/snapshot_write_test.go b/sei-db/state_db/sc/memiavl/snapshot_write_test.go similarity index 100% rename from sei-db/sc/memiavl/snapshot_write_test.go rename to sei-db/state_db/sc/memiavl/snapshot_write_test.go diff --git a/sei-db/sc/memiavl/tree.go b/sei-db/state_db/sc/memiavl/tree.go similarity index 98% rename from sei-db/sc/memiavl/tree.go rename to sei-db/state_db/sc/memiavl/tree.go index bca5cec399..38f2a6651e 100644 --- a/sei-db/sc/memiavl/tree.go +++ b/sei-db/state_db/sc/memiavl/tree.go @@ -10,12 +10,12 @@ import ( ics23 "github.com/confio/ics23/go" "github.com/sei-protocol/sei-chain/sei-db/common/logger" "github.com/sei-protocol/sei-chain/sei-db/common/utils" - "github.com/sei-protocol/sei-chain/sei-db/sc/types" + "github.com/sei-protocol/sei-chain/sei-db/state_db/sc/types" iavl "github.com/sei-protocol/sei-chain/sei-iavl" dbm "github.com/tendermint/tm-db" ) -var _ types.Tree = (*Tree)(nil) +var _ types.ModuleStore = (*Tree)(nil) var emptyHash = sha256.New().Sum(nil) // Tree verify change sets by replay them to rebuild iavl tree and verify the root hashes diff --git a/sei-db/sc/memiavl/tree_test.go b/sei-db/state_db/sc/memiavl/tree_test.go similarity index 100% rename from sei-db/sc/memiavl/tree_test.go rename to sei-db/state_db/sc/memiavl/tree_test.go diff --git a/sei-db/sc/store.go b/sei-db/state_db/sc/store.go similarity index 95% rename from sei-db/sc/store.go rename to sei-db/state_db/sc/store.go index 627e4b34b2..60127fb0c3 100644 --- a/sei-db/sc/store.go +++ b/sei-db/state_db/sc/store.go @@ -9,8 +9,8 @@ import ( "github.com/sei-protocol/sei-chain/sei-db/common/utils" "github.com/sei-protocol/sei-chain/sei-db/config" "github.com/sei-protocol/sei-chain/sei-db/proto" - "github.com/sei-protocol/sei-chain/sei-db/sc/memiavl" - "github.com/sei-protocol/sei-chain/sei-db/sc/types" + "github.com/sei-protocol/sei-chain/sei-db/state_db/sc/memiavl" + "github.com/sei-protocol/sei-chain/sei-db/state_db/sc/types" ) var _ types.Committer = (*CommitStore)(nil) @@ -127,7 +127,7 @@ func (cs *CommitStore) LastCommitInfo() *proto.CommitInfo { return cs.db.LastCommitInfo() } -func (cs *CommitStore) GetTreeByName(name string) types.Tree { +func (cs *CommitStore) GetModuleByName(name string) types.ModuleStore { return cs.db.TreeByName(name) } diff --git a/sei-db/sc/types/snapshot.go b/sei-db/state_db/sc/types/snapshot.go similarity index 100% rename from sei-db/sc/types/snapshot.go rename to sei-db/state_db/sc/types/snapshot.go diff --git a/sei-db/sc/types/store.go b/sei-db/state_db/sc/types/store.go similarity index 64% rename from sei-db/sc/types/store.go rename to sei-db/state_db/sc/types/store.go index 8cda44f416..9da040a77f 100644 --- a/sei-db/sc/types/store.go +++ b/sei-db/state_db/sc/types/store.go @@ -3,6 +3,9 @@ package types import ( "io" + ics23 "github.com/confio/ics23/go" + dbm "github.com/tendermint/tm-db" + "github.com/sei-protocol/sei-chain/sei-db/proto" ) @@ -31,7 +34,7 @@ type Committer interface { SetInitialVersion(initialVersion int64) error - GetTreeByName(name string) Tree + GetModuleByName(name string) ModuleStore Importer(version int64) (Importer, error) @@ -39,3 +42,23 @@ type Committer interface { io.Closer } + +type ModuleStore interface { + Get(key []byte) []byte + + Has(key []byte) bool + + Set(key, value []byte) + + Remove(key []byte) + + Version() int64 + + RootHash() []byte + + Iterator(start, end []byte, ascending bool) dbm.Iterator + + GetProof(key []byte) *ics23.CommitmentProof + + io.Closer +} diff --git a/sei-db/ss/pebbledb_init.go b/sei-db/state_db/ss/pebbledb_init.go similarity index 71% rename from sei-db/ss/pebbledb_init.go rename to sei-db/state_db/ss/pebbledb_init.go index 80640a3574..0317149ce2 100644 --- a/sei-db/ss/pebbledb_init.go +++ b/sei-db/state_db/ss/pebbledb_init.go @@ -3,8 +3,8 @@ package ss import ( "github.com/sei-protocol/sei-chain/sei-db/common/utils" "github.com/sei-protocol/sei-chain/sei-db/config" - "github.com/sei-protocol/sei-chain/sei-db/ss/pebbledb" - "github.com/sei-protocol/sei-chain/sei-db/ss/types" + "github.com/sei-protocol/sei-chain/sei-db/db_engine/pebbledb/mvcc" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" ) func init() { @@ -13,7 +13,7 @@ func init() { if configs.DBDirectory != "" { dbHome = configs.DBDirectory } - return pebbledb.New(dbHome, configs) + return mvcc.OpenDB(dbHome, configs) } RegisterBackend(PebbleDBBackend, initializer) } diff --git a/sei-db/ss/pruning/manager.go b/sei-db/state_db/ss/pruning/manager.go similarity index 96% rename from sei-db/ss/pruning/manager.go rename to sei-db/state_db/ss/pruning/manager.go index 010c249bb9..6e4e1cb876 100644 --- a/sei-db/ss/pruning/manager.go +++ b/sei-db/state_db/ss/pruning/manager.go @@ -6,7 +6,7 @@ import ( "time" "github.com/sei-protocol/sei-chain/sei-db/common/logger" - "github.com/sei-protocol/sei-chain/sei-db/ss/types" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" ) type Manager struct { diff --git a/sei-db/ss/rocksdb_init.go b/sei-db/state_db/ss/rocksdb_init.go similarity index 72% rename from sei-db/ss/rocksdb_init.go rename to sei-db/state_db/ss/rocksdb_init.go index 9d05385a8c..0bc483fd78 100644 --- a/sei-db/ss/rocksdb_init.go +++ b/sei-db/state_db/ss/rocksdb_init.go @@ -5,8 +5,8 @@ package ss import ( "github.com/sei-protocol/sei-chain/sei-db/common/utils" "github.com/sei-protocol/sei-chain/sei-db/config" - "github.com/sei-protocol/sei-chain/sei-db/ss/rocksdb" - "github.com/sei-protocol/sei-chain/sei-db/ss/types" + "github.com/sei-protocol/sei-chain/sei-db/db_engine/rocksdb/mvcc" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" ) func init() { @@ -15,7 +15,7 @@ func init() { if configs.DBDirectory != "" { dbHome = configs.DBDirectory } - return rocksdb.New(dbHome, configs) + return mvcc.OpenDB(dbHome, configs) } RegisterBackend(RocksDBBackend, initializer) } diff --git a/sei-db/ss/store.go b/sei-db/state_db/ss/store.go similarity index 95% rename from sei-db/ss/store.go rename to sei-db/state_db/ss/store.go index 3eeb5f80db..26a2cba9ac 100644 --- a/sei-db/ss/store.go +++ b/sei-db/state_db/ss/store.go @@ -3,13 +3,13 @@ package ss import ( "fmt" + "github.com/sei-protocol/sei-chain/sei-db/changelog/changelog" "github.com/sei-protocol/sei-chain/sei-db/common/logger" "github.com/sei-protocol/sei-chain/sei-db/common/utils" "github.com/sei-protocol/sei-chain/sei-db/config" "github.com/sei-protocol/sei-chain/sei-db/proto" - "github.com/sei-protocol/sei-chain/sei-db/ss/pruning" - "github.com/sei-protocol/sei-chain/sei-db/ss/types" - "github.com/sei-protocol/sei-chain/sei-db/stream/changelog" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/pruning" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" ) type BackendType string diff --git a/sei-db/ss/store_test.go b/sei-db/state_db/ss/store_test.go similarity index 100% rename from sei-db/ss/store_test.go rename to sei-db/state_db/ss/store_test.go diff --git a/sei-db/ss/test/storage_bench_suite.go b/sei-db/state_db/ss/test/storage_bench_suite.go similarity index 98% rename from sei-db/ss/test/storage_bench_suite.go rename to sei-db/state_db/ss/test/storage_bench_suite.go index ee5376274e..78d2536a7c 100644 --- a/sei-db/ss/test/storage_bench_suite.go +++ b/sei-db/state_db/ss/test/storage_bench_suite.go @@ -7,7 +7,7 @@ import ( "testing" "github.com/sei-protocol/sei-chain/sei-db/proto" - "github.com/sei-protocol/sei-chain/sei-db/ss/types" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" iavl "github.com/sei-protocol/sei-chain/sei-iavl" "github.com/stretchr/testify/require" ) diff --git a/sei-db/ss/test/storage_test_suite.go b/sei-db/state_db/ss/test/storage_test_suite.go similarity index 99% rename from sei-db/ss/test/storage_test_suite.go rename to sei-db/state_db/ss/test/storage_test_suite.go index f8fd1e55b0..0fd10e3396 100644 --- a/sei-db/ss/test/storage_test_suite.go +++ b/sei-db/state_db/ss/test/storage_test_suite.go @@ -6,7 +6,7 @@ import ( "github.com/sei-protocol/sei-chain/sei-db/config" "github.com/sei-protocol/sei-chain/sei-db/proto" - "github.com/sei-protocol/sei-chain/sei-db/ss/types" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" iavl "github.com/sei-protocol/sei-chain/sei-iavl" "github.com/stretchr/testify/suite" "golang.org/x/exp/slices" diff --git a/sei-db/ss/test/utils.go b/sei-db/state_db/ss/test/utils.go similarity index 96% rename from sei-db/ss/test/utils.go rename to sei-db/state_db/ss/test/utils.go index 3ce9c30dd7..1e444e935d 100644 --- a/sei-db/ss/test/utils.go +++ b/sei-db/state_db/ss/test/utils.go @@ -4,7 +4,7 @@ import ( "fmt" "github.com/sei-protocol/sei-chain/sei-db/proto" - "github.com/sei-protocol/sei-chain/sei-db/ss/types" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" iavl "github.com/sei-protocol/sei-chain/sei-iavl" ) diff --git a/sei-db/ss/types/store.go b/sei-db/state_db/ss/types/store.go similarity index 100% rename from sei-db/ss/types/store.go rename to sei-db/state_db/ss/types/store.go diff --git a/sei-db/ss/util/iterator.go b/sei-db/state_db/ss/util/iterator.go similarity index 100% rename from sei-db/ss/util/iterator.go rename to sei-db/state_db/ss/util/iterator.go diff --git a/sei-db/ss/util/modules.go b/sei-db/state_db/ss/util/modules.go similarity index 100% rename from sei-db/ss/util/modules.go rename to sei-db/state_db/ss/util/modules.go diff --git a/sei-db/ss/util/types.go b/sei-db/state_db/ss/util/types.go similarity index 100% rename from sei-db/ss/util/types.go rename to sei-db/state_db/ss/util/types.go diff --git a/sei-db/ss/util/xor_hasher.go b/sei-db/state_db/ss/util/xor_hasher.go similarity index 98% rename from sei-db/ss/util/xor_hasher.go rename to sei-db/state_db/ss/util/xor_hasher.go index 24b52182f2..fa6aff2b36 100644 --- a/sei-db/ss/util/xor_hasher.go +++ b/sei-db/state_db/ss/util/xor_hasher.go @@ -5,7 +5,7 @@ import ( "encoding/binary" "sync" - "github.com/sei-protocol/sei-chain/sei-db/ss/types" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" ) var _ HashCalculator = (*XorHashCalculator)(nil) diff --git a/sei-db/tools/bench/benchmark.go b/sei-db/tools/bench/benchmark.go index bbee44e58a..e91c0b1620 100644 --- a/sei-db/tools/bench/benchmark.go +++ b/sei-db/tools/bench/benchmark.go @@ -10,7 +10,7 @@ import ( "time" "github.com/sei-protocol/sei-chain/sei-db/proto" - "github.com/sei-protocol/sei-chain/sei-db/ss/types" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" "github.com/sei-protocol/sei-chain/sei-db/tools/utils" iavl "github.com/sei-protocol/sei-chain/sei-iavl" ) diff --git a/sei-db/tools/cmd/seidb/benchmark/iteration.go b/sei-db/tools/cmd/seidb/benchmark/iteration.go index dee456dac7..ef81d2e056 100644 --- a/sei-db/tools/cmd/seidb/benchmark/iteration.go +++ b/sei-db/tools/cmd/seidb/benchmark/iteration.go @@ -5,7 +5,7 @@ import ( "github.com/sei-protocol/sei-chain/sei-db/common/logger" "github.com/sei-protocol/sei-chain/sei-db/config" - "github.com/sei-protocol/sei-chain/sei-db/ss" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss" "github.com/sei-protocol/sei-chain/sei-db/tools/bench" "github.com/spf13/cobra" ) diff --git a/sei-db/tools/cmd/seidb/benchmark/random_read.go b/sei-db/tools/cmd/seidb/benchmark/random_read.go index f432c76c22..7769b900b0 100644 --- a/sei-db/tools/cmd/seidb/benchmark/random_read.go +++ b/sei-db/tools/cmd/seidb/benchmark/random_read.go @@ -7,7 +7,7 @@ import ( "github.com/sei-protocol/sei-chain/sei-db/common/logger" "github.com/sei-protocol/sei-chain/sei-db/config" - "github.com/sei-protocol/sei-chain/sei-db/ss" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss" "github.com/sei-protocol/sei-chain/sei-db/tools/bench" "github.com/spf13/cobra" ) diff --git a/sei-db/tools/cmd/seidb/benchmark/reverse_iteration.go b/sei-db/tools/cmd/seidb/benchmark/reverse_iteration.go index 2754a3eca9..b4a73ccbdc 100644 --- a/sei-db/tools/cmd/seidb/benchmark/reverse_iteration.go +++ b/sei-db/tools/cmd/seidb/benchmark/reverse_iteration.go @@ -5,7 +5,7 @@ import ( "github.com/sei-protocol/sei-chain/sei-db/common/logger" "github.com/sei-protocol/sei-chain/sei-db/config" - "github.com/sei-protocol/sei-chain/sei-db/ss" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss" "github.com/sei-protocol/sei-chain/sei-db/tools/bench" "github.com/spf13/cobra" ) diff --git a/sei-db/tools/cmd/seidb/benchmark/write.go b/sei-db/tools/cmd/seidb/benchmark/write.go index ae4493c980..f54c7c79ad 100644 --- a/sei-db/tools/cmd/seidb/benchmark/write.go +++ b/sei-db/tools/cmd/seidb/benchmark/write.go @@ -7,7 +7,7 @@ import ( "github.com/sei-protocol/sei-chain/sei-db/common/logger" "github.com/sei-protocol/sei-chain/sei-db/config" - "github.com/sei-protocol/sei-chain/sei-db/ss" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss" "github.com/sei-protocol/sei-chain/sei-db/tools/bench" "github.com/spf13/cobra" ) diff --git a/sei-db/tools/cmd/seidb/operations/dump_db.go b/sei-db/tools/cmd/seidb/operations/dump_db.go index 33fb5ba7b0..e760e695d5 100644 --- a/sei-db/tools/cmd/seidb/operations/dump_db.go +++ b/sei-db/tools/cmd/seidb/operations/dump_db.go @@ -7,7 +7,7 @@ import ( "github.com/sei-protocol/sei-chain/sei-db/common/logger" "github.com/sei-protocol/sei-chain/sei-db/config" - "github.com/sei-protocol/sei-chain/sei-db/ss" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss" "github.com/sei-protocol/sei-chain/sei-db/tools/cmd/seidb/benchmark" "github.com/sei-protocol/sei-chain/sei-db/tools/utils" "github.com/spf13/cobra" diff --git a/sei-db/tools/cmd/seidb/operations/dump_iavl.go b/sei-db/tools/cmd/seidb/operations/dump_iavl.go index bed3576af2..a8b3e4f779 100644 --- a/sei-db/tools/cmd/seidb/operations/dump_iavl.go +++ b/sei-db/tools/cmd/seidb/operations/dump_iavl.go @@ -4,7 +4,7 @@ import ( "fmt" "github.com/sei-protocol/sei-chain/sei-db/common/logger" - "github.com/sei-protocol/sei-chain/sei-db/sc/memiavl" + "github.com/sei-protocol/sei-chain/sei-db/state_db/sc/memiavl" "github.com/sei-protocol/sei-chain/sei-db/tools/utils" "github.com/spf13/cobra" ) diff --git a/sei-db/tools/cmd/seidb/operations/prune.go b/sei-db/tools/cmd/seidb/operations/prune.go index 99ae5ec0f0..ee92e0d367 100644 --- a/sei-db/tools/cmd/seidb/operations/prune.go +++ b/sei-db/tools/cmd/seidb/operations/prune.go @@ -6,7 +6,7 @@ import ( "github.com/sei-protocol/sei-chain/sei-db/common/logger" "github.com/sei-protocol/sei-chain/sei-db/config" - "github.com/sei-protocol/sei-chain/sei-db/ss" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss" "github.com/sei-protocol/sei-chain/sei-db/tools/cmd/seidb/benchmark" "github.com/spf13/cobra" ) diff --git a/sei-db/tools/cmd/seidb/operations/replay_changelog.go b/sei-db/tools/cmd/seidb/operations/replay_changelog.go index c51eb9d559..77d3c89ac9 100644 --- a/sei-db/tools/cmd/seidb/operations/replay_changelog.go +++ b/sei-db/tools/cmd/seidb/operations/replay_changelog.go @@ -4,12 +4,12 @@ import ( "fmt" "path/filepath" + "github.com/sei-protocol/sei-chain/sei-db/changelog/changelog" "github.com/sei-protocol/sei-chain/sei-db/common/logger" "github.com/sei-protocol/sei-chain/sei-db/config" "github.com/sei-protocol/sei-chain/sei-db/proto" - "github.com/sei-protocol/sei-chain/sei-db/ss" - "github.com/sei-protocol/sei-chain/sei-db/ss/types" - "github.com/sei-protocol/sei-chain/sei-db/stream/changelog" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" "github.com/spf13/cobra" ) diff --git a/sei-db/tools/cmd/seidb/operations/state_size.go b/sei-db/tools/cmd/seidb/operations/state_size.go index 8b795e082d..51e8821c9d 100644 --- a/sei-db/tools/cmd/seidb/operations/state_size.go +++ b/sei-db/tools/cmd/seidb/operations/state_size.go @@ -7,7 +7,7 @@ import ( "strings" "github.com/sei-protocol/sei-chain/sei-db/common/logger" - "github.com/sei-protocol/sei-chain/sei-db/sc/memiavl" + "github.com/sei-protocol/sei-chain/sei-db/state_db/sc/memiavl" "github.com/sei-protocol/sei-chain/sei-db/tools/utils" "github.com/spf13/cobra" ) diff --git a/tools/hash_verification/cmd/cmd.go b/tools/hash_verification/cmd/cmd.go index d61164af46..5737bd97d8 100644 --- a/tools/hash_verification/cmd/cmd.go +++ b/tools/hash_verification/cmd/cmd.go @@ -6,7 +6,7 @@ import ( "github.com/spf13/cobra" "github.com/sei-protocol/sei-chain/sei-db/config" - sstypes "github.com/sei-protocol/sei-chain/sei-db/ss" + sstypes "github.com/sei-protocol/sei-chain/sei-db/state_db/ss" "github.com/sei-protocol/sei-chain/tools/hash_verification/iavl" "github.com/sei-protocol/sei-chain/tools/hash_verification/pebbledb" "github.com/tendermint/tendermint/libs/log" diff --git a/tools/hash_verification/hasher/xor_hasher.go b/tools/hash_verification/hasher/xor_hasher.go index 40cb2e9d5f..e827fdcbaf 100644 --- a/tools/hash_verification/hasher/xor_hasher.go +++ b/tools/hash_verification/hasher/xor_hasher.go @@ -5,7 +5,7 @@ import ( "encoding/binary" "sync" - "github.com/sei-protocol/sei-chain/sei-db/ss/types" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" ) var _ HashCalculator = (*XorHashCalculator)(nil) diff --git a/tools/hash_verification/iavl/scanner.go b/tools/hash_verification/iavl/scanner.go index 60c18db936..836f044a31 100644 --- a/tools/hash_verification/iavl/scanner.go +++ b/tools/hash_verification/iavl/scanner.go @@ -5,7 +5,7 @@ import ( "fmt" "github.com/cosmos/cosmos-sdk/store/rootmulti" - "github.com/sei-protocol/sei-chain/sei-db/ss/types" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" iavl "github.com/sei-protocol/sei-chain/sei-iavl" "github.com/sei-protocol/sei-chain/tools/hash_verification/hasher" "github.com/sei-protocol/sei-chain/tools/utils" diff --git a/tools/hash_verification/pebbledb/scanner.go b/tools/hash_verification/pebbledb/scanner.go index 7b123993a7..569eee91a3 100644 --- a/tools/hash_verification/pebbledb/scanner.go +++ b/tools/hash_verification/pebbledb/scanner.go @@ -3,7 +3,7 @@ package pebbledb import ( "fmt" - "github.com/sei-protocol/sei-chain/sei-db/ss/types" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" "github.com/sei-protocol/sei-chain/tools/hash_verification/hasher" "github.com/sei-protocol/sei-chain/tools/utils" ) diff --git a/tools/migration/cmd/cmd.go b/tools/migration/cmd/cmd.go index b6b158abb3..6de18b98c9 100644 --- a/tools/migration/cmd/cmd.go +++ b/tools/migration/cmd/cmd.go @@ -8,7 +8,7 @@ import ( "github.com/cosmos/cosmos-sdk/store/rootmulti" "github.com/sei-protocol/sei-chain/sei-db/config" - sstypes "github.com/sei-protocol/sei-chain/sei-db/ss" + sstypes "github.com/sei-protocol/sei-chain/sei-db/state_db/ss" iavl "github.com/sei-protocol/sei-chain/sei-iavl" "github.com/sei-protocol/sei-chain/tools/migration/sc" "github.com/sei-protocol/sei-chain/tools/migration/ss" diff --git a/tools/migration/ss/migrator.go b/tools/migration/ss/migrator.go index dbe7ce50d9..7db6470a30 100644 --- a/tools/migration/ss/migrator.go +++ b/tools/migration/ss/migrator.go @@ -6,7 +6,7 @@ import ( "time" "github.com/armon/go-metrics" - "github.com/sei-protocol/sei-chain/sei-db/ss/types" + "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" iavl "github.com/sei-protocol/sei-chain/sei-iavl" "github.com/sei-protocol/sei-chain/tools/utils" seimetrics "github.com/sei-protocol/sei-chain/utils/metrics" diff --git a/x/evm/keeper/keeper.go b/x/evm/keeper/keeper.go index 5cccbd91b0..7a7bc20311 100644 --- a/x/evm/keeper/keeper.go +++ b/x/evm/keeper/keeper.go @@ -30,7 +30,7 @@ import ( "github.com/ethereum/go-ethereum/params" "github.com/ethereum/go-ethereum/tests" "github.com/holiman/uint256" - seidbtypes "github.com/sei-protocol/sei-chain/sei-db/ss/types" + seidbtypes "github.com/sei-protocol/sei-chain/sei-db/state_db/ss/types" ibctransferkeeper "github.com/sei-protocol/sei-chain/sei-ibc-go/modules/apps/transfer/keeper" wasmkeeper "github.com/sei-protocol/sei-chain/sei-wasmd/x/wasm/keeper" abci "github.com/tendermint/tendermint/abci/types"