diff --git a/sqlchain/chain.go b/sqlchain/chain.go index eaf6bb6ef..b2b7f87b7 100644 --- a/sqlchain/chain.go +++ b/sqlchain/chain.go @@ -181,6 +181,12 @@ func NewChainWithContext(ctx context.Context, c *Config) (chain *Chain, err erro return } + metaKeyPrefix, err := c.DatabaseID.AccountAddress() + if err != nil { + err = errors.Wrap(err, "failed to generate database meta prefix") + return + } + // Create chain state chain = &Chain{ bi: newBlockIndex(), @@ -199,9 +205,9 @@ func NewChainWithContext(ctx context.Context, c *Config) (chain *Chain, err erro pk: pk, addr: &addr, - metaBlockIndex: utils.ConcatAll([]byte(c.DatabaseID), metaBlockIndex[:]), - metaResponseIndex: utils.ConcatAll([]byte(c.DatabaseID), metaResponseIndex[:]), - metaAckIndex: utils.ConcatAll([]byte(c.DatabaseID), metaAckIndex[:]), + metaBlockIndex: utils.ConcatAll(metaKeyPrefix[:], metaBlockIndex[:]), + metaResponseIndex: utils.ConcatAll(metaKeyPrefix[:], metaResponseIndex[:]), + metaAckIndex: utils.ConcatAll(metaKeyPrefix[:], metaAckIndex[:]), } le = le.WithField("peer", chain.rt.getPeerInfoString()) diff --git a/worker/db_test.go b/worker/db_test.go index 3debf8569..34d5ea7a3 100644 --- a/worker/db_test.go +++ b/worker/db_test.go @@ -70,7 +70,7 @@ func TestSingleDatabase(t *testing.T) { // create file cfg := &DBConfig{ - DatabaseID: "TEST", + DatabaseID: "00000bef611d346c0cbe1beaa76e7f0ed705a194fdf9ac3a248ec70e9c198bf9", DataDir: rootDir, KayakMux: kayakMuxService, ChainMux: chainMuxService, @@ -409,7 +409,7 @@ func TestInitFailed(t *testing.T) { // create file cfg := &DBConfig{ - DatabaseID: "TEST", + DatabaseID: "00000bef611d346c0cbe1beaa76e7f0ed705a194fdf9ac3a248ec70e9c198bf9", DataDir: rootDir, KayakMux: kayakMuxService, ChainMux: chainMuxService, @@ -464,7 +464,7 @@ func TestDatabaseRecycle(t *testing.T) { // create file cfg := &DBConfig{ - DatabaseID: "TEST", + DatabaseID: "00000bef611d346c0cbe1beaa76e7f0ed705a194fdf9ac3a248ec70e9c198bf9", DataDir: rootDir, KayakMux: kayakMuxService, ChainMux: chainMuxService,