Skip to content

Commit 56135f4

Browse files
lysucoocood
authored andcommitted
server: fix COM_FIELD_LIST response bug that make mariadb-client crash during use db (#6918) (#6929)
1 parent 68c6968 commit 56135f4

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

server/conn.go

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -895,9 +895,15 @@ func (cc *clientConn) handleFieldList(sql string) (err error) {
895895
return errors.Trace(err)
896896
}
897897
data := make([]byte, 4, 1024)
898-
for _, v := range columns {
898+
for _, column := range columns {
899+
// Current we doesn't output defaultValue but reserve defaultValue length byte to make mariadb client happy.
900+
// https://dev.mysql.com/doc/internals/en/com-query-response.html#column-definition
901+
// TODO: fill the right DefaultValues.
902+
column.DefaultValueLength = 0
903+
column.DefaultValue = []byte{}
904+
899905
data = data[0:4]
900-
data = v.Dump(data)
906+
data = column.Dump(data)
901907
if err := cc.writePacket(data); err != nil {
902908
return errors.Trace(err)
903909
}

0 commit comments

Comments
 (0)