From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by lists.proxmox.com (Postfix) with ESMTPS id 986F56F895 for ; Tue, 31 Aug 2021 12:17:20 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 7CD4A24009 for ; Tue, 31 Aug 2021 12:17:20 +0200 (CEST) Received: from proxmox-new.maurer-it.com (proxmox-new.maurer-it.com [94.136.29.106]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by firstgate.proxmox.com (Proxmox) with ESMTPS id ECD1F23FCE for ; Tue, 31 Aug 2021 12:17:15 +0200 (CEST) Received: from proxmox-new.maurer-it.com (localhost.localdomain [127.0.0.1]) by proxmox-new.maurer-it.com (Proxmox) with ESMTP id B91F14436E for ; Tue, 31 Aug 2021 12:17:15 +0200 (CEST) From: Lorenz Stechauner To: pve-devel@lists.proxmox.com Date: Tue, 31 Aug 2021 12:16:28 +0200 Message-Id: <20210831101637.3080902-2-l.stechauner@proxmox.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20210831101637.3080902-1-l.stechauner@proxmox.com> References: <20210831101637.3080902-1-l.stechauner@proxmox.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SPAM-LEVEL: Spam detection results: 0 AWL 0.458 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record URIBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to URIBL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more information. [anyevent.pm] Subject: [pve-devel] [PATCH v4 http-server 1/1] anyevent: move unlink from http-server to endpoint X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 31 Aug 2021 10:17:20 -0000 any uploaded file has to be deleted by the corrosponding endpoint. the file upload was only used by the 'upload to storage' feature in pve. this change allows the endpoint to delete the file itself, making the old and racey`sleep 1` (waiting until the worker has opened the file) obsolete. this change breaks all pve-manager versions, in which the worker does not unlink the temp file itself. Signed-off-by: Lorenz Stechauner --- src/PVE/APIServer/AnyEvent.pm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/PVE/APIServer/AnyEvent.pm b/src/PVE/APIServer/AnyEvent.pm index cd77806..86d0e2e 100644 --- a/src/PVE/APIServer/AnyEvent.pm +++ b/src/PVE/APIServer/AnyEvent.pm @@ -114,7 +114,7 @@ sub log_aborted_request { } sub cleanup_reqstate { - my ($reqstate) = @_; + my ($reqstate, $deletetmpfile) = @_; delete $reqstate->{log}; delete $reqstate->{request}; @@ -123,7 +123,7 @@ sub cleanup_reqstate { delete $reqstate->{starttime}; if ($reqstate->{tmpfilename}) { - unlink $reqstate->{tmpfilename}; + unlink $reqstate->{tmpfilename} if $deletetmpfile; delete $reqstate->{tmpfilename}; } } @@ -131,7 +131,7 @@ sub cleanup_reqstate { sub client_do_disconnect { my ($self, $reqstate) = @_; - cleanup_reqstate($reqstate); + cleanup_reqstate($reqstate, 1); my $shutdown_hdl = sub { my $hdl = shift; @@ -168,7 +168,7 @@ sub client_do_disconnect { sub finish_response { my ($self, $reqstate) = @_; - cleanup_reqstate($reqstate); + cleanup_reqstate($reqstate, 0); my $hdl = $reqstate->{hdl}; return if !$hdl; # already disconnected -- 2.30.2