Merge pull request #566 from jbenet/races

race fixes
This commit is contained in:
Brian Tiger Chow 2015-01-14 16:35:34 -08:00
commit 47701aaa2b
4 changed files with 9 additions and 9 deletions

View File

@ -137,8 +137,8 @@ type dagservAndPinner struct {
}
func getDagservAndPinner(t *testing.T) dagservAndPinner {
db := ds.NewMapDatastore()
bs := bstore.NewBlockstore(dssync.MutexWrap(db))
db := dssync.MutexWrap(ds.NewMapDatastore())
bs := bstore.NewBlockstore(db)
blockserv, err := bserv.New(bs, offline.Exchange(bs))
if err != nil {
t.Fatal(err)

View File

@ -28,8 +28,8 @@ type dagservAndPinner struct {
}
func getDagservAndPinner(t *testing.T) dagservAndPinner {
db := ds.NewMapDatastore()
bs := bstore.NewBlockstore(dssync.MutexWrap(db))
db := dssync.MutexWrap(ds.NewMapDatastore())
bs := bstore.NewBlockstore(db)
blockserv, err := bserv.New(bs, offline.Exchange(bs))
if err != nil {
t.Fatal(err)

View File

@ -53,11 +53,11 @@ type pinner struct {
directPin set.BlockSet
indirPin *indirectPin
dserv mdag.DAGService
dstore ds.Datastore
dstore ds.ThreadSafeDatastore
}
// NewPinner creates a new pinner using the given datastore as a backend
func NewPinner(dstore ds.Datastore, serv mdag.DAGService) Pinner {
func NewPinner(dstore ds.ThreadSafeDatastore, serv mdag.DAGService) Pinner {
// Load set from given datastore...
rcds := nsds.Wrap(dstore, recursePinDatastoreKey)
@ -176,7 +176,7 @@ func (p *pinner) IsPinned(key util.Key) bool {
}
// LoadPinner loads a pinner and its keysets from the given datastore
func LoadPinner(d ds.Datastore, dserv mdag.DAGService) (Pinner, error) {
func LoadPinner(d ds.ThreadSafeDatastore, dserv mdag.DAGService) (Pinner, error) {
p := new(pinner)
{ // load recursive set

View File

@ -21,8 +21,8 @@ func randNode() (*mdag.Node, util.Key) {
}
func TestPinnerBasic(t *testing.T) {
dstore := ds.NewMapDatastore()
bstore := blockstore.NewBlockstore(dssync.MutexWrap(dstore))
dstore := dssync.MutexWrap(ds.NewMapDatastore())
bstore := blockstore.NewBlockstore(dstore)
bserv, err := bs.New(bstore, offline.Exchange(bstore))
if err != nil {
t.Fatal(err)