本文整理匯總了Golang中github.com/henryanand/vitess/go/vt/vtgate/proto.QueryResult.Error方法的典型用法代碼示例。如果您正苦於以下問題:Golang QueryResult.Error方法的具體用法?Golang QueryResult.Error怎麽用?Golang QueryResult.Error使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/henryanand/vitess/go/vt/vtgate/proto.QueryResult
的用法示例。
在下文中一共展示了QueryResult.Error方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: ExecuteEntityIds
// ExecuteEntityIds excutes a non-streaming query based on given KeyspaceId map.
func (vtg *VTGate) ExecuteEntityIds(context context.Context, query *proto.EntityIdsQuery, reply *proto.QueryResult) (err error) {
defer handlePanic(&err)
startTime := time.Now()
statsKey := []string{"ExecuteEntityIds", query.Keyspace, string(query.TabletType)}
defer vtg.timings.Record(statsKey, startTime)
x := vtg.inFlight.Add(1)
defer vtg.inFlight.Add(-1)
if 0 < vtg.maxInFlight && vtg.maxInFlight < x {
return ErrTooManyInFlight
}
qr, err := vtg.resolver.ExecuteEntityIds(context, query)
if err == nil {
reply.Result = qr
vtg.rowsReturned.Add(statsKey, int64(len(qr.Rows)))
} else {
reply.Error = err.Error()
if strings.Contains(reply.Error, errDupKey) {
infoErrors.Add("DupKey", 1)
} else {
normalErrors.Add(statsKey, 1)
vtg.logExecuteEntityIds.Errorf("%v, query: %+v", err, query)
}
}
reply.Session = query.Session
return nil
}