Skip to content

panic during queue dispatch #857

Description

@cuu508

Describe the bug

Just noticed a maddy instance not delivering mail and continuously logging the following error:

[...]
Jul 01 20:37:05 maddy[14798]: panic during queue dispatch 6f3f66c4: runtime error: invalid memory address or nil pointer dereference
Jul 01 20:37:05 maddy[14798]: goroutine 2466593 [running]:
Jul 01 20:37:05 maddy[14798]: runtime/debug.Stack()
Jul 01 20:37:05 maddy[14798]:         runtime/debug/stack.go:26 +0x5e
Jul 01 20:37:05 maddy[14798]: github.com/foxcpp/maddy/internal/target/queue.(*Queue).dispatch.func1.1()
Jul 01 20:37:05 maddy[14798]:         github.com/foxcpp/maddy/internal/target/queue/queue.go:314 +0x85
Jul 01 20:37:05 maddy[14798]: panic({0x1265c80?, 0x1e630c0?})
Jul 01 20:37:05 maddy[14798]:         runtime/panic.go:792 +0x132
Jul 01 20:37:05 maddy[14798]: github.com/foxcpp/maddy/internal/limits/limiters.(*BucketSet).TakeContext(0xc000295b00?, {0x162c2c8, 0xc00631d030}, {0xc005654890?, 0x2?})
Jul 01 20:37:05 maddy[14798]:         github.com/foxcpp/maddy/internal/limits/limiters/bucket.go:152 +0x38
Jul 01 20:37:05 maddy[14798]: github.com/foxcpp/maddy/internal/limits.(*Group).TakeDest(0xc0003cbd10, {0x162c258?, 0xc0052e2810?}, {0xc005654890, 0xf})
Jul 01 20:37:05 maddy[14798]:         github.com/foxcpp/maddy/internal/limits/limits.go:225 +0x137
Jul 01 20:37:05 maddy[14798]: github.com/foxcpp/maddy/internal/target/remote.(*remoteDelivery).connectionForDomain(0xc00620da40, {0x162c258, 0xc0052e2810}, {0xc005654890, 0xf})
Jul 01 20:37:05 maddy[14798]:         github.com/foxcpp/maddy/internal/target/remote/connect.go:272 +0x68b
Jul 01 20:37:05 maddy[14798]: github.com/foxcpp/maddy/internal/target/remote.(*remoteDelivery).AddRcpt(0xc00620da40, {0x162c258, 0xc0052e2810}, {0xc005654888, 0x17}, {{0x0, 0x0, 0x0}, {0x0, 0x0}, ...})
Jul 01 20:37:05 maddy[14798]:         github.com/foxcpp/maddy/internal/target/remote/remote.go:317 +0x109
Jul 01 20:37:05 maddy[14798]: github.com/foxcpp/maddy/internal/target/queue.(*Queue).deliver(0xc0002f0f20, {0x162bac0, 0x1fd7ac0}, 0xc00296c280, {{0xc00061c300?, 0x13b4ce0?, 0xc00620d860?}, 0xc0052e2240?}, {0x1629c90, 0xc006600858})
Jul 01 20:37:05 maddy[14798]:         github.com/foxcpp/maddy/internal/target/queue/queue.go:511 +0x70d
Jul 01 20:37:05 maddy[14798]: github.com/foxcpp/maddy/internal/target/queue.(*Queue).tryDelivery(0xc0002f0f20, {0x162bac0, 0x1fd7ac0}, 0xc00296c280, {{0xc00061c300?, 0xc005bddf30?, 0x41d0c5?}, 0xc0052e2240?}, {0x1629c90, 0xc006600858})
Jul 01 20:37:05 maddy[14798]:         github.com/foxcpp/maddy/internal/target/queue/queue.go:389 +0x299
Jul 01 20:37:05 maddy[14798]: github.com/foxcpp/maddy/internal/target/queue.(*Queue).dispatch.func1()
Jul 01 20:37:05 maddy[14798]:         github.com/foxcpp/maddy/internal/target/queue/queue.go:342 +0x26a
Jul 01 20:37:05 maddy[14798]: created by github.com/foxcpp/maddy/internal/target/queue.(*Queue).dispatch in goroutine 54
Jul 01 20:37:05 maddy[14798]:         github.com/foxcpp/maddy/internal/target/queue/queue.go:302 +0x175
Jul 01 20:37:05 maddy[14798]:         
Jul 01 20:37:06 maddy[14798]: panic during queue dispatch 9e3a94f0: runtime error: invalid memory address or nil pointer dereference
Jul 01 20:37:06 maddy[14798]: goroutine 2466860 [running]:
Jul 01 20:37:06 maddy[14798]: runtime/debug.Stack()
Jul 01 20:37:06 maddy[14798]:         runtime/debug/stack.go:26 +0x5e
Jul 01 20:37:06 maddy[14798]: github.com/foxcpp/maddy/internal/target/queue.(*Queue).dispatch.func1.1()
Jul 01 20:37:06 maddy[14798]:         github.com/foxcpp/maddy/internal/target/queue/queue.go:314 +0x85
Jul 01 20:37:06 maddy[14798]: panic({0x1265c80?, 0x1e630c0?})
Jul 01 20:37:06 maddy[14798]:         runtime/panic.go:792 +0x132
Jul 01 20:37:06 maddy[14798]: github.com/foxcpp/maddy/internal/limits/limiters.(*BucketSet).TakeContext(0xc000295b00?, {0x162c2c8, 0xc0055c33b0}, {0xc001e57727?, 0x2?})
Jul 01 20:37:06 maddy[14798]:         github.com/foxcpp/maddy/internal/limits/limiters/bucket.go:152 +0x38
Jul 01 20:37:06 maddy[14798]: github.com/foxcpp/maddy/internal/limits.(*Group).TakeDest(0xc0003cbd10, {0x162c258?, 0xc0016fcd50?}, {0xc001e57727, 0x9})
Jul 01 20:37:06 maddy[14798]:         github.com/foxcpp/maddy/internal/limits/limits.go:225 +0x137
Jul 01 20:37:06 maddy[14798]: github.com/foxcpp/maddy/internal/target/remote.(*remoteDelivery).connectionForDomain(0xc004fb19e0, {0x162c258, 0xc0016fcd50}, {0xc001e57727, 0x9})
Jul 01 20:37:06 maddy[14798]:         github.com/foxcpp/maddy/internal/target/remote/connect.go:272 +0x68b
Jul 01 20:37:06 maddy[14798]: github.com/foxcpp/maddy/internal/target/remote.(*remoteDelivery).AddRcpt(0xc004fb19e0, {0x162c258, 0xc0016fcd50}, {0xc001e57720, 0x10}, {{0x0, 0x0, 0x0}, {0x0, 0x0}, ...})
Jul 01 20:37:06 maddy[14798]:         github.com/foxcpp/maddy/internal/target/remote/remote.go:317 +0x109
Jul 01 20:37:06 maddy[14798]: github.com/foxcpp/maddy/internal/target/queue.(*Queue).deliver(0xc0002f0f20, {0x162bac0, 0x1fd7ac0}, 0xc005d621e0, {{0xc002c04300?, 0x13b4ce0?, 0xc004fb1800?}, 0xc004def080?}, {0x1629c90, 0xc003f43788})
Jul 01 20:37:06 maddy[14798]:         github.com/foxcpp/maddy/internal/target/queue/queue.go:511 +0x70d
Jul 01 20:37:06 maddy[14798]: github.com/foxcpp/maddy/internal/target/queue.(*Queue).tryDelivery(0xc0002f0f20, {0x162bac0, 0x1fd7ac0}, 0xc005d621e0, {{0xc002c04300?, 0xc005792730?, 0x41d0c5?}, 0xc004def080?}, {0x1629c90, 0xc003f43788})
Jul 01 20:37:06 maddy[14798]:         github.com/foxcpp/maddy/internal/target/queue/queue.go:389 +0x299
Jul 01 20:37:06 maddy[14798]: github.com/foxcpp/maddy/internal/target/queue.(*Queue).dispatch.func1()
Jul 01 20:37:06 maddy[14798]:         github.com/foxcpp/maddy/internal/target/queue/queue.go:342 +0x26a
Jul 01 20:37:06 maddy[14798]: created by github.com/foxcpp/maddy/internal/target/queue.(*Queue).dispatch in goroutine 54
Jul 01 20:37:06 maddy[14798]:         github.com/foxcpp/maddy/internal/target/queue/queue.go:302 +0x175
[...]

Not sure what caused it, the instance has been up and working for several days, and there have been no recent configuration changes.

Steps to reproduce

Not sure yet.

Environment information

  • maddy version: v0.9.5-0.20260516125940-e42741c75777 linux/amd64 go1.24.4

Metadata

Metadata

Assignees

Labels

bugSomething isn't working.mta-outRelated to MSA or outgoing message processing part of MTA functionality.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions