1
0
mirror of https://github.com/ipfs/kubo.git synced 2025-06-29 17:36:38 +08:00

some performance tweaks for the dagwriter write path

This commit is contained in:
Jeromy
2014-10-08 03:42:29 +00:00
parent 6e0cfb3273
commit bdaee9bcb2
3 changed files with 8 additions and 4 deletions

View File

@ -36,7 +36,7 @@ func NewBlockService(d ds.Datastore, rem exchange.Interface) (*BlockService, err
// AddBlock adds a particular block to the service, Putting it into the datastore. // AddBlock adds a particular block to the service, Putting it into the datastore.
func (s *BlockService) AddBlock(b *blocks.Block) (u.Key, error) { func (s *BlockService) AddBlock(b *blocks.Block) (u.Key, error) {
k := b.Key() k := b.Key()
log.Debug("blockservice: storing [%s] in datastore", k.Pretty()) log.Debug("blockservice: storing [%s] in datastore", k)
// TODO(brian): define a block datastore with a Put method which accepts a // TODO(brian): define a block datastore with a Put method which accepts a
// block parameter // block parameter
err := s.Datastore.Put(k.DsKey(), b.Data) err := s.Datastore.Put(k.DsKey(), b.Data)
@ -53,7 +53,7 @@ func (s *BlockService) AddBlock(b *blocks.Block) (u.Key, error) {
// GetBlock retrieves a particular block from the service, // GetBlock retrieves a particular block from the service,
// Getting it from the datastore using the key (hash). // Getting it from the datastore using the key (hash).
func (s *BlockService) GetBlock(k u.Key) (*blocks.Block, error) { func (s *BlockService) GetBlock(k u.Key) (*blocks.Block, error) {
log.Debug("BlockService GetBlock: '%s'", k.Pretty()) log.Debug("BlockService GetBlock: '%s'", k)
datai, err := s.Datastore.Get(k.DsKey()) datai, err := s.Datastore.Get(k.DsKey())
if err == nil { if err == nil {
log.Debug("Blockservice: Got data in datastore.") log.Debug("Blockservice: Got data in datastore.")

View File

@ -175,7 +175,7 @@ type DAGService struct {
// Add adds a node to the DAGService, storing the block in the BlockService // Add adds a node to the DAGService, storing the block in the BlockService
func (n *DAGService) Add(nd *Node) (u.Key, error) { func (n *DAGService) Add(nd *Node) (u.Key, error) {
k, _ := nd.Key() k, _ := nd.Key()
log.Debug("DagService Add [%s]\n", k.Pretty()) log.Debug("DagService Add [%s]", k)
if n == nil { if n == nil {
return "", fmt.Errorf("DAGService is nil") return "", fmt.Errorf("DAGService is nil")
} }

View File

@ -39,7 +39,11 @@ var ErrNotFound = ds.ErrNotFound
// Key is a string representation of multihash for use with maps. // Key is a string representation of multihash for use with maps.
type Key string type Key string
// Pretty returns Key in a b58 encoded string // String returns Key in a b58 encoded string
func (k Key) String() string {
return b58.Encode([]byte(k))
}
func (k Key) Pretty() string { func (k Key) Pretty() string {
return b58.Encode([]byte(k)) return b58.Encode([]byte(k))
} }