If systemd doesn't recognize that service has started, that mean probably pid file has other location than previously.
You can check what systemd is doing via strace:

strace -s 1024 systemctl start dovecot
W dniu 17 kwi 2021, o 19:39, użytkownik Felix Zielcke <fzielcke@z-51.de> napisał:
Hello *,

I have upgraded today a Debian buster (stable) system to bullseye
(still testing). After upgrade I did a complete reboot of the VM.

Dovecot version changed from 1:2.3.4.1-5+deb10u6 to 1:2.3.13+dfsg1-1

`systemctl start dovecot` now complains
Job for dovecot.service failed because a timeout was exceeded.

As a workaround I set "TimeoutStartSec=infinity" in dovecot.service.
But `systemctl status` now says:

Active: activating (start) since Sat 2021-04-17 17:53:58 CEST; 1h 23min ago

Dovecot itself is working fine without problems. LMTP accepts new mails and IMAP works.
It's just that systemd doestn't notice it running.

Any idea what causes this?

Config is unchanged from the working 2.3.4.1 system.

# doveconf -n
# 2.3.13 (89f716dc2): /etc/dovecot/dovecot.conf
# Pigeonhole version 0.5.13 (cdd19fe3)
# OS: Linux 5.10.0-6-cloud-amd64 x86_64 Debian bullseye/sid
# Hostname: daedalus.z-51.de
auth_master_user_separator = *
auth_mechanisms = plain login
auth_ssl_username_from_cert = yes
auth_verbose = yes
auth_verbose_passwords = plain
default_vsz_limit = 2 G
first_valid_uid = 8
import_environment = TZ
last_valid_uid = 8
lda_mailbox_autocreate = yes
lda_mailbox_autosubscribe = yes
login_log_format_elements = user=<%u> method=%m rip=%r lip=%l mpid=%e
%c ssl_security=%k
login_trusted_networks = 127.0.0.1 ::1
mail_gid = mail
mail_location = maildir:~/Maildir
mail_plugins = acl zlib quota fts fts_xapian
mail_privileged_group = mail
mail_uid = mail
maildir_very_dirty_syncs = yes
managesieve_notify_capability = mailto
managesieve_sieve_capability = fileinto reject envelope encoded-
character vacation subaddress comparator-i;ascii-numeric relational
regex imap4flags copy include variables body enotify environment
mailbox date index ihave duplicate mime foreverypart extracttext
imapsieve vnd.dovecot.imapsieve
namespace inbox {
inbox = yes
location =
mailbox Drafts {
special_use = \Drafts
}
mailbox Junk {
special_use = \Junk
}
mailbox Sent {
special_use = \Sent
}
mailbox "Sent Messages" {
special_use = \Sent
}
mailbox Spam {
special_use = \Junk
}
mailbox Trash {
special_use = \Trash
}
prefix =
separator = /
}
passdb {
args = scheme=CRYPT username_format=%Lu /etc/dovecot/users
driver = passwd-file
}
plugin {
acl = vfile:/etc/dovecot/global-acls:cache_secs=300
fts = xapian
fts_autoindex = yes
fts_autoindex_exclude = \Junk
fts_autoindex_exclude2 = \Trash
fts_xapian = partial=3 full=20 attachments=0 verbose=0
imapsieve_mailbox1_before = file:/var/mail/sieve/report-spam.sieve
imapsieve_mailbox1_causes = COPY
imapsieve_mailbox1_name = Spam
imapsieve_mailbox2_before = file:/var/mail/sieve/report-ham.sieve
imapsieve_mailbox2_causes = COPY
imapsieve_mailbox2_from = Spam
imapsieve_mailbox2_name = *
sieve = file:~/sieve;active=~/.dovecot.sieve
sieve_before = /var/mail/sieve/before.sieve
sieve_global_extensions = +vnd.dovecot.pipe +vnd.dovecot.execute
sieve_pipe_bin_dir = /var/mail/sieve
sieve_plugins = sieve_imapsieve sieve_extprograms
sieve_redirect_envelope_from = recipient
sieve_vacation_default_period = 1d
stats_refresh = 30 secs
stats_track_cmds = yes
}
postmaster_address = postmaster@z-51.de
protocols = " imap lmtp sieve"
service auth-worker {
user = $default_internal_user
}
service auth {
unix_listener auth-client {
group = Debian-exim
mode = 0777
user = Debian-exim
}
unix_listener auth-userdb {
group = Debian-exim
mode = 0777
user = Debian-exim
}
vsz_limit = 2 G
}
service imap-login {
inet_listener imap {
port = 143
}
inet_listener imaps {
port = 993
ssl = yes
}
}
service indexer-worker {
vsz_limit = 0
}
service lmtp {
user = mail
}
service managesieve-login {
inet_listener sieve {
address = 127.0.0.1 ::1
port = 4190
}
service_count = 1
}
service managesieve {
process_limit = 1024
}
service stats {
fifo_listener stats-mail {
mode = 0600
user = mail
}
unix_listener stats-writer {
user = mail
}
}
ssl = required
ssl_cert = </etc/letsencrypt/live/daedalus.z-51.de/fullchain.pem
ssl_client_ca_dir = /etc/ssl/certs
ssl_dh = # hidden, use -P to show it
ssl_key = # hidden, use -P to show it
ssl_prefer_server_ciphers = yes
userdb {
args = username_format=%Lu /etc/dovecot/users
default_fields = uid=mail gid=mail home=/var/mail/%d/%n
driver = passwd-file
}
verbose_proctitle = yes
protocol lmtp {
auth_username_format = %Lu
mail_plugins = acl zlib quota fts fts_xapian sieve
}
protocol lda {
mail_plugins = acl zlib quota fts fts_xapian sieve
}
protocol imap {
mail_plugins = acl zlib quota fts fts_xapian imap_zlib imap_acl
imap_quota imap_sieve
}