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

nats-io / nats-server / 28568937871
83%

Build:
DEFAULT BRANCH: main
Ran 02 Jul 2026 07:05AM UTC
Jobs 1
Files 66
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

01 Jul 2026 11:44AM UTC coverage: 76.809% (-0.6%) from 77.421%
28568937871

push

github

web-flow
reject malformed replicated skip and reset consumer updates (#8345)

applyConsumerEntries reads the sequence for the updateSkipOp and
resetSeqOp consumer ops with a fixed-width le.Uint64 straight off the
entry buffer, without checking there are 8 bytes after the op byte. A
replicated entry from a peer whose data is the op byte plus fewer than 8
bytes makes le.Uint64(buf[1:]) / le.Uint64(buf[1:9]) run off the end and
panic the apply goroutine. The neighboring updateDeliveredOp and
updateAcksOp already decode through
decodeDeliveredUpdate/decodeAckUpdate, which reject short buffers; these
two ops were the outliers.

Before: the two ops indexed the buffer directly and crashed on a
truncated entry. After: they go through
decodeSkipUpdate/decodeResetUpdate, which return an error for anything
under 8 bytes, so a malformed entry is rejected the same way the sibling
ops already are. Keeping the read behind a helper matches the existing
consumer-op decoders and puts the length check in one place; the
tradeoff is two more small functions instead of an inline guard, which
reads better sitting next to the ack and delivered decoders.

72361 of 94209 relevant lines covered (76.81%)

566348.33 hits per line

Coverage Regressions

Lines Coverage ∆ File
604
79.83
-0.49% src/github.com/nats-io/nats-server/server/raft.go
423
83.23
0.35% src/github.com/nats-io/nats-server/server/jetstream_cluster.go
187
48.27
-15.75% src/github.com/nats-io/nats-server/server/websocket.go
125
83.53
-4.45% src/github.com/nats-io/nats-server/server/leafnode.go
72
78.45
-0.62% src/github.com/nats-io/nats-server/server/filestore.go
64
85.67
-1.98% src/github.com/nats-io/nats-server/server/server.go
54
51.91
-2.79% src/github.com/nats-io/nats-server/server/reload.go
37
89.1
-0.74% src/github.com/nats-io/nats-server/server/client.go
31
87.74
0.16% src/github.com/nats-io/nats-server/server/consumer.go
26
63.09
-0.47% src/github.com/nats-io/nats-server/server/opts.go
24
83.18
-1.88% src/github.com/nats-io/nats-server/server/auth.go
12
82.55
-0.48% src/github.com/nats-io/nats-server/server/route.go
11
86.02
-0.12% src/github.com/nats-io/nats-server/server/stream.go
8
70.52
-0.21% src/github.com/nats-io/nats-server/server/monitor.go
5
86.65
-0.15% src/github.com/nats-io/nats-server/server/accounts.go
5
89.49
-0.42% src/github.com/nats-io/nats-server/server/sublist.go
4
84.85
-0.19% src/github.com/nats-io/nats-server/server/events.go
4
74.4
0.21% src/github.com/nats-io/nats-server/server/jetstream_api.go
4
81.6
-0.38% src/github.com/nats-io/nats-server/server/parser.go
3
93.92
0.2% src/github.com/nats-io/nats-server/server/gateway.go
3
72.27
-0.14% src/github.com/nats-io/nats-server/server/memstore.go
2
88.11
-0.82% src/github.com/nats-io/nats-server/server/util.go
Jobs
ID Job ID Ran Files Coverage
1 28568937871.1 02 Jul 2026 07:05AM UTC 66
76.81
GitHub Action Run
Source Files on build 28568937871
  • Tree
  • List 66
  • Changed 24
  • Source Changed 3
  • Coverage Changed 24
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #28568937871
  • 822c56d1 on github
  • Prev Build on main (#28497358870)
  • Next Build on main (#28641621326)
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