ipfs / go-ds-flatfs

A datastore implementation using sharded directories and flat files to store data
MIT License
46 stars 21 forks source link

`panic: send on closed channel` when cancelled command while adding content #45

Open schomatis opened 6 years ago

schomatis commented 6 years ago
Error: context canceled
panic: send on closed channel

goroutine 72 [running]:
gx/ipfs/Qmc1ExJkrEUesbvRNHq6g3bJ2km7K4XffcC2bvwdpfGYDx/go-ds-flatfs.(*Datastore).checkpointDiskUsage(0xc420514230)
    ~/go/src/gx/ipfs/Qmc1ExJkrEUesbvRNHq6g3bJ2km7K4XffcC2bvwdpfGYDx/go-ds-flatfs/flatfs.go:820 +0x39
gx/ipfs/Qmc1ExJkrEUesbvRNHq6g3bJ2km7K4XffcC2bvwdpfGYDx/go-ds-flatfs.(*Datastore).updateDiskUsage(0xc420514230, 0xc420ddecc0, 0x1a, 0x1)
    ~/go/src/gx/ipfs/Qmc1ExJkrEUesbvRNHq6g3bJ2km7K4XffcC2bvwdpfGYDx/go-ds-flatfs/flatfs.go:814 +0x65
gx/ipfs/Qmc1ExJkrEUesbvRNHq6g3bJ2km7K4XffcC2bvwdpfGYDx/go-ds-flatfs.(*Datastore).makeDirNoSync(0xc420514230, 0xc420ddecc0, 0x1a, 0xc420ddecc0, 0x1a)
    ~/go/src/gx/ipfs/Qmc1ExJkrEUesbvRNHq6g3bJ2km7K4XffcC2bvwdpfGYDx/go-ds-flatfs/flatfs.go:321 +0xc8
gx/ipfs/Qmc1ExJkrEUesbvRNHq6g3bJ2km7K4XffcC2bvwdpfGYDx/go-ds-flatfs.(*Datastore).putMany(0xc420514230, 0xc4206fb290, 0x0, 0x0)
    ~/go/src/gx/ipfs/Qmc1ExJkrEUesbvRNHq6g3bJ2km7K4XffcC2bvwdpfGYDx/go-ds-flatfs/flatfs.go:482 +0x1e8
gx/ipfs/Qmc1ExJkrEUesbvRNHq6g3bJ2km7K4XffcC2bvwdpfGYDx/go-ds-flatfs.(*flatfsBatch).Commit(0xc4206f0ac0, 0x3cd300c3, 0x1d8ad60)
    ~/go/src/gx/ipfs/Qmc1ExJkrEUesbvRNHq6g3bJ2km7K4XffcC2bvwdpfGYDx/go-ds-flatfs/flatfs.go:1039 +0x4c
gx/ipfs/QmPMRquZA1WiRMQ5ZE2V1kHtnPaq2X5Qtz7Wgwwo2tjLyS/go-ds-measure.logBatchCommit(0x1589460, 0xc4206f0ac0, 0x1, 0x157c020, 0x1da9ee0, 0x157c020, 0x1da9ee0, 0x1577a00, 0x1da9ee0, 0x0, ...)
    ~/go/src/gx/ipfs/QmPMRquZA1WiRMQ5ZE2V1kHtnPaq2X5Qtz7Wgwwo2tjLyS/go-ds-measure/measure.go:297 +0x65
gx/ipfs/QmPMRquZA1WiRMQ5ZE2V1kHtnPaq2X5Qtz7Wgwwo2tjLyS/go-ds-measure.(*measuredBatch).Commit(0xc42071f040, 0xc4206fb200, 0xc42006c9d0)
    ~/go/src/gx/ipfs/QmPMRquZA1WiRMQ5ZE2V1kHtnPaq2X5Qtz7Wgwwo2tjLyS/go-ds-measure/measure.go:286 +0x101
gx/ipfs/QmeiCcJfDW1GJnWUArudsv5rQsihpi4oyddPhdqo3CfX6i/go-datastore/mount.(*mountBatch).Commit(0xc4206f0a20, 0x0, 0x0)
    ~/go/src/gx/ipfs/QmeiCcJfDW1GJnWUArudsv5rQsihpi4oyddPhdqo3CfX6i/go-datastore/mount/mount.go:272 +0xf9
gx/ipfs/QmPMRquZA1WiRMQ5ZE2V1kHtnPaq2X5Qtz7Wgwwo2tjLyS/go-ds-measure.logBatchCommit(0x1589820, 0xc4206f0a20, 0x1, 0x157c020, 0x1da9ee0, 0x157c020, 0x1da9ee0, 0x1577a00, 0x1da9ee0, 0x0, ...)
    ~/go/src/gx/ipfs/QmPMRquZA1WiRMQ5ZE2V1kHtnPaq2X5Qtz7Wgwwo2tjLyS/go-ds-measure/measure.go:297 +0x65
gx/ipfs/QmPMRquZA1WiRMQ5ZE2V1kHtnPaq2X5Qtz7Wgwwo2tjLyS/go-ds-measure.(*measuredBatch).Commit(0xc42071f000, 0x0, 0x0)
    ~/go/src/gx/ipfs/QmPMRquZA1WiRMQ5ZE2V1kHtnPaq2X5Qtz7Wgwwo2tjLyS/go-ds-measure/measure.go:286 +0x101
gx/ipfs/QmeiCcJfDW1GJnWUArudsv5rQsihpi4oyddPhdqo3CfX6i/go-datastore/keytransform.(*transformBatch).Commit(0xc4206f0a60, 0xc420721080, 0x38)
    ~/go/src/gx/ipfs/QmeiCcJfDW1GJnWUArudsv5rQsihpi4oyddPhdqo3CfX6i/go-datastore/keytransform/keytransform.go:123 +0x33
gx/ipfs/QmadMhXJLHMFjpRmh85XjpmVDkEtQpNYEZNRpWRvYVLrvb/go-ipfs-blockstore.(*blockstore).PutMany(0xc4202986e0, 0xc420297d00, 0x1, 0x1, 0x0, 0xc4200a8c80)
    ~/go/src/gx/ipfs/QmadMhXJLHMFjpRmh85XjpmVDkEtQpNYEZNRpWRvYVLrvb/go-ipfs-blockstore/blockstore.go:179 +0x1fa
github.com/ipfs/go-ipfs/thirdparty/verifbs.(*VerifBS).PutMany(0xc420296490, 0xc420297d00, 0x1, 0x1, 0x1, 0xc420297d00)
    ~/go/src/github.com/ipfs/go-ipfs/thirdparty/verifbs/verifbs.go:54 +0xc1
gx/ipfs/QmadMhXJLHMFjpRmh85XjpmVDkEtQpNYEZNRpWRvYVLrvb/go-ipfs-blockstore.(*arccache).PutMany(0xc42015c4c0, 0xc420297ce0, 0x1, 0x1, 0x0, 0x1)
    ~/go/src/gx/ipfs/QmadMhXJLHMFjpRmh85XjpmVDkEtQpNYEZNRpWRvYVLrvb/go-ipfs-blockstore/arc_cache.go:123 +0x1af
gx/ipfs/QmadMhXJLHMFjpRmh85XjpmVDkEtQpNYEZNRpWRvYVLrvb/go-ipfs-blockstore.(*idstore).PutMany(0xc4202964b0, 0xc420297cb0, 0x1, 0x1, 0x0, 0x0)
    ~/go/src/gx/ipfs/QmadMhXJLHMFjpRmh85XjpmVDkEtQpNYEZNRpWRvYVLrvb/go-ipfs-blockstore/idstore.go:69 +0x1bf
gx/ipfs/QmNqRBAhovtf4jVd5cF7YvHaFSsQHHZBaUFwGQWPM2CV7R/go-blockservice.(*blockService).AddBlocks(0xc4206fa7b0, 0xc420297ca0, 0x1, 0x1, 0xc4201e7730, 0x1)
    ~/go/src/gx/ipfs/QmNqRBAhovtf4jVd5cF7YvHaFSsQHHZBaUFwGQWPM2CV7R/go-blockservice/blockservice.go:182 +0x109
gx/ipfs/QmRy4Qk9hbgFX9NGJRm8rBThrA8PZhNCitMgeRYyZ67s59/go-merkledag.(*dagService).AddMany(0xc420045970, 0x158b920, 0xc42071ee40, 0xc420297c80, 0x1, 0x1, 0xed2f04fb3, 0x1d8ad60)
    ~/go/src/gx/ipfs/QmRy4Qk9hbgFX9NGJRm8rBThrA8PZhNCitMgeRYyZ67s59/go-merkledag/merkledag.go:59 +0x134
gx/ipfs/QmZtNq8dArGfnpCZfx2pUNY7UcjGhVp5qqwQ4hH6mpTMRQ/go-ipld-format.(*Batch).asyncCommit.func1(0x158b920, 0xc42071ee40, 0xc420297c80, 0x1, 0x1, 0xc420149d40, 0x158f520, 0xc420045970)
    ~/go/src/gx/ipfs/QmZtNq8dArGfnpCZfx2pUNY7UcjGhVp5qqwQ4hH6mpTMRQ/go-ipld-format/batch.go:96 +0x8a
created by gx/ipfs/QmZtNq8dArGfnpCZfx2pUNY7UcjGhVp5qqwQ4hH6mpTMRQ/go-ipld-format.(*Batch).asyncCommit
    ~/go/src/gx/ipfs/QmZtNq8dArGfnpCZfx2pUNY7UcjGhVp5qqwQ4hH6mpTMRQ/go-ipld-format/batch.go:94 +0xbc
$ ipfs version --all
go-ipfs version: 0.4.18-dev-a14cfc8
Repo version: 7
System version: amd64/linux
Golang version: go1.10