将 Go 与 BigQuery 结合使用时上下文取消

问题描述

我正在尝试向 biqquery 插入一条记录,这里是执行插入操作的代码

func (s *Storage) Insert(w *warehouse.WarehouseRecord) error {
   event,err := w.Marshal()
   if err != nil {
      return err
   }
   logger.Info("inserting record to big query")
   ins := s.client.Dataset(s.dataSet).Table(event.GetTableName()).Inserter()
   ctx,cancel := context.WithTimeout(context.Background(),10*time.Second)
   defer cancel()
   if err := ins.Put(ctx,event); err != nil {
      return err
   }
   return nil
}

当我运行我的应用程序时,插入失败并出现错误错误显示 context canceled,但我没有从父级取消上下文,我怀疑它发生在客户端包内。你们中有人遇到过这个错误吗?

Post "https://bigquery.googleapis.com/bigquery/v2/projects/dinesh-dev/datasets/analytics_test/tables/agent/insertAll?alt=json&prettyPrint=false": context canceled{"error":"Post \"https://bigquery.googleapis.com/bigquery/v2/projects/dinesh-dev/datasets/analytics_test/tables/agent/insertAll?alt=json\u0026prettyPrint=false\": context canceled"

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)