Good afternoon,
I have a new Vikunja instance v0.24.4. I’m looking to put it in production with email sending through gmail. Running docker compose with environmental variables pushed through the compose yml. I have successfully tested email with “vikunja testemail” log below, and enabled mail with the env variable, but it appears when Vikunja has a trigger for an email send, we get this panic error. I have the logs below.
Any thoughts?
############################################
###test email successful
############################################
2024-11-21T19:37:57Z: INFO ▶ 001 No config file found, using default or config from environment variables.
2024-11-21T19:37:57Z: INFO ▶ 002 Sending testmail...
2024-11-21T19:38:00Z: DEBUG ▶ 2de [Task Reminder Cron] Looking for reminders between 2024-11-21 13:38:00 -0600 CST and 2024-11-21 13:39:00 -0600 CST to send...
2024-11-21T19:38:00Z: DEBUG ▶ 2e1 [Undone Overdue Tasks Reminder] Sending reminders to 0 users
2024-11-21T19:38:00Z: DEBUG ▶ 2e5 [Task Reminder Cron] Found 1 reminders
2024-11-21T19:38:00Z: INFO ▶ 01b Testmail successfully sent.
############################################
####error when assigning a user to a task and vikunja should trigger an email send
####logs are sanitized....
############################################
2024-11-21T19:33:45Z: ERROR ▶ 231 Error while handling message 7f453104-aa6a-4e50-8bda-8139a3ec4641, subscriber_poisoned=gochannel.GoChannel, reason_poisoned=panic occurred: "invalid memory address or nil pointer dereference", stacktrace:
goroutine 298 [running]:
runtime/debug.Stack()
/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.23.1.linux-amd64/src/runtime/debug/stack.go:26 +0x5e
github.com/ThreeDotsLabs/watermill/message/router/middleware.Recoverer.func1.1()
/go/pkg/mod/github.com/!three!dots!labs/watermill@v1.3.7/message/router/middleware/recoverer.go:29 +0x50
panic({0x1681380?, 0x4a107c0?})
/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.23.1.linux-amd64/src/runtime/panic.go:785 +0x132
github.com/typesense/typesense-go/v2/typesense.GenericCollection[...](...)
/go/pkg/mod/github.com/typesense/typesense-go/v2@v2.0.0/typesense/client.go:32
github.com/typesense/typesense-go/v2/typesense.(*Client).Collection(...)
/go/pkg/mod/github.com/typesense/typesense-go/v2@v2.0.0/typesense/client.go:36
code.vikunja.io/api/pkg/models.reindexTasksInTypesense(0xc00071c000, 0xc00063dae0)
/go/src/code.vikunja.io/api/pkg/models/typesense.go:325 +0x42d
code.vikunja.io/api/pkg/models.(*UpdateTaskInSavedFilterViews).Handle(0x3defc18?, 0xc0002d5680)
/go/src/code.vikunja.io/api/pkg/models/listeners.go:734 +0xefd
github.com/ThreeDotsLabs/watermill/message.(*Router).AddNoPublisherHandler.func1(0xc0005087e0?)
/go/pkg/mod/github.com/!three!dots!labs/watermill@v1.3.7/message/router.go:338 +0x17
github.com/ThreeDotsLabs/watermill/message/router/middleware.Recoverer.func1(0xc00063dd50?)
/go/pkg/mod/github.com/!three!dots!labs/watermill@v1.3.7/message/router/middleware/recoverer.go:33 +0x70
github.com/ThreeDotsLabs/watermill/message/router/middleware.Retry.Middleware-fm.Retry.Middleware.func1(0xc0002d5680)
/go/pkg/mod/github.com/!three!dots!labs/watermill@v1.3.7/message/router/middleware/retry.go:72 +0x27e
github.com/ThreeDotsLabs/watermill/message/router/middleware.poisonQueue.Middleware-fm.poisonQueue.Middleware.func1(0x169d9a0?)
/go/pkg/mod/github.com/!three!dots!labs/watermill@v1.3.7/message/router/middleware/poison.go:99 +0xa2
github.com/ThreeDotsLabs/watermill/components/metrics.HandlerPrometheusMetricsMiddleware.Middleware-fm.HandlerPrometheusMetricsMiddleware.Middleware.func1(0xc0002d5680)
/go/pkg/mod/github.com/!three!dots!labs/watermill@v1.3.7/components/metrics/handler.go:58 +0x19b
github.com/ThreeDotsLabs/watermill/message.(*handler).handleMessage(0xc000442410, 0xc0002d5680, 0xc000532030)
/go/pkg/mod/github.com/!three!dots!labs/watermill@v1.3.7/message/router.go:783 +0x15b
created by github.com/ThreeDotsLabs/watermill/message.(*handler).run in goroutine 141
/go/pkg/mod/github.com/!three!dots!labs/watermill@v1.3.7/message/router.go:628 +0x2a5
, topic_poisoned=task.updated, handler_poisoned=task.updated.task.set.saved.filter.views, payload={"task":{"id":169,"title":"task 44","description":"\u003cp\u003e\u003c/p\u003e","done":false,"done_at":"0001-01-01T00:00:00Z","due_date":"0001-01-01T00:00:00Z","reminders":null,"project_id":1,"repeat_after":0,"repeat_mode":0,"priority":0,"start_date":"0001-01-01T00:00:00Z","end_date":"0001-01-01T00:00:00Z","assignees":null,"labels":null,"hex_color":"","percent_done":0,"identifier":"","index":6,"related_tasks":null,"attachments":null,"cover_image_attachment_id":0,"is_favorite":false,"created":"2024-11-21T13:32:41-06:00","updated":"2024-11-21T13:32:54-06:00","bucket_id":0,"position":0,"reactions":null,"created_by":null},"doer":{"id":1,"name":"","username":"tester","email":"test@test.org","created":"0001-01-01T00:00:00Z","updated":"0001-01-01T00:00:00Z"}}
####################################################
####env variables
###################################################
VIKUNJA_SERVICE_PUBLICURL: ****
VIKUNJA_SERVICE_JWTSECRET: ****
VIKUNJA_DATABASE_HOST: *****
VIKUNJA_DATABASE_PASSWORD: *****
VIKUNJA_DATABASE_TYPE: postgres
VIKUNJA_DATABASE_USER: ******
VIKUNJA_DATABASE_DATABASE: ******
VIKUNJA_SERVICE_ENABLEREGISTRATION: false
VIKUNJA_SERVICE_TIMEZONE: "America/Chicago"
VIKINJA_SERVICE_CUSTOMLOGOURL: *****
VIKUNJA_CUSTOM_LOGO_URL: *****
VIKUNJA_LOG_PATH: /app/vikunja/files
VIKUNJA_LOG_STANDARD: file
VIKUNJA_LOG_LEVEL: DEBUG
VIKUNJA_MAILER_FORCESSL: true
VIKUNJA_MAILER_HOST: smtp.gmail.com
VIKUNJA_MAILER_PORT: 465
VIKUNJA_MAILER_USERNAME: *****
VIKUNJA_MAILER_PASSWORD: *****
VIKUNJA_SERVICE_ENABLEEMAILREMINDERS: true
VIKUNJA_LOG_MAIL: file
VIKUNJA_LOG_MAILLEVEL: DEBUG
VIKUNJA_MAILER_ENABLED: true