-
Notifications
You must be signed in to change notification settings - Fork 315
Stack overflow during configuration load after upgrading from 0.8.2 to 0.9.0 #832
Copy link
Copy link
Open
Labels
bugSomething isn't working.Something isn't working.ready-for-releaseFeature is implemented and available for testing in dev branch. It will be included in the next releFeature is implemented and available for testing in dev branch. It will be included in the next rele
Description
Describe the bug
After upgrading maddy from 0.8.2 to 0.9.0, maddy run/entrypoint fails during configuration loading with a stack overflow.
The same configuration worked on 0.8.2 without changes. After the upgrade, maddy crashes while loading the config instead of either starting successfully or returning a configuration error issue.
The issue appears to be related to module/pipeline initialisation recursion involving a msgpipeline and target.queue bounce path.
Expected behaviour:
- startup normally, as 0.8.2 did (unless my config is now invalid?)
Actual behavior:
- crashes during startup with a stack overflow while loading configuration
Steps to reproduce
- Try
maddy runwith my config, or one thats similar:- a
msgpipelineused for local routing - a
target.queueused for outbound delivery - the queue
bouncepath delivering back into the local routing pipeline - the local routing pipeline being able to deliver to the queue for some destinations
- a
Log files
~ $ maddy run
loading configuration...
runtime: goroutine stack exceeds 1000000000-byte limit
runtime: sp=0xc023280570 stack=[0xc023280000, 0xc043280000]
fatal error: stack overflow
runtime stack:
runtime.throw({0x13e5229?, 0x7f8a1d142940?})
runtime/panic.go:1073 +0x48 fp=0x7f8a1d142900 sp=0x7f8a1d1428d0 pc=0x473bc8
runtime.newstack()
runtime/stack.go:1117 +0x5bd fp=0x7f8a1d142a40 sp=0x7f8a1d142900 pc=0x457c5d
runtime.morestack()
runtime/asm_amd64.s:621 +0x7a fp=0x7f8a1d142a48 sp=0x7f8a1d142a40 pc=0x47a53a
goroutine 1 gp=0xc0000061c0 m=24 mp=0xc0004cb508 [running]:
github.com/foxcpp/maddy/internal/msgpipeline.(*Module).Configure(0xc000425680, {0x0?, 0x0?, 0x0?}, 0xc008c83900)
github.com/foxcpp/maddy/internal/msgpipeline/module.go:40 +0x32f fp=0xc023280580 sp=0xc023280578 pc=0xd5892f
github.com/foxcpp/maddy.RegisterModules.func1()
github.com/foxcpp/maddy/maddy.go:545 +0xf8 fp=0xc023280678 sp=0xc023280580 pc=0xfe1af8
github.com/foxcpp/maddy/framework/module.(*Registry).ensureInitialized(0xc000311530, {0xc0003f8d61, 0xd}, 0xc023280740)
github.com/foxcpp/maddy/framework/module/registry.go:108 +0x178 fp=0xc023280718 sp=0xc023280678 pc=0x90d9f8
github.com/foxcpp/maddy/framework/module.(*Registry).Get(0xc000311530, {0xc0003f8d61, 0xd})
github.com/foxcpp/maddy/framework/module/registry.go:131 +0xc5 fp=0xc023280770 sp=0xc023280718 pc=0x90db65
github.com/foxcpp/maddy/framework/config/module.ModuleFromNode({0x13d3af8?, 0x0?}, {0xc00040c070, 0x1, 0x1}, {{0xc0003f8d10, 0xa}, {0xc00040c070, 0x1, 0x1}, ...}, ...)
github.com/foxcpp/maddy/framework/config/module/modconfig.go:114 +0x12f fp=0xc023280958 sp=0xc023280770 pc=0x90fb6f
github.com/foxcpp/maddy/framework/config/module.DeliveryTarget(0xc000311dd0, {0xc00040c070, 0x1, 0x1}, {{0xc0003f8d10, 0xa}, {0xc00040c070, 0x1, 0x1}, {0x0, ...}, ...})
github.com/foxcpp/maddy/framework/config/module/interfaces.go:51 +0xae fp=0xc023280a10 sp=0xc023280958 pc=0x90ef6e
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineRcptCfg(0xc000311dd0, {0xc00030da40, 0x1, 0x0?})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:284 +0x785 fp=0xc023280d58 sp=0xc023280a10 pc=0xd577e5
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineSrcCfg(0xc000311dd0, {0xc01602b740, 0x2, 0x0?})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:196 +0x738 fp=0xc023281018 sp=0xc023280d58 pc=0xd56498
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineRootCfg(0xc000311dd0, {0xc0003e83c0, _, _})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:145 +0x1029 fp=0xc023281408 sp=0xc023281018 pc=0xd556c9
github.com/foxcpp/maddy/internal/msgpipeline.New(...)
github.com/foxcpp/maddy/internal/msgpipeline/msgpipeline.go:89
github.com/foxcpp/maddy/internal/target/queue.(*Queue).Configure.func1(0x1f1b560?, {{0xc0003f8970, 0x6}, {0x1f184e0, 0x0, 0x0}, {0xc0003e83c0, 0x2, 0x2}, 0x0, ...})
github.com/foxcpp/maddy/internal/target/queue/queue.go:222 +0x65 fp=0xc0232816f8 sp=0xc023281408 pc=0xfbf905
github.com/foxcpp/maddy/framework/config.(*Map).ProcessWith(0xc008c83880, 0xc000311dd0, {{0xc0003f87d0, 0xc}, {0xc00040c040, 0x1, 0x1}, {0xc000321d40, 0x3, 0x3}, ...})
github.com/foxcpp/maddy/framework/config/map.go:681 +0x466 fp=0xc023281a40 sp=0xc0232816f8 pc=0x5bd546
github.com/foxcpp/maddy/framework/config.(*Map).Process(...)
github.com/foxcpp/maddy/framework/config/map.go:649
github.com/foxcpp/maddy/internal/target/queue.(*Queue).Configure(0xc000378380, {0x0?, 0xc0072ce838?, 0x1474c70?}, 0xc008c83880)
github.com/foxcpp/maddy/internal/target/queue/queue.go:224 +0x305 fp=0xc023281b50 sp=0xc023281a40 pc=0xfb8065
github.com/foxcpp/maddy.RegisterModules.func1()
github.com/foxcpp/maddy/maddy.go:545 +0xf8 fp=0xc023281c48 sp=0xc023281b50 pc=0xfe1af8
github.com/foxcpp/maddy/framework/module.(*Registry).ensureInitialized(0xc000311530, {0xc0003b4551, 0xc}, 0xc023281d10)
github.com/foxcpp/maddy/framework/module/registry.go:108 +0x178 fp=0xc023281ce8 sp=0xc023281c48 pc=0x90d9f8
github.com/foxcpp/maddy/framework/module.(*Registry).Get(0xc000311530, {0xc0003b4551, 0xc})
github.com/foxcpp/maddy/framework/module/registry.go:131 +0xc5 fp=0xc023281d40 sp=0xc023281ce8 pc=0x90db65
github.com/foxcpp/maddy/framework/config/module.ModuleFromNode({0x13d3af8?, 0x0?}, {0xc000303f10, 0x1, 0x1}, {{0xc0003b4500, 0xa}, {0xc000303f10, 0x1, 0x1}, ...}, ...)
github.com/foxcpp/maddy/framework/config/module/modconfig.go:114 +0x12f fp=0xc023281f28 sp=0xc023281d40 pc=0x90fb6f
github.com/foxcpp/maddy/framework/config/module.DeliveryTarget(0xc000311dd0, {0xc000303f10, 0x1, 0x1}, {{0xc0003b4500, 0xa}, {0xc000303f10, 0x1, 0x1}, {0x0, ...}, ...})
github.com/foxcpp/maddy/framework/config/module/interfaces.go:51 +0xae fp=0xc023281fe0 sp=0xc023281f28 pc=0x90ef6e
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineRcptCfg(0xc000311dd0, {0xc00030d6e0, 0x1, 0x18?})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:284 +0x785 fp=0xc023282328 sp=0xc023281fe0 pc=0xd577e5
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineSrcCfg(0xc000311dd0, {0xc01602b440, 0x2, 0x10?})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:254 +0xe75 fp=0xc0232825e8 sp=0xc023282328 pc=0xd56bd5
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineRootCfg(0xc000311dd0, {0xc000393c80, _, _})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:145 +0x1029 fp=0xc0232829d8 sp=0xc0232825e8 pc=0xd556c9
github.com/foxcpp/maddy/internal/msgpipeline.New(...)
github.com/foxcpp/maddy/internal/msgpipeline/msgpipeline.go:89
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineRcptCfg(0xc000311dd0, {0xc000393b00, 0x2, 0x1c?})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:295 +0x50d fp=0xc023282d20 sp=0xc0232829d8 pc=0xd5756d
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineSrcCfg(0xc000311dd0, {0xc01602b140, 0x2, 0xc00a3ffb88?})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:196 +0x738 fp=0xc023282fe0 sp=0xc023282d20 pc=0xd56498
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineRootCfg(0xc000311dd0, {0xc00a009440, _, _})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:145 +0x1029 fp=0xc0232833d0 sp=0xc023282fe0 pc=0xd556c9
github.com/foxcpp/maddy/internal/msgpipeline.New(...)
github.com/foxcpp/maddy/internal/msgpipeline/msgpipeline.go:89
github.com/foxcpp/maddy/internal/msgpipeline.(*Module).Configure(0xc000425680, {0x0?, 0x0?, 0x0?}, 0xc008c82f00)
github.com/foxcpp/maddy/internal/msgpipeline/module.go:50 +0x145 fp=0xc0232836c0 sp=0xc0232833d0 pc=0xd58745
github.com/foxcpp/maddy.RegisterModules.func1()
github.com/foxcpp/maddy/maddy.go:545 +0xf8 fp=0xc0232837b8 sp=0xc0232836c0 pc=0xfe1af8
github.com/foxcpp/maddy/framework/module.(*Registry).ensureInitialized(0xc000311530, {0xc0003f8d61, 0xd}, 0xc023283880)
github.com/foxcpp/maddy/framework/module/registry.go:108 +0x178 fp=0xc023283858 sp=0xc0232837b8 pc=0x90d9f8
github.com/foxcpp/maddy/framework/module.(*Registry).Get(0xc000311530, {0xc0003f8d61, 0xd})
github.com/foxcpp/maddy/framework/module/registry.go:131 +0xc5 fp=0xc0232838b0 sp=0xc023283858 pc=0x90db65
github.com/foxcpp/maddy/framework/config/module.ModuleFromNode({0x13d3af8?, 0x0?}, {0xc00040c070, 0x1, 0x1}, {{0xc0003f8d10, 0xa}, {0xc00040c070, 0x1, 0x1}, ...}, ...)
github.com/foxcpp/maddy/framework/config/module/modconfig.go:114 +0x12f fp=0xc023283a98 sp=0xc0232838b0 pc=0x90fb6f
github.com/foxcpp/maddy/framework/config/module.DeliveryTarget(0xc000311dd0, {0xc00040c070, 0x1, 0x1}, {{0xc0003f8d10, 0xa}, {0xc00040c070, 0x1, 0x1}, {0x0, ...}, ...})
github.com/foxcpp/maddy/framework/config/module/interfaces.go:51 +0xae fp=0xc023283b50 sp=0xc023283a98 pc=0x90ef6e
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineRcptCfg(0xc000311dd0, {0xc00030da40, 0x1, 0x0?})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:284 +0x785 fp=0xc023283e98 sp=0xc023283b50 pc=0xd577e5
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineSrcCfg(0xc000311dd0, {0xc01602ab40, 0x2, 0x0?})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:196 +0x738 fp=0xc023284158 sp=0xc023283e98 pc=0xd56498
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineRootCfg(0xc000311dd0, {0xc0003e83c0, _, _})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:145 +0x1029 fp=0xc023284548 sp=0xc023284158 pc=0xd556c9
github.com/foxcpp/maddy/internal/msgpipeline.New(...)
github.com/foxcpp/maddy/internal/msgpipeline/msgpipeline.go:89
github.com/foxcpp/maddy/internal/target/queue.(*Queue).Configure.func1(0x7f8a1c730218?, {{0xc0003f8970, 0x6}, {0x1f184e0, 0x0, 0x0}, {0xc0003e83c0, 0x2, 0x2}, 0x0, ...})
github.com/foxcpp/maddy/internal/target/queue/queue.go:222 +0x65 fp=0xc023284838 sp=0xc023284548 pc=0xfbf905
github.com/foxcpp/maddy/framework/config.(*Map).ProcessWith(0xc008c82e00, 0xc000311dd0, {{0xc0003f87d0, 0xc}, {0xc00040c040, 0x1, 0x1}, {0xc000321d40, 0x3, 0x3}, ...})
github.com/foxcpp/maddy/framework/config/map.go:681 +0x466 fp=0xc023284b80 sp=0xc023284838 pc=0x5bd546
github.com/foxcpp/maddy/framework/config.(*Map).Process(...)
github.com/foxcpp/maddy/framework/config/map.go:649
github.com/foxcpp/maddy/internal/target/queue.(*Queue).Configure(0xc000378380, {0x0?, 0xc0072ce818?, 0x1474c70?}, 0xc008c82e00)
github.com/foxcpp/maddy/internal/target/queue/queue.go:224 +0x305 fp=0xc023284c90 sp=0xc023284b80 pc=0xfb8065
github.com/foxcpp/maddy.RegisterModules.func1()
github.com/foxcpp/maddy/maddy.go:545 +0xf8 fp=0xc023284d88 sp=0xc023284c90 pc=0xfe1af8
github.com/foxcpp/maddy/framework/module.(*Registry).ensureInitialized(0xc000311530, {0xc0003b4551, 0xc}, 0xc023284e50)
github.com/foxcpp/maddy/framework/module/registry.go:108 +0x178 fp=0xc023284e28 sp=0xc023284d88 pc=0x90d9f8
github.com/foxcpp/maddy/framework/module.(*Registry).Get(0xc000311530, {0xc0003b4551, 0xc})
github.com/foxcpp/maddy/framework/module/registry.go:131 +0xc5 fp=0xc023284e80 sp=0xc023284e28 pc=0x90db65
github.com/foxcpp/maddy/framework/config/module.ModuleFromNode({0x13d3af8?, 0x0?}, {0xc000303f10, 0x1, 0x1}, {{0xc0003b4500, 0xa}, {0xc000303f10, 0x1, 0x1}, ...}, ...)
github.com/foxcpp/maddy/framework/config/module/modconfig.go:114 +0x12f fp=0xc023285068 sp=0xc023284e80 pc=0x90fb6f
github.com/foxcpp/maddy/framework/config/module.DeliveryTarget(0xc000311dd0, {0xc000303f10, 0x1, 0x1}, {{0xc0003b4500, 0xa}, {0xc000303f10, 0x1, 0x1}, {0x0, ...}, ...})
github.com/foxcpp/maddy/framework/config/module/interfaces.go:51 +0xae fp=0xc023285120 sp=0xc023285068 pc=0x90ef6e
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineRcptCfg(0xc000311dd0, {0xc00030d6e0, 0x1, 0x18?})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:284 +0x785 fp=0xc023285468 sp=0xc023285120 pc=0xd577e5
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineSrcCfg(0xc000311dd0, {0xc01602a840, 0x2, 0x10?})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:254 +0xe75 fp=0xc023285728 sp=0xc023285468 pc=0xd56bd5
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineRootCfg(0xc000311dd0, {0xc000393c80, _, _})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:145 +0x1029 fp=0xc023285b18 sp=0xc023285728 pc=0xd556c9
github.com/foxcpp/maddy/internal/msgpipeline.New(...)
github.com/foxcpp/maddy/internal/msgpipeline/msgpipeline.go:89
...1149611 frames elided...
github.com/foxcpp/maddy.RegisterModules.func1()
github.com/foxcpp/maddy/maddy.go:545 +0xf8 fp=0xc04327af78 sp=0xc04327ae80 pc=0xfe1af8
github.com/foxcpp/maddy/framework/module.(*Registry).ensureInitialized(0xc000311530, {0xc0003f8d61, 0xd}, 0xc000215040)
github.com/foxcpp/maddy/framework/module/registry.go:108 +0x178 fp=0xc04327b018 sp=0xc04327af78 pc=0x90d9f8
github.com/foxcpp/maddy/framework/module.(*Registry).Get(0xc000311530, {0xc0003f8d61, 0xd})
github.com/foxcpp/maddy/framework/module/registry.go:131 +0xc5 fp=0xc04327b070 sp=0xc04327b018 pc=0x90db65
github.com/foxcpp/maddy/framework/config/module.ModuleFromNode({0x13d3af8?, 0x0?}, {0xc00040c070, 0x1, 0x1}, {{0xc0003f8d10, 0xa}, {0xc00040c070, 0x1, 0x1}, ...}, ...)
github.com/foxcpp/maddy/framework/config/module/modconfig.go:114 +0x12f fp=0xc04327b258 sp=0xc04327b070 pc=0x90fb6f
github.com/foxcpp/maddy/framework/config/module.DeliveryTarget(0xc000311dd0, {0xc00040c070, 0x1, 0x1}, {{0xc0003f8d10, 0xa}, {0xc00040c070, 0x1, 0x1}, {0x0, ...}, ...})
github.com/foxcpp/maddy/framework/config/module/interfaces.go:51 +0xae fp=0xc04327b310 sp=0xc04327b258 pc=0x90ef6e
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineRcptCfg(0xc000311dd0, {0xc00030da40, 0x1, 0x4?})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:284 +0x785 fp=0xc04327b658 sp=0xc04327b310 pc=0xd577e5
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineSrcCfg(0xc000311dd0, {0xc0003e8b40, 0x2, 0xc000215a00?})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:196 +0x738 fp=0xc04327b918 sp=0xc04327b658 pc=0xd56498
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineRootCfg(0xc000311dd0, {0xc0003e83c0, _, _})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:145 +0x1029 fp=0xc04327bd08 sp=0xc04327b918 pc=0xd556c9
github.com/foxcpp/maddy/internal/msgpipeline.New(...)
github.com/foxcpp/maddy/internal/msgpipeline/msgpipeline.go:89
github.com/foxcpp/maddy/internal/target/queue.(*Queue).Configure.func1(0x52748c?, {{0xc0003f8970, 0x6}, {0x1f184e0, 0x0, 0x0}, {0xc0003e83c0, 0x2, 0x2}, 0x0, ...})
github.com/foxcpp/maddy/internal/target/queue/queue.go:222 +0x65 fp=0xc04327bff8 sp=0xc04327bd08 pc=0xfbf905
github.com/foxcpp/maddy/framework/config.(*Map).ProcessWith(0xc00032fd80, 0xc000311dd0, {{0xc0003f87d0, 0xc}, {0xc00040c040, 0x1, 0x1}, {0xc000321d40, 0x3, 0x3}, ...})
github.com/foxcpp/maddy/framework/config/map.go:681 +0x466 fp=0xc04327c340 sp=0xc04327bff8 pc=0x5bd546
github.com/foxcpp/maddy/framework/config.(*Map).Process(...)
github.com/foxcpp/maddy/framework/config/map.go:649
github.com/foxcpp/maddy/internal/target/queue.(*Queue).Configure(0xc000378380, {0x0?, 0x1381740?, 0x11574d1?}, 0xc00032fd80)
github.com/foxcpp/maddy/internal/target/queue/queue.go:224 +0x305 fp=0xc04327c450 sp=0xc04327c340 pc=0xfb8065
github.com/foxcpp/maddy.RegisterModules.func1()
github.com/foxcpp/maddy/maddy.go:545 +0xf8 fp=0xc04327c548 sp=0xc04327c450 pc=0xfe1af8
github.com/foxcpp/maddy/framework/module.(*Registry).ensureInitialized(0xc000311530, {0xc0003b4551, 0xc}, 0xc000216610)
github.com/foxcpp/maddy/framework/module/registry.go:108 +0x178 fp=0xc04327c5e8 sp=0xc04327c548 pc=0x90d9f8
github.com/foxcpp/maddy/framework/module.(*Registry).Get(0xc000311530, {0xc0003b4551, 0xc})
github.com/foxcpp/maddy/framework/module/registry.go:131 +0xc5 fp=0xc04327c640 sp=0xc04327c5e8 pc=0x90db65
github.com/foxcpp/maddy/framework/config/module.ModuleFromNode({0x13d3af8?, 0x0?}, {0xc000303f10, 0x1, 0x1}, {{0xc0003b4500, 0xa}, {0xc000303f10, 0x1, 0x1}, ...}, ...)
github.com/foxcpp/maddy/framework/config/module/modconfig.go:114 +0x12f fp=0xc04327c828 sp=0xc04327c640 pc=0x90fb6f
github.com/foxcpp/maddy/framework/config/module.DeliveryTarget(0xc000311dd0, {0xc000303f10, 0x1, 0x1}, {{0xc0003b4500, 0xa}, {0xc000303f10, 0x1, 0x1}, {0x0, ...}, ...})
github.com/foxcpp/maddy/framework/config/module/interfaces.go:51 +0xae fp=0xc04327c8e0 sp=0xc04327c828 pc=0x90ef6e
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineRcptCfg(0xc000311dd0, {0xc00030d6e0, 0x1, 0x18?})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:284 +0x785 fp=0xc04327cc28 sp=0xc04327c8e0 pc=0xd577e5
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineSrcCfg(0xc000311dd0, {0xc0003e8780, 0x2, 0x10?})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:254 +0xe75 fp=0xc04327cee8 sp=0xc04327cc28 pc=0xd56bd5
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineRootCfg(0xc000311dd0, {0xc000393c80, _, _})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:145 +0x1029 fp=0xc04327d2d8 sp=0xc04327cee8 pc=0xd556c9
github.com/foxcpp/maddy/internal/msgpipeline.New(...)
github.com/foxcpp/maddy/internal/msgpipeline/msgpipeline.go:89
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineRcptCfg(0xc000311dd0, {0xc000393b00, 0x2, 0x1c?})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:295 +0x50d fp=0xc04327d620 sp=0xc04327d2d8 pc=0xd5756d
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineSrcCfg(0xc000311dd0, {0xc0003e86c0, 0x2, 0xc000428c88?})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:196 +0x738 fp=0xc04327d8e0 sp=0xc04327d620 pc=0xd56498
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineRootCfg(0xc000311dd0, {0xc000446480, _, _})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:145 +0x1029 fp=0xc04327dcd0 sp=0xc04327d8e0 pc=0xd556c9
github.com/foxcpp/maddy/internal/msgpipeline.New(...)
github.com/foxcpp/maddy/internal/msgpipeline/msgpipeline.go:89
github.com/foxcpp/maddy/internal/msgpipeline.(*Module).Configure(0xc000425680, {0x6447e5?, 0x1157b33?, 0x1?}, 0xc00032f680)
github.com/foxcpp/maddy/internal/msgpipeline/module.go:50 +0x145 fp=0xc04327dfc0 sp=0xc04327dcd0 pc=0xd58745
github.com/foxcpp/maddy.RegisterModules.func1()
github.com/foxcpp/maddy/maddy.go:545 +0xf8 fp=0xc04327e0b8 sp=0xc04327dfc0 pc=0xfe1af8
github.com/foxcpp/maddy/framework/module.(*Registry).ensureInitialized(0xc000311530, {0xc0003b50a1, 0xd}, 0xc000218180)
github.com/foxcpp/maddy/framework/module/registry.go:108 +0x178 fp=0xc04327e158 sp=0xc04327e0b8 pc=0x90d9f8
github.com/foxcpp/maddy/framework/module.(*Registry).Get(0xc000311530, {0xc0003b50a1, 0xd})
github.com/foxcpp/maddy/framework/module/registry.go:131 +0xc5 fp=0xc04327e1b0 sp=0xc04327e158 pc=0x90db65
github.com/foxcpp/maddy/framework/config/module.ModuleFromNode({0x13d3af8?, 0x0?}, {0xc000303f30, 0x1, 0x1}, {{0xc0003b5050, 0xa}, {0xc000303f30, 0x1, 0x1}, ...}, ...)
github.com/foxcpp/maddy/framework/config/module/modconfig.go:114 +0x12f fp=0xc04327e398 sp=0xc04327e1b0 pc=0x90fb6f
github.com/foxcpp/maddy/framework/config/module.DeliveryTarget(0xc000311dd0, {0xc000303f30, 0x1, 0x1}, {{0xc0003b5050, 0xa}, {0xc000303f30, 0x1, 0x1}, {0x0, ...}, ...})
github.com/foxcpp/maddy/framework/config/module/interfaces.go:51 +0xae fp=0xc04327e450 sp=0xc04327e398 pc=0x90ef6e
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineRcptCfg(0xc000311dd0, {0xc00030d800, 0x1, 0x0?})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:284 +0x785 fp=0xc04327e798 sp=0xc04327e450 pc=0xd577e5
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineSrcCfg(0xc000311dd0, {0xc000393e00, 0x2, 0xc00044a258?})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:196 +0x738 fp=0xc04327ea58 sp=0xc04327e798 pc=0xd56498
github.com/foxcpp/maddy/internal/msgpipeline.parseMsgPipelineRootCfg(0xc000311dd0, {0xc000446240, _, _})
github.com/foxcpp/maddy/internal/msgpipeline/config.go:156 +0x11a9 fp=0xc04327ee48 sp=0xc04327ea58 pc=0xd55849
github.com/foxcpp/maddy/internal/msgpipeline.New(...)
github.com/foxcpp/maddy/internal/msgpipeline/msgpipeline.go:89
github.com/foxcpp/maddy/internal/endpoint/smtp.(*Endpoint).setConfig(0xc00036b080, 0xc00032f480)
github.com/foxcpp/maddy/internal/endpoint/smtp/smtp.go:297 +0x930 fp=0xc04327f1b8 sp=0xc04327ee48 pc=0xd663d0
github.com/foxcpp/maddy/internal/endpoint/smtp.(*Endpoint).Configure(0xc00036b080, {0x4?, 0xc0003f3dc0?, 0x2?}, 0xc00032f480)
github.com/foxcpp/maddy/internal/endpoint/smtp/smtp.go:114 +0x1b1 fp=0xc04327f378 sp=0xc04327f1b8 pc=0xd64b91
github.com/foxcpp/maddy.RegisterModules(0xc00032e380, 0xc000311dd0, {0xc000396f08?, 0xc000219680?, 0x7f8a00000009?})
github.com/foxcpp/maddy/maddy.go:580 +0x834 fp=0xc04327f620 sp=0xc04327f378 pc=0xfe1614
github.com/foxcpp/maddy.moduleConfigure({0xc00030e900, 0x10})
github.com/foxcpp/maddy/maddy.go:380 +0x1b0 fp=0xc04327f788 sp=0xc04327f620 pc=0xfe0150
github.com/foxcpp/maddy.moduleMain({0xc00030e900, 0x10})
github.com/foxcpp/maddy/maddy.go:416 +0x78 fp=0xc04327f828 sp=0xc04327f788 pc=0xfe0598
github.com/foxcpp/maddy.Run(0xc0003346c0)
github.com/foxcpp/maddy/maddy.go:224 +0x399 fp=0xc04327f988 sp=0xc04327f828 pc=0xfded79
github.com/urfave/cli/v2.(*Command).Run(0xc00035c2c0, 0xc0003346c0, {0xc0003031a0, 0x1, 0x1})
github.com/urfave/cli/v2@v2.27.5/command.go:276 +0x7e2 fp=0xc04327fc00 sp=0xc04327f988 pc=0x979ac2
github.com/urfave/cli/v2.(*Command).Run(0xc00037ac60, 0xc000334480, {0xc000040040, 0x2, 0x2})
github.com/urfave/cli/v2@v2.27.5/command.go:269 +0xa65 fp=0xc04327fe78 sp=0xc04327fc00 pc=0x979d45
github.com/urfave/cli/v2.(*App).RunContext(0xc00028e600, {0x15cbf40, 0x1f184e0}, {0xc000040040, 0x2, 0x2})
github.com/urfave/cli/v2@v2.27.5/app.go:333 +0x5a5 fp=0xc04327fed8 sp=0xc04327fe78 pc=0x976525
github.com/urfave/cli/v2.(*App).Run(...)
github.com/urfave/cli/v2@v2.27.5/app.go:307
github.com/foxcpp/maddy/internal/cli.Run()
github.com/foxcpp/maddy/internal/cli/app.go:126 +0x166 fp=0xc04327ff40 sp=0xc04327fed8 pc=0x98c8e6
main.main()
github.com/foxcpp/maddy/cmd/maddy/main.go:28 +0xf fp=0xc04327ff50 sp=0xc04327ff40 pc=0xff27cf
runtime.main()
runtime/proc.go:272 +0x28b fp=0xc04327ffe0 sp=0xc04327ff50 pc=0x43f12b
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc04327ffe8 sp=0xc04327ffe0 pc=0x47c3e1
goroutine 2 gp=0xc000006c40 m=nil [force gc (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc0000a6fa8 sp=0xc0000a6f88 pc=0x473cee
runtime.goparkunlock(...)
runtime/proc.go:430
runtime.forcegchelper()
runtime/proc.go:337 +0xb3 fp=0xc0000a6fe0 sp=0xc0000a6fa8 pc=0x43f473
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc0000a6fe8 sp=0xc0000a6fe0 pc=0x47c3e1
created by runtime.init.7 in goroutine 1
runtime/proc.go:325 +0x1a
goroutine 3 gp=0xc000007180 m=nil [GC sweep wait]:
runtime.gopark(0x1?, 0x0?, 0x0?, 0x0?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc0000a7780 sp=0xc0000a7760 pc=0x473cee
runtime.goparkunlock(...)
runtime/proc.go:430
runtime.bgsweep(0xc0000d2000)
runtime/mgcsweep.go:317 +0xdf fp=0xc0000a77c8 sp=0xc0000a7780 pc=0x42885f
runtime.gcenable.gowrap1()
runtime/mgc.go:204 +0x25 fp=0xc0000a77e0 sp=0xc0000a77c8 pc=0x41cf25
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc0000a77e8 sp=0xc0000a77e0 pc=0x47c3e1
created by runtime.gcenable in goroutine 1
runtime/mgc.go:204 +0x66
goroutine 4 gp=0xc000007340 m=nil [GC scavenge wait]:
runtime.gopark(0x10000?, 0x15b57c0?, 0x0?, 0x0?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc0000a7f78 sp=0xc0000a7f58 pc=0x473cee
runtime.goparkunlock(...)
runtime/proc.go:430
runtime.(*scavengerState).park(0x1ef5340)
runtime/mgcscavenge.go:425 +0x49 fp=0xc0000a7fa8 sp=0xc0000a7f78 pc=0x426249
runtime.bgscavenge(0xc0000d2000)
runtime/mgcscavenge.go:658 +0x59 fp=0xc0000a7fc8 sp=0xc0000a7fa8 pc=0x4267d9
runtime.gcenable.gowrap2()
runtime/mgc.go:205 +0x25 fp=0xc0000a7fe0 sp=0xc0000a7fc8 pc=0x41cec5
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc0000a7fe8 sp=0xc0000a7fe0 pc=0x47c3e1
created by runtime.gcenable in goroutine 1
runtime/mgc.go:205 +0xa5
goroutine 5 gp=0xc000007c00 m=nil [finalizer wait]:
runtime.gopark(0x0?, 0x14743a8?, 0x80?, 0xc1?, 0x2000000020?)
runtime/proc.go:424 +0xce fp=0xc0000a6620 sp=0xc0000a6600 pc=0x473cee
runtime.runfinq()
runtime/mfinal.go:193 +0x107 fp=0xc0000a67e0 sp=0xc0000a6620 pc=0x41bfa7
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc0000a67e8 sp=0xc0000a67e0 pc=0x47c3e1
created by runtime.createfing in goroutine 1
runtime/mfinal.go:163 +0x3d
goroutine 6 gp=0xc00020c380 m=nil [chan receive]:
runtime.gopark(0xc0000a8760?, 0x563e65?, 0x80?, 0x24?, 0x15e43c0?)
runtime/proc.go:424 +0xce fp=0xc0000a8718 sp=0xc0000a86f8 pc=0x473cee
runtime.chanrecv(0xc0000e0310, 0x0, 0x1)
runtime/chan.go:639 +0x41c fp=0xc0000a8790 sp=0xc0000a8718 pc=0x40c49c
runtime.chanrecv1(0x0?, 0x0?)
runtime/chan.go:489 +0x12 fp=0xc0000a87b8 sp=0xc0000a8790 pc=0x40c052
runtime.unique_runtime_registerUniqueMapCleanup.func1(...)
runtime/mgc.go:1782
runtime.unique_runtime_registerUniqueMapCleanup.gowrap1()
runtime/mgc.go:1785 +0x2f fp=0xc0000a87e0 sp=0xc0000a87b8 pc=0x41ff4f
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc0000a87e8 sp=0xc0000a87e0 pc=0x47c3e1
created by unique.runtime_registerUniqueMapCleanup in goroutine 1
runtime/mgc.go:1780 +0x96
goroutine 36 gp=0xc00020c700 m=nil [select]:
runtime.gopark(0xc0000a8f68?, 0x2?, 0x70?, 0x0?, 0xc0000a8f44?)
runtime/proc.go:424 +0xce fp=0xc0000a8de0 sp=0xc0000a8dc0 pc=0x473cee
runtime.selectgo(0xc0000a8f68, 0xc0000a8f40, 0x3?, 0x0, 0xc0000a8f50?, 0x1)
runtime/select.go:335 +0x7a5 fp=0xc0000a8f08 sp=0xc0000a8de0 pc=0x4511c5
github.com/foxcpp/maddy/internal/limits/limiters.Rate.fill({0xc000348150?, 0xc0003481c0?}, 0x32, 0x3b9aca00)
github.com/foxcpp/maddy/internal/limits/limiters/rate.go:67 +0xe6 fp=0xc0000a8fb0 sp=0xc0000a8f08 pc=0xd4d786
github.com/foxcpp/maddy/internal/limits/limiters.NewRate.gowrap1()
github.com/foxcpp/maddy/internal/limits/limiters/rate.go:58 +0x2c fp=0xc0000a8fe0 sp=0xc0000a8fb0 pc=0xd4d66c
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc0000a8fe8 sp=0xc0000a8fe0 pc=0x47c3e1
created by github.com/foxcpp/maddy/internal/limits/limiters.NewRate in goroutine 1
github.com/foxcpp/maddy/internal/limits/limiters/rate.go:58 +0xf5
goroutine 37 gp=0xc00042a8c0 m=nil [GC worker (idle)]:
runtime.gopark(0x2ce0760dc601d?, 0x1?, 0xa4?, 0xa9?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc0000a2738 sp=0xc0000a2718 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc0000a27c8 sp=0xc0000a2738 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc0000a27e0 sp=0xc0000a27c8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc0000a27e8 sp=0xc0000a27e0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 38 gp=0xc00042aa80 m=nil [GC worker (idle)]:
runtime.gopark(0x2ce0760dc4690?, 0x1?, 0xd8?, 0xa3?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc0000a2f38 sp=0xc0000a2f18 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc0000a2fc8 sp=0xc0000a2f38 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc0000a2fe0 sp=0xc0000a2fc8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc0000a2fe8 sp=0xc0000a2fe0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 39 gp=0xc00042ac40 m=nil [GC worker (idle)]:
runtime.gopark(0x2ce0760dc3022?, 0x3?, 0x6c?, 0x3f?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc0000a3738 sp=0xc0000a3718 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc0000a37c8 sp=0xc0000a3738 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc0000a37e0 sp=0xc0000a37c8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc0000a37e8 sp=0xc0000a37e0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 40 gp=0xc00042ae00 m=nil [GC worker (idle)]:
runtime.gopark(0x1f1a760?, 0x3?, 0xb0?, 0x71?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc0000a3f38 sp=0xc0000a3f18 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc0000a3fc8 sp=0xc0000a3f38 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc0000a3fe0 sp=0xc0000a3fc8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc0000a3fe8 sp=0xc0000a3fe0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 41 gp=0xc00042afc0 m=nil [GC worker (idle)]:
runtime.gopark(0x2ce0760dc4796?, 0x1?, 0xdd?, 0x20?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc0000a4738 sp=0xc0000a4718 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc0000a47c8 sp=0xc0000a4738 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc0000a47e0 sp=0xc0000a47c8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc0000a47e8 sp=0xc0000a47e0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 42 gp=0xc00042b180 m=nil [GC worker (idle)]:
runtime.gopark(0x2ce0760dc4ab4?, 0x3?, 0x64?, 0xb2?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc0000a4f38 sp=0xc0000a4f18 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc0000a4fc8 sp=0xc0000a4f38 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc0000a4fe0 sp=0xc0000a4fc8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc0000a4fe8 sp=0xc0000a4fe0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 43 gp=0xc00042b340 m=nil [GC worker (idle)]:
runtime.gopark(0x2ce0760dc3da9?, 0x3?, 0xcd?, 0x1e?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc0000a5738 sp=0xc0000a5718 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc0000a57c8 sp=0xc0000a5738 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc0000a57e0 sp=0xc0000a57c8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc0000a57e8 sp=0xc0000a57e0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 44 gp=0xc00042b500 m=nil [GC worker (idle)]:
runtime.gopark(0x2ce0760dc3654?, 0x1?, 0xb9?, 0x3b?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc0000a5f38 sp=0xc0000a5f18 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc0000a5fc8 sp=0xc0000a5f38 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc0000a5fe0 sp=0xc0000a5fc8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc0000a5fe8 sp=0xc0000a5fe0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 45 gp=0xc00042b6c0 m=nil [GC worker (idle)]:
runtime.gopark(0x2ce0760dc37f6?, 0x3?, 0x98?, 0xd?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc000460738 sp=0xc000460718 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc0004607c8 sp=0xc000460738 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc0004607e0 sp=0xc0004607c8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc0004607e8 sp=0xc0004607e0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 46 gp=0xc00042b880 m=nil [GC worker (idle)]:
runtime.gopark(0x1f1a760?, 0x3?, 0x67?, 0x85?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc000460f38 sp=0xc000460f18 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc000460fc8 sp=0xc000460f38 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc000460fe0 sp=0xc000460fc8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc000460fe8 sp=0xc000460fe0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 47 gp=0xc00042ba40 m=nil [GC worker (idle)]:
runtime.gopark(0x2ce0760dc48c3?, 0x3?, 0x55?, 0xaf?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc000461738 sp=0xc000461718 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc0004617c8 sp=0xc000461738 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc0004617e0 sp=0xc0004617c8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc0004617e8 sp=0xc0004617e0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 48 gp=0xc00042bc00 m=nil [GC worker (idle)]:
runtime.gopark(0x2ce0760dc5277?, 0x3?, 0xaf?, 0x1?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc000461f38 sp=0xc000461f18 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc000461fc8 sp=0xc000461f38 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc000461fe0 sp=0xc000461fc8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc000461fe8 sp=0xc000461fe0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 49 gp=0xc00042bdc0 m=nil [GC worker (idle)]:
runtime.gopark(0x2ce0760dc2b0c?, 0x3?, 0x36?, 0xbc?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc000462738 sp=0xc000462718 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc0004627c8 sp=0xc000462738 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc0004627e0 sp=0xc0004627c8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc0004627e8 sp=0xc0004627e0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 50 gp=0xc000464000 m=nil [GC worker (idle)]:
runtime.gopark(0x1f1a760?, 0x3?, 0xb5?, 0xd3?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc000462f38 sp=0xc000462f18 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc000462fc8 sp=0xc000462f38 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc000462fe0 sp=0xc000462fc8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc000462fe8 sp=0xc000462fe0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 51 gp=0xc0004641c0 m=nil [GC worker (idle)]:
runtime.gopark(0x2ce0760dc46ff?, 0x1?, 0xd8?, 0x88?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc000463738 sp=0xc000463718 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc0004637c8 sp=0xc000463738 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc0004637e0 sp=0xc0004637c8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc0004637e8 sp=0xc0004637e0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 52 gp=0xc000464380 m=nil [GC worker (idle)]:
runtime.gopark(0x2ce0760dc8849?, 0x3?, 0xcd?, 0x45?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc000463f38 sp=0xc000463f18 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc000463fc8 sp=0xc000463f38 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc000463fe0 sp=0xc000463fc8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc000463fe8 sp=0xc000463fe0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 53 gp=0xc000464540 m=nil [GC worker (idle)]:
runtime.gopark(0x2ce0760dc4995?, 0x1?, 0x3a?, 0x50?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc00045c738 sp=0xc00045c718 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc00045c7c8 sp=0xc00045c738 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc00045c7e0 sp=0xc00045c7c8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc00045c7e8 sp=0xc00045c7e0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 54 gp=0xc000464700 m=nil [GC worker (idle)]:
runtime.gopark(0x2ce0760dc4617?, 0x1?, 0x9e?, 0xa4?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc00045cf38 sp=0xc00045cf18 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc00045cfc8 sp=0xc00045cf38 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc00045cfe0 sp=0xc00045cfc8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc00045cfe8 sp=0xc00045cfe0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 55 gp=0xc0004648c0 m=nil [GC worker (idle)]:
runtime.gopark(0x2ce0760dc43ba?, 0x3?, 0xde?, 0xc4?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc00045d738 sp=0xc00045d718 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc00045d7c8 sp=0xc00045d738 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc00045d7e0 sp=0xc00045d7c8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc00045d7e8 sp=0xc00045d7e0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 56 gp=0xc000464a80 m=nil [GC worker (idle)]:
runtime.gopark(0x1f1a760?, 0x3?, 0x2b?, 0x99?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc00045df38 sp=0xc00045df18 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc00045dfc8 sp=0xc00045df38 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc00045dfe0 sp=0xc00045dfc8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc00045dfe8 sp=0xc00045dfe0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 57 gp=0xc000464c40 m=nil [GC worker (idle)]:
runtime.gopark(0x2ce0760dc3e99?, 0x1?, 0xb7?, 0xd5?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc00045e738 sp=0xc00045e718 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc00045e7c8 sp=0xc00045e738 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc00045e7e0 sp=0xc00045e7c8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc00045e7e8 sp=0xc00045e7e0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 58 gp=0xc000464e00 m=nil [GC worker (idle)]:
runtime.gopark(0x1f1a760?, 0x3?, 0x5a?, 0xa3?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc00045ef38 sp=0xc00045ef18 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc00045efc8 sp=0xc00045ef38 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc00045efe0 sp=0xc00045efc8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc00045efe8 sp=0xc00045efe0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 59 gp=0xc000464fc0 m=nil [GC worker (idle)]:
runtime.gopark(0x2ce0760dc482f?, 0x1?, 0x49?, 0x1b?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc00045f738 sp=0xc00045f718 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc00045f7c8 sp=0xc00045f738 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc00045f7e0 sp=0xc00045f7c8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc00045f7e8 sp=0xc00045f7e0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 60 gp=0xc000465180 m=nil [GC worker (idle)]:
runtime.gopark(0x2ce0760dcb589?, 0x1?, 0xc8?, 0xbe?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc00045ff38 sp=0xc00045ff18 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc00045ffc8 sp=0xc00045ff38 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc00045ffe0 sp=0xc00045ffc8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc00045ffe8 sp=0xc00045ffe0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 61 gp=0xc000465340 m=nil [GC worker (idle)]:
runtime.gopark(0x2ce0760dc4606?, 0xc0003e6e40?, 0x1a?, 0xa?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc00046a738 sp=0xc00046a718 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc00046a7c8 sp=0xc00046a738 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc00046a7e0 sp=0xc00046a7c8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc00046a7e8 sp=0xc00046a7e0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 62 gp=0xc000465500 m=nil [GC worker (idle)]:
runtime.gopark(0x2ce073be55e4a?, 0x1?, 0x88?, 0xd6?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc00046af38 sp=0xc00046af18 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc00046afc8 sp=0xc00046af38 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc00046afe0 sp=0xc00046afc8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc00046afe8 sp=0xc00046afe0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 63 gp=0xc0004656c0 m=nil [GC worker (idle)]:
runtime.gopark(0x2ce0760dc2ab6?, 0x3?, 0x53?, 0x24?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc00046b738 sp=0xc00046b718 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc00046b7c8 sp=0xc00046b738 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc00046b7e0 sp=0xc00046b7c8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc00046b7e8 sp=0xc00046b7e0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 64 gp=0xc000465880 m=nil [GC worker (idle)]:
runtime.gopark(0x2ce0760dc6900?, 0x3?, 0xa1?, 0x12?, 0x0?)
runtime/proc.go:424 +0xce fp=0xc00046bf38 sp=0xc00046bf18 pc=0x473cee
runtime.gcBgMarkWorker(0xc000348380)
runtime/mgc.go:1412 +0xe9 fp=0xc00046bfc8 sp=0xc00046bf38 pc=0x41f269
runtime.gcBgMarkStartWorkers.gowrap1()
runtime/mgc.go:1328 +0x25 fp=0xc00046bfe0 sp=0xc00046bfc8 pc=0x41f145
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc00046bfe8 sp=0xc00046bfe0 pc=0x47c3e1
created by runtime.gcBgMarkStartWorkers in goroutine 1
runtime/mgc.go:1328 +0x105
goroutine 65 gp=0xc000465a40 m=nil [select]:
runtime.gopark(0xc00046c778?, 0x2?, 0x70?, 0x0?, 0xc00046c76c?)
runtime/proc.go:424 +0xce fp=0xc00046c608 sp=0xc00046c5e8 pc=0x473cee
runtime.selectgo(0xc00046c778, 0xc00046c768, 0x0?, 0x0, 0x0?, 0x1)
runtime/select.go:335 +0x7a5 fp=0xc00046c730 sp=0xc00046c608 pc=0x4511c5
github.com/foxcpp/maddy/internal/smtpconn/pool.(*P).cleanUpTick(0xc000335900, 0xc0003483f0)
github.com/foxcpp/maddy/internal/smtpconn/pool/pool.go:81 +0xcb fp=0xc00046c7c0 sp=0xc00046c730 pc=0xfc46ab
github.com/foxcpp/maddy/internal/smtpconn/pool.New.gowrap1()
github.com/foxcpp/maddy/internal/smtpconn/pool/pool.go:70 +0x25 fp=0xc00046c7e0 sp=0xc00046c7c0 pc=0xfc45a5
runtime.goexit({})
runtime/asm_amd64.s:1700 +0x1 fp=0xc00046c7e8 sp=0xc00046c7e0 pc=0x47c3e1
created by github.com/foxcpp/maddy/internal/smtpconn/pool.New in goroutine 1
github.com/foxcpp/maddy/internal/smtpconn/pool/pool.go:70 +0x13d
Configuration file
state_dir /data/state
runtime_dir /cache/run
$(hostname) = {env:MADDY_HOSTNAME}
$(primary_domain) = {env:MADDY_DOMAIN}
$(local_domains) = $(primary_domain) imagegenius.io ${D_SN} ${D_TACA} ${D_TAN} ${D_LMVCA} ${D_BBPC}
$(external_domains) = ${D_HCA}
$(sender_domains) = $(local_domains) $(external_domains)
tls file /certs/tls.crt /certs/tls.key
auth.pass_table local_authdb {
table sql_table {
driver sqlite3
dsn /data/credentials.db
table_name passwords
}
}
storage.imapsql local_mailboxes {
driver sqlite3
dsn /data/imapsql.db
}
hostname $(hostname)
msgpipeline local_routing {
check {
require_mx_record
dkim
spf
}
destination postmaster $(local_domains) {
modify {
replace_rcpt regexp "(.+)\+(.+)@(.+)" "$1@$3"
replace_rcpt file /data/aliases
}
reroute {
destination postmaster $(local_domains) {
deliver_to &local_mailboxes
}
default_destination {
deliver_to &remote_queue
}
}
}
default_destination {
reject 550 5.1.1 "User doesn't exist"
}
}
smtp tcp://0.0.0.0:{env:SMTP_PORT} {
limits {
all rate 50 1s
all concurrency 20
}
source $(sender_domains) {
reject 501 5.1.8 "Use Submission for outgoing SMTP"
}
default_source {
destination postmaster $(local_domains) {
deliver_to &local_routing
}
default_destination {
reject 550 5.1.1 "User doesn't exist"
}
}
}
submission tls://0.0.0.0:{env:SUBMISSIONS_PORT} tcp://0.0.0.0:{env:SUBMISSION_PORT} {
limits {
all rate 50 1s
}
auth &local_authdb
source $(sender_domains) {
destination postmaster $(local_domains) {
deliver_to &local_routing
}
default_destination {
modify {
dkim $(sender_domains) default
}
deliver_to &remote_queue
}
}
default_source {
reject 501 5.1.8 "Non-local sender domain"
}
}
target.remote outbound_delivery {
limits {
destination rate 20 1s
destination concurrency 10
}
mx_auth {
dane
mtasts {
cache fs
fs_dir mtasts_cache/
}
local_policy {
min_tls_level encrypted
min_mx_level none
}
}
}
target.queue remote_queue {
target &outbound_delivery
autogenerated_msg_domain $(primary_domain)
bounce {
destination postmaster $(local_domains) {
deliver_to &local_routing
}
default_destination {
reject 550 5.0.0 "Refusing to send DSNs to non-local addresses"
}
}
}
imap tls://0.0.0.0:{env:IMAPS_PORT} tcp://0.0.0.0:{env:IMAP_PORT} {
auth &local_authdb
storage &local_mailboxes
}
Environment information
ghcr.io/foxcpp/maddy on Kubernetes 1.35.3
Additional deployment context:
https://github.com/hydazz/home-ops/blob/main/kubernetes/apps/self-hosted/maddy/app/helmrelease.yaml
- maddy version: 0.9.0+
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
bugSomething isn't working.Something isn't working.ready-for-releaseFeature is implemented and available for testing in dev branch. It will be included in the next releFeature is implemented and available for testing in dev branch. It will be included in the next rele