aboutsummaryrefslogtreecommitdiffstats
path: root/release
diff options
context:
space:
mode:
authorzsfelfoldi <zsfelfoldi@gmail.com>2015-12-16 11:26:23 +0800
committerzsfelfoldi <zsfelfoldi@gmail.com>2016-06-16 23:36:38 +0800
commit3a97280ae889bb6852ba16e70750a37b2ed08473 (patch)
tree41e078895ddd76fe81b323539046b7d9df8b17b3 /release
parenta38be3eb488a349693a9c9905ab015278281f8db (diff)
downloaddexon-3a97280ae889bb6852ba16e70750a37b2ed08473.tar.gz
dexon-3a97280ae889bb6852ba16e70750a37b2ed08473.tar.zst
dexon-3a97280ae889bb6852ba16e70750a37b2ed08473.zip
eth: separate common and full node-specific API and backend service
Diffstat (limited to 'release')
-rw-r--r--release/release.go7
1 files changed, 5 insertions, 2 deletions
diff --git a/release/release.go b/release/release.go
index 05b4885b5..07eb9359c 100644
--- a/release/release.go
+++ b/release/release.go
@@ -30,6 +30,7 @@ import (
"github.com/ethereum/go-ethereum/node"
"github.com/ethereum/go-ethereum/p2p"
"github.com/ethereum/go-ethereum/rpc"
+ "golang.org/x/net/context"
)
// Interval to check for new releases
@@ -57,7 +58,7 @@ type ReleaseService struct {
// releases and notify the user of such.
func NewReleaseService(ctx *node.ServiceContext, config Config) (node.Service, error) {
// Retrieve the Ethereum service dependency to access the blockchain
- var ethereum *eth.Ethereum
+ var ethereum *eth.FullNodeService
if err := ctx.Service(&ethereum); err != nil {
return nil, err
}
@@ -110,7 +111,9 @@ func (r *ReleaseService) checker() {
timer.Reset(releaseRecheckInterval)
// Retrieve the current version, and handle missing contracts gracefully
- version, err := r.oracle.CurrentVersion(nil)
+ ctx, _ := context.WithTimeout(context.Background(), time.Second*5)
+ opts := &bind.CallOpts{Context: ctx}
+ version, err := r.oracle.CurrentVersion(opts)
if err != nil {
if err == bind.ErrNoCode {
glog.V(logger.Debug).Infof("Release oracle not found at %x", r.config.Oracle)