Logging, variable rearrangement
This commit is contained in:
		| @@ -174,18 +174,12 @@ func (bc *BlockChain) ResetTillBlockHash(hash []byte) error { | |||||||
| 		bc.LastBlockHash = bc.genesisBlock.Hash() | 		bc.LastBlockHash = bc.genesisBlock.Hash() | ||||||
| 		bc.LastBlockNumber = 1 | 		bc.LastBlockNumber = 1 | ||||||
| 	} else { | 	} else { | ||||||
| 		// TODO: Somehow this doesn't really give the right numbers, double check. |  | ||||||
| 		// TODO: Change logs into debug lines |  | ||||||
| 		returnTo = bc.GetBlock(hash) | 		returnTo = bc.GetBlock(hash) | ||||||
| 		bc.CurrentBlock = returnTo | 		bc.CurrentBlock = returnTo | ||||||
| 		bc.LastBlockHash = returnTo.Hash() | 		bc.LastBlockHash = returnTo.Hash() | ||||||
| 		//info := bc.BlockInfo(returnTo) |  | ||||||
| 		bc.LastBlockNumber = returnTo.Number.Uint64() | 		bc.LastBlockNumber = returnTo.Number.Uint64() | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	// XXX Why are we resetting? This is the block chain, it has nothing to do with states |  | ||||||
| 	//bc.Ethereum.StateManager().PrepareDefault(returnTo) |  | ||||||
|  |  | ||||||
| 	// Manually reset the last sync block | 	// Manually reset the last sync block | ||||||
| 	err := ethutil.Config.Db.Delete(lastBlock.Hash()) | 	err := ethutil.Config.Db.Delete(lastBlock.Hash()) | ||||||
| 	if err != nil { | 	if err != nil { | ||||||
| @@ -231,6 +225,11 @@ func (bc *BlockChain) GetChainFromHash(hash []byte, max uint64) []interface{} { | |||||||
| 	for i := uint64(0); bytes.Compare(currentHash, hash) != 0 && num >= parentNumber && i < count; i++ { | 	for i := uint64(0); bytes.Compare(currentHash, hash) != 0 && num >= parentNumber && i < count; i++ { | ||||||
| 		// Get the block of the chain | 		// Get the block of the chain | ||||||
| 		block := bc.GetBlock(currentHash) | 		block := bc.GetBlock(currentHash) | ||||||
|  | 		if block == nil { | ||||||
|  | 			ethutil.Config.Log.Debugf("Unexpected error during GetChainFromHash: Unable to find %x\n", currentHash) | ||||||
|  | 			break | ||||||
|  | 		} | ||||||
|  |  | ||||||
| 		currentHash = block.PrevHash | 		currentHash = block.PrevHash | ||||||
|  |  | ||||||
| 		chain = append(chain, block.Value().Val) | 		chain = append(chain, block.Value().Val) | ||||||
|   | |||||||
| @@ -99,22 +99,21 @@ func (vm *Vm) RunClosure(closure *Closure, hook DebugHook) (ret []byte, err erro | |||||||
|  |  | ||||||
| 	ethutil.Config.Log.Debugf("[VM] (~) %x gas: %v (d) %x\n", closure.object.Address(), closure.Gas, closure.Args) | 	ethutil.Config.Log.Debugf("[VM] (~) %x gas: %v (d) %x\n", closure.object.Address(), closure.Gas, closure.Args) | ||||||
|  |  | ||||||
| 	// Memory for the current closure | 	var ( | ||||||
| 	mem := &Memory{} | 		op OpCode | ||||||
| 	// New stack (should this be shared?) |  | ||||||
| 	stack := NewStack() |  | ||||||
| 	require := func(m int) { |  | ||||||
| 		if stack.Len() < m { |  | ||||||
| 			isRequireError = true |  | ||||||
| 			panic(fmt.Sprintf("stack err = %d, req = %d", stack.Len(), m)) |  | ||||||
| 		} |  | ||||||
| 	} |  | ||||||
|  |  | ||||||
| 	// Program counter | 		mem      = &Memory{} | ||||||
| 	pc := big.NewInt(0) | 		stack    = NewStack() | ||||||
| 	// Current step count | 		pc       = big.NewInt(0) | ||||||
| 	step := 0 | 		step     = 0 | ||||||
| 	prevStep := 0 | 		prevStep = 0 | ||||||
|  | 		require  = func(m int) { | ||||||
|  | 			if stack.Len() < m { | ||||||
|  | 				isRequireError = true | ||||||
|  | 				panic(fmt.Sprintf("%04v (%v) stack err size = %d, required = %d", pc, op, stack.Len(), m)) | ||||||
|  | 			} | ||||||
|  | 		} | ||||||
|  | 	) | ||||||
|  |  | ||||||
| 	for { | 	for { | ||||||
| 		prevStep = step | 		prevStep = step | ||||||
| @@ -125,7 +124,7 @@ func (vm *Vm) RunClosure(closure *Closure, hook DebugHook) (ret []byte, err erro | |||||||
| 		// Get the memory location of pc | 		// Get the memory location of pc | ||||||
| 		val := closure.Get(pc) | 		val := closure.Get(pc) | ||||||
| 		// Get the opcode (it must be an opcode!) | 		// Get the opcode (it must be an opcode!) | ||||||
| 		op := OpCode(val.Uint()) | 		op = OpCode(val.Uint()) | ||||||
|  |  | ||||||
| 		gas := new(big.Int) | 		gas := new(big.Int) | ||||||
| 		addStepGasUsage := func(amount *big.Int) { | 		addStepGasUsage := func(amount *big.Int) { | ||||||
|   | |||||||
| @@ -340,7 +340,7 @@ func (s *Ethereum) Start(seed bool) { | |||||||
| 	// Bind to addr and port | 	// Bind to addr and port | ||||||
| 	ln, err := net.Listen("tcp", ":"+s.Port) | 	ln, err := net.Listen("tcp", ":"+s.Port) | ||||||
| 	if err != nil { | 	if err != nil { | ||||||
| 		log.Println("Connection listening disabled. Acting as client") | 		ethutil.Config.Log.Infof("port=%s in use. Connection listening disabled.") | ||||||
| 		s.listening = false | 		s.listening = false | ||||||
| 	} else { | 	} else { | ||||||
| 		s.listening = true | 		s.listening = true | ||||||
| @@ -395,7 +395,7 @@ func (s *Ethereum) Seed() { | |||||||
| 					peers = append(peers, peer) | 					peers = append(peers, peer) | ||||||
| 				} | 				} | ||||||
| 			} else { | 			} else { | ||||||
| 				ethutil.Config.Log.Debugln("[SERV} Couldn't resolve :", target) | 				ethutil.Config.Log.Debugln("[SERV] Couldn't resolve :", target) | ||||||
| 			} | 			} | ||||||
| 		} | 		} | ||||||
| 		// Connect to Peer list | 		// Connect to Peer list | ||||||
|   | |||||||
| @@ -22,7 +22,6 @@ func Compile(script string) (ret []byte, err error) { | |||||||
| 	} else { | 	} else { | ||||||
| 		compiler := mutan.NewCompiler(backend.NewEthereumBackend()) | 		compiler := mutan.NewCompiler(backend.NewEthereumBackend()) | ||||||
| 		byteCode, errors := compiler.Compile(strings.NewReader(script)) | 		byteCode, errors := compiler.Compile(strings.NewReader(script)) | ||||||
| 		//byteCode, errors := mutan.Compile(strings.NewReader(script), false) |  | ||||||
| 		if len(errors) > 0 { | 		if len(errors) > 0 { | ||||||
| 			var errs string | 			var errs string | ||||||
| 			for _, er := range errors { | 			for _, er := range errors { | ||||||
|   | |||||||
| @@ -47,7 +47,7 @@ func (cache *Cache) Put(v interface{}) interface{} { | |||||||
| 	value := NewValue(v) | 	value := NewValue(v) | ||||||
|  |  | ||||||
| 	enc := value.Encode() | 	enc := value.Encode() | ||||||
| 	if len(enc) >= 32 { | 	if len(enc) < 32 { | ||||||
| 		sha := Sha3Bin(enc) | 		sha := Sha3Bin(enc) | ||||||
|  |  | ||||||
| 		cache.nodes[string(sha)] = NewNode(sha, value, true) | 		cache.nodes[string(sha)] = NewNode(sha, value, true) | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user