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

skeema / skeema / 13401177667
93%
main: 92%

Build:
Build:
LAST BUILD BRANCH: remove-sqlx-callsites
DEFAULT BRANCH: main
Ran 18 Feb 2025 10:29PM UTC
Jobs 1
Files 78
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

18 Feb 2025 10:09PM UTC coverage: 93.274% (+0.01%) from 93.262%
13401177667

push

github

evanelias
timeouts: ensure lock wait timeouts occur before readTimeout

By default, Skeema uses a readTimeout (query timeout) of 20 seconds for many
of its queries, to prevent the appearance of a stall/freeze if a server is
non-responsive or overloaded. However, this readTimeout makes troubleshooting
more difficult in situations involving server metadata lock waits
(lock_wait_timeout) or InnoDB lock waits (innodb_lock_wait_timeout), as both
of these server variables have defaults higher than 20 seconds. As a result,
the `skeema` invocation will error with an i/o timeout (hiding the true source
of the wait) and meanwhile the queries might remain running on the server
until hitting the relevant server timeout.

This commit improves the situation by ensuring that whenever a readTimeout is
applied, the session will set lock_wait_timeout and innodb_lock_wait_timeout
to be lower than the readTimeout. This is done in a safe manner, such that
if the server *already* uses an even lower wait timeout value, the lower value
wins.

Additionally, this commit ensures that readTimeout cannot be set below 2
seconds, as a practical matter to ensure 1-second wait timeouts will always be
under the readTimeout. Attempting to set a lower readTimeout inside Skeema's
connect-options option will now result in readTimeout=2s being applied. (This
is not expected to affect many real users, as such a low readTimeout is rarely
practical anyway.)

22 of 22 new or added lines in 1 file covered. (100.0%)

10276 of 11017 relevant lines covered (93.27%)

1.11 hits per line

Jobs
ID Job ID Ran Files Coverage
1 13401177667.1 18 Feb 2025 10:29PM UTC 78
93.27
GitHub Action Run
Source Files on build 13401177667
  • Tree
  • List 78
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • 373c7024 on github
  • Prev Build on main (#13337809543)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc