From: Fiona Ebner <f.ebner@proxmox.com>
To: Maximiliano Sandoval <m.sandoval@proxmox.com>,
pmg-devel@lists.proxmox.com
Subject: Re: [pmg-devel] [PATCH api v4 02/10] pmg-smtp-filter: move pid file into /run/pmg-smtp-filter
Date: Thu, 27 Feb 2025 09:38:59 +0100 [thread overview]
Message-ID: <b3ef257d-d2b0-485d-8804-77a08f69824a@proxmox.com> (raw)
In-Reply-To: <38c4a43b-5f49-41a0-98ca-3911676a0232@proxmox.com>
Am 16.07.24 um 11:14 schrieb Fiona Ebner:
> CC-ing pmg-devel again
>
> Am 15.07.24 um 14:02 schrieb Maximiliano Sandoval:
>> Fiona Ebner <f.ebner@proxmox.com> writes:
>>
>>> Am 10.07.24 um 16:35 schrieb Maximiliano Sandoval:
>>>> diff --git a/src/PMG/Utils.pm b/src/PMG/Utils.pm
>>>> index 5d9ded4..09cb42d 100644
>>>> --- a/src/PMG/Utils.pm
>>>> +++ b/src/PMG/Utils.pm
>>>> @@ -1462,7 +1462,7 @@ sub get_pg_server_version {
>>>>
>>>> sub reload_smtp_filter {
>>>>
>>>> - my $pid_file = '/run/pmg-smtp-filter.pid';
>>>> + my $pid_file = '/run/pmg-smtp-filter/pmg-smtp-filter.pid';
>>>> my $pid = PVE::Tools::file_read_firstline($pid_file);
>>>>
>>>> return 0 if !$pid;
>>>
>>> Can there be a race here during/after update? I.e. service still running
>>> with PID file in old path and reload_smtp_filter() is called only
>>> checking the new path. Does something ensure this can't happen?
>>> Otherwise, I suppose we'll need to check the old path too until the next
>>> major release.
>>>
>>> And what about the other way around, i.e. service already running with
>>> PID file in new path and old version of reload_smtp_filter() called
>>> still checking the old path?
>>
>> I am not entirely sure to be honest. Every service will be restarted
>> after the install so at most there could be races during the install
>> process.
>>
>
> But the src/PMG/Utils.pm file is used by other services too, right? And
> it seems likely that reload_smtp_filter() can be reached by those, e.g.
> one caller is PMG/Config.pm's rewrite_config().
>
Since we talked off-list about this series again: maybe we can make
PMG/Utils.pm check both the new and old path right now for preparation
and then in the next major release, switch over the systemd service to
the new path?
>> I am not sure how this is handled in perl, but my understanding is that
>> the file is in memory until the service is restarted in which case I
>> don't think there should be any race in this window either.
>>
_______________________________________________
pmg-devel mailing list
pmg-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pmg-devel
next prev parent reply other threads:[~2025-02-27 8:39 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-07-10 14:35 [pmg-devel] [PATCH api v4 01/10] pmgpolicy: move pid file into /run/pmgpolicy Maximiliano Sandoval
2024-07-10 14:35 ` [pmg-devel] [PATCH api v4 02/10] pmg-smtp-filter: move pid file into /run/pmg-smtp-filter Maximiliano Sandoval
2024-07-12 9:54 ` Fiona Ebner
[not found] ` <s8ottgq2784.fsf@proxmox.com>
2024-07-16 9:14 ` Fiona Ebner
2025-02-27 8:38 ` Fiona Ebner [this message]
2024-07-10 14:35 ` [pmg-devel] [PATCH api v4 03/10] config: store config lock in smtp-filter runtime dir Maximiliano Sandoval
2024-07-10 14:35 ` [pmg-devel] [PATCH api v4 04/10] create new users for the rule db Maximiliano Sandoval
2024-07-10 14:35 ` [pmg-devel] [PATCH api v4 05/10] postinstall: add new group for shared functionality Maximiliano Sandoval
2024-07-10 14:35 ` [pmg-devel] [PATCH api v4 06/10] postinstall: make rrdcached be readable by the pmg group Maximiliano Sandoval
2024-07-10 14:35 ` [pmg-devel] [PATCH api v4 07/10] spamasassin: store files in dir managed by pmg Maximiliano Sandoval
2024-07-10 14:35 ` [pmg-devel] [PATCH api v4 08/10] mailqueue: make mail queue writable by pmg group Maximiliano Sandoval
2024-07-10 14:35 ` [pmg-devel] [PATCH api v4 09/10] d/sysusers: add users for pmgpolicy and smtp-filter Maximiliano Sandoval
2024-07-10 14:35 ` [pmg-devel] [PATCH api v4 10/10] fix #4926: run pmg-smtp-filter and pmgpolicy without root rights Maximiliano Sandoval
2025-04-04 13:15 ` [pmg-devel] [PATCH api v4 01/10] pmgpolicy: move pid file into /run/pmgpolicy Maximiliano Sandoval
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=b3ef257d-d2b0-485d-8804-77a08f69824a@proxmox.com \
--to=f.ebner@proxmox.com \
--cc=m.sandoval@proxmox.com \
--cc=pmg-devel@lists.proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal