MCPcopy Create free account
hub / github.com/IceFireDB/IceFireDB / writeResultset

Method writeResultset

IceFireDB-SQLProxy/pkg/mysql/server/resp.go:134–161  ·  view source on GitHub ↗
(r *Resultset)

Source from the content-addressed store, hash-verified

132}
133
134func (c *Conn) writeResultset(r *Resultset) error {
135 columnLen := PutLengthEncodedInt(uint64(len(r.Fields)))
136
137 data := make([]byte, 4, 1024)
138
139 data = append(data, columnLen...)
140 if err := c.WritePacket(data); err != nil {
141 return err
142 }
143
144 if err := c.writeFieldList(r.Fields, data); err != nil {
145 return err
146 }
147
148 for _, v := range r.RowDatas {
149 data = data[0:4]
150 data = append(data, v...)
151 if err := c.WritePacket(data); err != nil {
152 return err
153 }
154 }
155
156 if err := c.writeEOF(); err != nil {
157 return err
158 }
159
160 return nil
161}
162
163func (c *Conn) writeFieldList(fs []*Field, data []byte) error {
164 if data == nil {

Callers 1

WriteValueMethod · 0.95

Calls 4

WritePacketMethod · 0.95
writeFieldListMethod · 0.95
writeEOFMethod · 0.95
PutLengthEncodedIntFunction · 0.50

Tested by

no test coverage detected