func (conn *vtgateConn) ExecuteBatchKeyspaceIds(ctx context.Context, queries []proto.BoundKeyspaceIdQuery, tabletType pbt.TabletType, asTransaction bool, session interface{}) ([]mproto.QueryResult, interface{}, error) { var s *pb.Session if session != nil { s = session.(*pb.Session) } qs, err := proto.BoundKeyspaceIdQueriesToProto(queries) if err != nil { return nil, session, err } request := &pb.ExecuteBatchKeyspaceIdsRequest{ CallerId: callerid.EffectiveCallerIDFromContext(ctx), Session: s, Queries: qs, TabletType: tabletType, AsTransaction: asTransaction, } response, err := conn.c.ExecuteBatchKeyspaceIds(ctx, request) if err != nil { return nil, session, vterrors.FromGRPCError(err) } if response.Error != nil { return nil, response.Session, vterrors.FromVtRPCError(response.Error) } return mproto.Proto3ToQueryResults(response.Results), response.Session, nil }
func (conn *vtgateConn) ExecuteBatchKeyspaceIds(ctx context.Context, queries []proto.BoundKeyspaceIdQuery, tabletType topo.TabletType, asTransaction bool, session interface{}) ([]mproto.QueryResult, interface{}, error) { var s *pb.Session if session != nil { s = session.(*pb.Session) } request := &pb.ExecuteBatchKeyspaceIdsRequest{ Session: s, Queries: proto.BoundKeyspaceIdQueriesToProto(queries), TabletType: topo.TabletTypeToProto(tabletType), AsTransaction: asTransaction, } response, err := conn.c.ExecuteBatchKeyspaceIds(ctx, request) if err != nil { return nil, session, err } if response.Error != nil { return nil, response.Session, vterrors.FromVtRPCError(response.Error) } return mproto.Proto3ToQueryResults(response.Results), response.Session, nil }
func (conn *vtgateConn) ExecuteBatchKeyspaceIds(ctx context.Context, queries []proto.BoundKeyspaceIdQuery, tabletType topopb.TabletType, asTransaction bool, session interface{}) ([]mproto.QueryResult, interface{}, error) { var s *pb.Session if session != nil { s = session.(*pb.Session) } request := &pb.ExecuteBatchKeyspaceIdsRequest{ CallerId: callerid.EffectiveCallerIDFromContext(ctx), Queries: proto.BoundKeyspaceIdQueriesToProto(queries), TabletType: tabletType, AsTransaction: asTransaction, Session: s, } response := &pb.ExecuteBatchKeyspaceIdsResponse{} if err := conn.rpcConn.Call(ctx, "VTGateP3.ExecuteBatchKeyspaceIds", request, response); err != nil { return nil, session, err } if err := vterrors.FromVtRPCError(response.Error); err != nil { return nil, response.Session, err } return mproto.Proto3ToQueryResults(response.Results), response.Session, nil }
// ExecuteBatchKeyspaceIds is the RPC version of // vtgateservice.VTGateService method func (vtg *VTGate) ExecuteBatchKeyspaceIds(ctx context.Context, request *proto.KeyspaceIdBatchQuery, reply *proto.QueryResultList) (err error) { defer vtg.server.HandlePanic(&err) ctx, cancel := context.WithDeadline(ctx, time.Now().Add(*rpcTimeout)) defer cancel() ctx = callerid.NewContext(ctx, callerid.GoRPCEffectiveCallerID(request.CallerID), callerid.NewImmediateCallerID("gorpc client")) sessionFromRPC(request.Session) qs, err := proto.BoundKeyspaceIdQueriesToProto(request.Queries) if err != nil { return err } vtgErr := vtg.server.ExecuteBatchKeyspaceIds(ctx, qs, request.TabletType, request.AsTransaction, request.Session, reply) reply.Session = sessionToRPC(reply.Session) vtgate.AddVtGateError(vtgErr, &reply.Err) return nil }