internal/protocol/session.go
func (s *Session) FetchNext(id uint64, resultFieldSet *ResultFieldSet, fieldValues *FieldValues) (PartAttributes, error) {
	s.mu.Lock()
	defer s.mu.Unlock()

	s.resultsetID.id = &id
	if err := s.writeRequest(mtFetchNext, false, s.resultsetID, fetchsize(s.prm.FetchSize())); err != nil {
		return nil, err
	}

	f := func(p replyPart) {

		switch p := p.(type) {

		case *resultset:
			p.s = s
			p.resultFieldSet = resultFieldSet
			p.fieldValues = fieldValues
		}
	}

	if err := s.readReply(f); err != nil {
		return nil, err
	}

	return s.ph.partAttributes, nil
}
func (s *Session) FetchNext(id uint64, resultFieldSet *ResultFieldSet, fieldValues *FieldValues) (PartAttributes, error) {
	s.mu.Lock()
	defer s.mu.Unlock()

	s.resultsetID.id = &id
	if err := s.writeRequest(mtFetchNext, false, s.resultsetID, fetchsize(s.prm.FetchSize())); err != nil {
		return nil, err
	}

	f := func(p replyPart) {

		switch p := p.(type) {

		case *resultset:
			p.s = s
			p.resultFieldSet = resultFieldSet
			p.fieldValues = fieldValues
		}
	}

	if err := s.readReply(f); err != nil {
		return nil, err
	}

	return s.ph.partAttributes, nil
}
func ( s * Session ) FetchNext ( id uint64 , resultFieldSet * ResultFieldSet , fieldValues * FieldValues ) ( PartAttributes , error ) { s . mu . Lock ( ) defer s . mu . Unlock ( ) s . resultsetID . id = & id if err := s . writeRequest ( mtFetchNext , false , s . resultsetID , fetchsize ( s . prm . FetchSize ( ) ) ) ; err != nil { return nil , err } f := func ( p replyPart ) { switch p := p . ( type ) { case * resultset : p . s = s p . resultFieldSet = resultFieldSet p . fieldValues = fieldValues } } if err := s . readReply ( f ) ; err != nil { return nil , err } return s . ph . partAttributes , nil }
// FetchNext fetches next chunk in query result set.
FetchNext fetches next chunk in query result set .