• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

block / mysql / 33186217865
83%

Build:
DEFAULT BRANCH: master
Ran 28 Aug 2026 03:41PM UTC
Jobs 32
Files 21
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

28 Aug 2026 03:39PM UTC coverage: 82.754% (+0.1%) from 82.606%
33186217865

push

github

web-flow
conn: expose the OK/EOF packet warning count (#2)

* conn: expose the OK/EOF packet warning count

MySQL reports how many warnings a statement raised in the packet that
terminates its response, but the driver dropped the field on the floor: a
literal `// warning count [2 bytes]` comment in handleOkPacket with no
parse behind it, and three copies of the resultset terminator reader that
skipped straight past it to the status flags.

Without the count, a caller that wants to surface warnings has only bad
options. The diagnostics themselves live in per-connection state that
only SHOW WARNINGS can read, so reading them costs a round trip; with no
count to gate on, that round trip has to be spent after every statement,
warnings or not. The count is what makes it affordable — and it is also
what a proxy needs to put in its own OK packet, since clients such as
Connector/J only ask for warnings when the count they were given is
non-zero.

Record it on the connection alongside the status flags, clear it in
clearResult() so one statement's count cannot be read as the next one's,
and expose it as (*mysqlConn).Warnings() for callers reaching the
connection through (*sql.Conn).Raw.

The three inlined resultset terminator readers collapse into one
readResultsetTerminator method. They were already identical; the warning
count made keeping them identical harder, because an EOF packet orders
warnings before status and an 0xFE-headered OK packet orders them after,
so each copy would have had to get that backwards independently.

* review: correct the warning-count lifecycle docs

Both comments on the PR were right, and both were about wording that
described an earlier draft rather than the code.

handleOkPacket no longer has a statusMoreResultsExists early return, so
"recorded before the more-results check" described a check that is not
there. Say what the code now does and why: the count is recorded
unconditionally so each statement of a multi-statement leaves its own
... (continued)

34 of 34 new or added lines in 3 files covered. (100.0%)

3455 of 4175 relevant lines covered (82.75%)

2569383.35 hits per line

Jobs
ID Job ID Ran Files Coverage
1 Windows-Go-1.26-DB-mariadb-11.4 - 33186217865.1 28 Aug 2026 03:41PM UTC 20
81.96
GitHub Action Run
2 Linux-Go-1.26-DB-8.4 - 33186217865.2 28 Aug 2026 03:41PM UTC 20
82.14
GitHub Action Run
3 macOS-Go-1.26-DB-9.0 - 33186217865.3 28 Aug 2026 03:41PM UTC 20
82.05
GitHub Action Run
4 Linux-Go-1.26-DB-mariadb-10.11 - 33186217865.4 28 Aug 2026 03:41PM UTC 20
82.26
GitHub Action Run
5 Windows-Go-1.26-DB-mariadb-10.11 - 33186217865.5 28 Aug 2026 03:41PM UTC 20
82.11
GitHub Action Run
6 Linux-Go-1.26-DB-mariadb-12.3 - 33186217865.6 28 Aug 2026 03:41PM UTC 20
82.26
GitHub Action Run
7 macOS-Go-1.26-DB-mariadb-10.6 - 33186217865.7 28 Aug 2026 03:41PM UTC 20
82.24
GitHub Action Run
8 macOS-Go-1.26-DB-mariadb-10.11 - 33186217865.8 28 Aug 2026 03:40PM UTC 20
82.05
GitHub Action Run
9 Linux-Go-1.26-DB-8.0 - 33186217865.9 28 Aug 2026 03:41PM UTC 20
82.14
GitHub Action Run
10 macOS-Go-1.26-DB-mariadb-10.5 - 33186217865.10 28 Aug 2026 03:40PM UTC 20
82.0
GitHub Action Run
11 Windows-Go-1.26-DB-mariadb-11.8 - 33186217865.11 28 Aug 2026 03:42PM UTC 20
82.16
GitHub Action Run
12 macOS-Go-1.26-DB-mariadb-11.8 - 33186217865.12 28 Aug 2026 03:41PM UTC 20
82.24
GitHub Action Run
13 macOS-Go-1.26-DB-mariadb-12.3 - 33186217865.13 28 Aug 2026 03:41PM UTC 20
82.14
GitHub Action Run
14 Windows-Go-1.26-DB-mariadb-10.6 - 33186217865.14 28 Aug 2026 03:41PM UTC 20
82.16
GitHub Action Run
15 Windows-Go-1.26-DB-8.4 - 33186217865.15 28 Aug 2026 03:43PM UTC 20
82.01
GitHub Action Run
16 Linux-Go-1.26-DB-mariadb-10.6 - 33186217865.16 28 Aug 2026 03:41PM UTC 20
82.36
GitHub Action Run
17 Windows-Go-1.26-DB-5.7 - 33186217865.17 28 Aug 2026 03:43PM UTC 20
81.99
GitHub Action Run
18 macOS-Go-1.26-DB-8.4 - 33186217865.18 28 Aug 2026 03:41PM UTC 20
82.12
GitHub Action Run
19 Windows-Go-1.26-DB-8.0 - 33186217865.19 28 Aug 2026 03:43PM UTC 20
81.91
GitHub Action Run
20 Linux-Go-1.24-DB-9.0 - 33186217865.20 28 Aug 2026 03:41PM UTC 20
82.33
GitHub Action Run
21 Windows-Go-1.26-DB-mariadb-10.5 - 33186217865.21 28 Aug 2026 03:42PM UTC 20
81.87
GitHub Action Run
22 macOS-Go-1.26-DB-mariadb-11.4 - 33186217865.22 28 Aug 2026 03:41PM UTC 20
82.14
GitHub Action Run
23 Linux-Go-1.26-DB-mariadb-11.8 - 33186217865.23 28 Aug 2026 03:41PM UTC 20
82.36
GitHub Action Run
24 Windows-Go-1.26-DB-9.0 - 33186217865.24 28 Aug 2026 03:44PM UTC 20
82.06
GitHub Action Run
25 Linux-Go-1.26-DB-mariadb-10.5 - 33186217865.25 28 Aug 2026 03:41PM UTC 20
82.17
GitHub Action Run
26 Linux-Go-1.26-DB-mariadb-11.4 - 33186217865.26 28 Aug 2026 03:41PM UTC 20
82.36
GitHub Action Run
27 Windows-Go-1.26-DB-mariadb-12.3 - 33186217865.27 28 Aug 2026 03:41PM UTC 20
82.01
GitHub Action Run
28 macOS-Go-1.26-DB-5.7 - 33186217865.28 28 Aug 2026 03:41PM UTC 20
82.02
GitHub Action Run
29 macOS-Go-1.26-DB-8.0 - 33186217865.29 28 Aug 2026 03:41PM UTC 20
82.07
GitHub Action Run
30 Linux-Go-1.25-DB-9.0 - 33186217865.30 28 Aug 2026 03:41PM UTC 20
82.19
GitHub Action Run
31 Linux-Go-1.26-DB-5.7 - 33186217865.31 28 Aug 2026 03:41PM UTC 20
82.29
GitHub Action Run
32 Linux-Go-1.26-DB-9.0 - 33186217865.32 28 Aug 2026 03:41PM UTC 20
82.24
GitHub Action Run
Source Files on build 33186217865
  • Tree
  • List 21
  • Changed 4
  • Source Changed 0
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • 0208bfcd on github
  • Prev Build on master (#33117969512)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc