diff --git a/cmd/droplet-client/retrieval.go b/cmd/droplet-client/retrieval.go index 97c0c32b..c05803ee 100644 --- a/cmd/droplet-client/retrieval.go +++ b/cmd/droplet-client/retrieval.go @@ -5,6 +5,8 @@ import ( "errors" "fmt" "io" + "strings" + "time" tm "github.com/buger/goterm" "github.com/docker/go-units" @@ -351,8 +353,14 @@ var clientQueryRetrievalAskCmd = &cli.Command{ defer closer() ctx := cli2.ReqContext(cctx) + ctx, cancel := context.WithTimeout(ctx, time.Second*30) + defer cancel() + ask, err := api.ClientMinerQueryOffer(ctx, maddr, dataCid, nil) if err != nil { + if strings.Contains(err.Error(), "context by cancel") { + return fmt.Errorf("timeout: %v", err) + } return err } diff --git a/cmd/droplet-client/storage.go b/cmd/droplet-client/storage.go index b2ec42fb..47adef46 100644 --- a/cmd/droplet-client/storage.go +++ b/cmd/droplet-client/storage.go @@ -265,6 +265,9 @@ var storageAsksQueryCmd = &cli.Command{ defer closer() ctx := cli2.ReqContext(cctx) + ctx, cancel := context.WithTimeout(ctx, time.Second*30) + defer cancel() + var pid peer.ID if pidstr := cctx.String("peerid"); pidstr != "" { p, err := peer.Decode(pidstr) @@ -287,6 +290,9 @@ var storageAsksQueryCmd = &cli.Command{ ask, err := api.ClientQueryAsk(ctx, pid, maddr) if err != nil { + if strings.Contains(err.Error(), "context by cancel") { + return fmt.Errorf("timeout: %v", err) + } return err }