whosonfirst / go-whosonfirst-csvdb

Experimental in-memory database for CSV files.
0 stars 1 forks source link

fatal mutex/lock errors #5

Open thisisaaronland opened 8 years ago

thisisaaronland commented 8 years ago
goroutine 1147638 [semacquire]:
sync.runtime_Semacquire(0xc8ae600b0c)
        /usr/local/go/src/runtime/sema.go:47 +0x26
sync.(*Mutex).Lock(0xc8ae600b08)
        /usr/local/go/src/sync/mutex.go:83 +0x1c4
github.com/whosonfirst/go-whosonfirst-csvdb.(*CSVDB).reindex_csvfile.func2(0xc8ae600b08, 0xc8ae600b90, 0xc8ae600bc0, 0xc8ae607020, 0xc820086500, 0x7ffe9a2d0fc8, 0x6, 0xc8480690e0, 0x9, 0x5)  
        /usr/local/mapzen/acope/go-whosonfirst-csvdb/src/github.com/whosonfirst/go-whosonfirst-csvdb/csvdb.go:497 +0x33
created by github.com/whosonfirst/go-whosonfirst-csvdb.(*CSVDB).reindex_csvfile
        /usr/local/mapzen/acope/go-whosonfirst-csvdb/src/github.com/whosonfirst/go-whosonfirst-csvdb/csvdb.go:523 +0x879
thisisaaronland commented 8 years ago

Basically this happens when any one of the CSV files being watched gets regenerated wholesale, at which point the file is changing too fast for the indexer to index it...