Merge remote-tracking branch 'origin/bzz' into bzz

This commit is contained in:
zelig 2015-05-11 19:02:50 +02:00
commit d57c475889
4 changed files with 26 additions and 4 deletions

View file

@ -5,7 +5,6 @@ package bzz
import (
"bytes"
"encoding/binary"
"fmt"
"sync"
"github.com/ethereum/go-ethereum/ethdb"
@ -232,7 +231,7 @@ func (s *dbStore) collectGarbage(ratio float32) {
cutidx := gcListSelect(s.gcArray, 0, gcnt-1, int(float32(gcnt)*ratio))
cutval := s.gcArray[cutidx].value
fmt.Print(gcnt, " ", s.entryCnt, " ")
// fmt.Print(gcnt, " ", s.entryCnt, " ")
// actual gc
for i := 0; i < gcnt; i++ {
@ -246,7 +245,7 @@ func (s *dbStore) collectGarbage(ratio float32) {
}
}
fmt.Println(s.entryCnt)
// fmt.Println(s.entryCnt)
s.db.Put(keyGCPos, s.gcPos)
@ -386,7 +385,7 @@ func newDbStore(path string) (s *dbStore, err error) {
return
}
s.setCapacity(50000) // TODO define default capacity as constant
s.setCapacity(5000000) // TODO define default capacity as constant
s.gcStartPos = make([]byte, 1)
s.gcStartPos[0] = kpIndex

View file

@ -255,6 +255,7 @@ JavaScript API. See https://github.com/ethereum/go-ethereum/wiki/Javascipt-Conso
utils.RPCListenAddrFlag,
utils.RPCPortFlag,
utils.WhisperEnabledFlag,
utils.SwarmEnabledFlag,
utils.VMDebugFlag,
utils.ProtocolVersionFlag,
utils.NetworkIdFlag,

View file

@ -235,6 +235,10 @@ var (
Name: "shh",
Usage: "Enable whisper",
}
SwarmEnabledFlag = cli.BoolFlag{
Name: "bzz",
Usage: "Enable swarm",
}
// ATM the url is left to the user and deployment to
JSpathFlag = cli.StringFlag{
Name: "jspath",
@ -309,6 +313,7 @@ func MakeEthConfig(clientID, version string, ctx *cli.Context) *eth.Config {
NatSpec: ctx.GlobalBool(NatspecEnabledFlag.Name),
NodeKey: GetNodeKey(ctx),
Shh: ctx.GlobalBool(WhisperEnabledFlag.Name),
Bzz: ctx.GlobalBool(SwarmEnabledFlag.Name),
Dial: true,
BootNodes: ctx.GlobalString(BootnodesFlag.Name),
GasPrice: common.String2Big(ctx.GlobalString(GasPriceFlag.Name)),

View file

@ -14,6 +14,7 @@ import (
"github.com/ethereum/ethash"
"github.com/ethereum/go-ethereum/accounts"
"github.com/ethereum/go-ethereum/bzz"
"github.com/ethereum/go-ethereum/common"
"github.com/ethereum/go-ethereum/core"
"github.com/ethereum/go-ethereum/core/types"
@ -74,6 +75,7 @@ type Config struct {
NAT nat.Interface
Shh bool
Bzz bool
Dial bool
Etherbase string
@ -280,7 +282,22 @@ func New(config *Config) (*Ethereum, error) {
if err != nil {
return nil, err
}
protocols := []p2p.Protocol{eth.protocolManager.SubProtocol}
if config.Bzz {
netStore := bzz.NewNetStore(config.DataDir + "/bzz")
chunker := &bzz.TreeChunker{}
chunker.Init()
dpa := &bzz.DPA{
Chunker: chunker,
ChunkStore: netStore,
}
dpa.Start()
protocols = append(protocols, bzz.BzzProtocol(netStore))
go bzz.StartHttpServer(dpa)
}
if config.Shh {
protocols = append(protocols, eth.whisper.Protocol())
}