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

evcc-io / ocpp-go / 27122869506
83%
master: 83%

Build:
Build:
LAST BUILD BRANCH: fix/client-dispatcher-deadlock
DEFAULT BRANCH: master
Ran 08 Jun 2026 07:38AM UTC
Jobs 1
Files 54
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

08 Jun 2026 07:36AM UTC coverage: 82.919% (+0.01%) from 82.907%
27122869506

Pull #6

github

andig
fix: prevent client dispatcher deadlock on SendRequest during stop

DefaultClientDispatcher.SendRequest did a blocking send on the requestChannel
notification channel while the caller (chargePoint.SendRequestAsync via the
callback queue) holds the callbacks mutex. Once the message pump has stopped
draining the channel, that send blocks forever, so the mutex is never released
and the concurrent clearCallbacks on teardown deadlocks. The send could also
panic on a closed channel after Stop.

The notification channel is only a wake-up doorbell; the request enqueued in
requestQueue is the source of truth and the pump re-checks the queue on every
wake. Make the doorbell send non-blocking and add a stopped signal so
SendRequest bails out once the dispatcher is stopping instead of blocking or
sending on a closed channel.

Adds a regression test that hangs without the fix.
Pull Request #6: Fix client dispatcher deadlock on SendRequest during stop

16 of 18 new or added lines in 1 file covered. (88.89%)

3738 of 4508 relevant lines covered (82.92%)

18.03 hits per line

Uncovered Changes

Lines Coverage ∆ File
2
91.16
-0.18% ocppj/dispatcher.go
Jobs
ID Job ID Ran Files Coverage
1 27122869506.1 08 Jun 2026 07:38AM UTC 54
82.92
GitHub Action Run
Source Files on build 27122869506
  • Tree
  • List 54
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Pull Request #6
  • PR Base - master (#20180340446)
  • Delete
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