From debbugs-submit-bounces@debbugs.gnu.org Sat Dec 06 17:49:39 2014 Received: (at submit) by debbugs.gnu.org; 6 Dec 2014 22:49:39 +0000 Received: from localhost ([127.0.0.1]:55731 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XxOAU-0000Cs-Lx for submit@debbugs.gnu.org; Sat, 06 Dec 2014 17:49:39 -0500 Received: from eggs.gnu.org ([208.118.235.92]:38183) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XxOAS-0000Cg-9x for submit@debbugs.gnu.org; Sat, 06 Dec 2014 17:49:36 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XxOAL-0008DM-G0 for submit@debbugs.gnu.org; Sat, 06 Dec 2014 17:49:36 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=BAYES_20,T_DKIM_INVALID autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:40649) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XxOAL-0008DC-D0 for submit@debbugs.gnu.org; Sat, 06 Dec 2014 17:49:29 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:39886) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XxOAF-0006xy-HC for bug-gnu-emacs@gnu.org; Sat, 06 Dec 2014 17:49:29 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XxOA9-00089U-QU for bug-gnu-emacs@gnu.org; Sat, 06 Dec 2014 17:49:23 -0500 Received: from out3-smtp.messagingengine.com ([66.111.4.27]:52987) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XxOA9-000893-Hz for bug-gnu-emacs@gnu.org; Sat, 06 Dec 2014 17:49:17 -0500 Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailout.nyi.internal (Postfix) with ESMTP id B04EA206B6 for ; Sat, 6 Dec 2014 17:49:15 -0500 (EST) Received: from frontend2 ([10.202.2.161]) by compute3.internal (MEProxy); Sat, 06 Dec 2014 17:49:15 -0500 DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=secretsauce.net; h=x-sasl-enc:from:to:subject:date:message-id:mime-version :content-type; s=mesmtp; bh=1T66VawViyMhd0obRqxxoz6oAD8=; b=Y6Bn L72L0WW1yUszUBofPbeyC4PzOkPGhkBPjNPre853ZK1VzdxakznXIaqd69dx8DAQ ktMBWVulV1chO6WTYIYbvUifC61f5fE5m7i2fIMI1o64LQSIZe2tdYRW+/TrCbin BREdpZHcL9Vh3r2GOQm7rOC2c+1D+scNUxiz3kk= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d= messagingengine.com; h=x-sasl-enc:from:to:subject:date :message-id:mime-version:content-type; s=smtpout; bh=1T66VawViyM hd0obRqxxoz6oAD8=; b=WdHcbtLBkVGsiFwuvKc5Mr70z7nYBM/tARh1MiPRInv +7JW5EcjBgDnKHqAqN09bPsmKYC/RMhdWUdODP4pGul2yfdFRvMdmx8+EKnSDNWO hV4hH5r+30KJ25dV2/JJOqMJ7qZHJzyhtqlRXXtxJOHBVc3MuCwR7eW/kxRdK8mA = X-Sasl-enc: GXZI+Zkc1Q4buzCTRoU/cYV1x1XbLyj5KPxz9olhwh9U 1417906155 Received: from shorty.local (unknown [76.91.145.213]) by mail.messagingengine.com (Postfix) with ESMTPA id 6A9276801EB for ; Sat, 6 Dec 2014 17:49:15 -0500 (EST) Received: from dima by shorty.local with local (Exim 4.82_1-5b7a7c0-XX) (envelope-from ) id 1XxOA6-00016x-5n for bug-gnu-emacs@gnu.org; Sat, 06 Dec 2014 14:49:14 -0800 From: Dima Kogan To: bug-gnu-emacs@gnu.org Subject: 24.3; [PATCH] erc-server-ping-timer-alist now has at most one timer per buffer Date: Sat, 06 Dec 2014 14:49:13 -0800 Message-ID: <87egsc4cnq.fsf@secretsauce.net> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.0 (-----) --=-=-= Content-Type: text/plain This alist was meant to map buffers to timers, but the "push" function was not checking for already-existing timers. This was causing a flood of PINGs being queued (because more than one timer was inserting those), and the flood-control logic would block those from going through quickly. This patch checks for existing timers in the alist before adding new ones. If a timer already exists, it is cancelled and overwritten. --=-=-= Content-Type: text/x-diff Content-Disposition: inline; filename=0001-erc-server-ping-timer-alist-now-has-at-most-one-time.patch >From 421c00345c3407fff7044092c458316c6da870a6 Mon Sep 17 00:00:00 2001 From: Dima Kogan Date: Sat, 6 Dec 2014 14:46:51 -0800 Subject: [PATCH] erc-server-ping-timer-alist now has at most one timer per buffer This alist was meant to map buffers to timers, but the "push" function was not checking for already-existing timers. This was causing a flood of PINGs being queued (because more than one timer was inserting those), and the flood-control logic would block those from going through quickly. This patch checks for existing timers in the alist before adding new ones. If a timer already exists, it is cancelled and overwritten. --- lisp/erc/erc-backend.el | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/lisp/erc/erc-backend.el b/lisp/erc/erc-backend.el index fb22f58..bedb20f 100644 --- a/lisp/erc/erc-backend.el +++ b/lisp/erc/erc-backend.el @@ -493,9 +493,19 @@ The current buffer is given by BUFFER." 4 erc-server-send-ping-interval #'erc-server-send-ping buffer)) - (setq erc-server-ping-timer-alist (cons (cons buffer - erc-server-ping-handler) - erc-server-ping-timer-alist))))) + + ;; I check the timer alist for an existing timer. If one exists, + ;; I get rid of it + (let ((timer-tuple (assq buffer erc-server-ping-timer-alist))) + (if timer-tuple + ;; this buffer already has a timer. Cancel it and set the new one + (progn + (erc-cancel-timer (cdr timer-tuple)) + (setf (cdr (assq buffer erc-server-ping-timer-alist)) erc-server-ping-handler)) + + ;; no existing timer for this buffer. Add new one + (add-to-list 'erc-server-ping-timer-alist + (cons buffer erc-server-ping-handler))))))) (defun erc-server-process-alive (&optional buffer) "Return non-nil when BUFFER has an `erc-server-process' open or running." -- 2.0.0 --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Sun Feb 15 15:04:29 2015 Received: (at 19292) by debbugs.gnu.org; 15 Feb 2015 20:04:29 +0000 Received: from localhost ([127.0.0.1]:44924 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YN5Qa-0000Bm-8k for submit@debbugs.gnu.org; Sun, 15 Feb 2015 15:04:28 -0500 Received: from out4-smtp.messagingengine.com ([66.111.4.28]:37204) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YN5QX-0000Bc-1a for 19292@debbugs.gnu.org; Sun, 15 Feb 2015 15:04:26 -0500 Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailout.nyi.internal (Postfix) with ESMTP id 85D522021F for <19292@debbugs.gnu.org>; Sun, 15 Feb 2015 15:04:22 -0500 (EST) Received: from frontend1 ([10.202.2.160]) by compute3.internal (MEProxy); Sun, 15 Feb 2015 15:04:22 -0500 DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=secretsauce.net; h=x-sasl-enc:references:from:to:subject:date:in-reply-to :message-id:mime-version:content-type; s=mesmtp; bh=zTR2NoNC6imo U377Dj4tOqwL3DY=; b=V/aaQf9mkZ7bIOplv2K+TpRsF+JG9lxAWjNud8H6j3GC g7W3h4z3Vnu+edUDLZtWkY384b8vFTRx4HxEWcPo/nBjSGcuH1x6y4Qows2aKPx7 nak7yeKJ1N0fGLEGnkG+YEWOt8zpmNxpiSzfiRbPLHVPBLGQ6iNGtQw9gOeZ000= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d= messagingengine.com; h=x-sasl-enc:references:from:to:subject :date:in-reply-to:message-id:mime-version:content-type; s= smtpout; bh=zTR2NoNC6imoU377Dj4tOqwL3DY=; b=DhlolGeioGa5coI2rBdq kmV4YOBdf80iZ+87SOUqUQAd1RlsXP8ol+7zRyyqhbk5Ky2S1am4oVn7UMi7uc9G BILL9c96eb3rHGwg7O9JA2nDYSofXoa0EDPmERGNWO7+lQ/60bOPS8F6MuSK+mQO 0IBZ4gwr3AvKi5FZb82MPqc= X-Sasl-enc: 8u7Wp0AkNRcC7uk2/9JdlM4JF+76SMwDpTqBfQwnq5Sj 1424030662 Received: from shorty.local (unknown [76.91.145.213]) by mail.messagingengine.com (Postfix) with ESMTPA id 90310C00295 for <19292@debbugs.gnu.org>; Sun, 15 Feb 2015 15:04:22 -0500 (EST) Received: from ip6-localhost ([::1] helo=shorty) by shorty.local with esmtp (Exim 4.84) (envelope-from ) id 1YN5QU-0006rC-1Q for 19292@debbugs.gnu.org; Sun, 15 Feb 2015 12:04:22 -0800 References: <87egsc4cnq.fsf@secretsauce.net> From: Dima Kogan To: 19292@debbugs.gnu.org Subject: Re: 24.3; [PATCH] erc-server-ping-timer-alist now has at most one timer per buffer Date: Sun, 15 Feb 2015 12:03:01 -0800 In-reply-to: Message-ID: <87egpr3pru.fsf@secretsauce.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 19292 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) Hi. This is a gentle ping. The attached patch made ERC usable for me, and it would be great if it was merged. The added code is simply a safety check. Thanks From debbugs-submit-bounces@debbugs.gnu.org Sun Dec 27 15:20:15 2015 Received: (at 19292) by debbugs.gnu.org; 27 Dec 2015 20:20:15 +0000 Received: from localhost ([127.0.0.1]:44862 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1aDHnb-0005yw-CM for submit@debbugs.gnu.org; Sun, 27 Dec 2015 15:20:15 -0500 Received: from hermes.netfonds.no ([80.91.224.195]:54805) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1aDHnZ-0005yo-Nb for 19292@debbugs.gnu.org; Sun, 27 Dec 2015 15:20:14 -0500 Received: from 2.150.58.24.tmi.telenormobil.no ([2.150.58.24] helo=mouse) by hermes.netfonds.no with esmtpsa (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.72) (envelope-from ) id 1aDHnC-0003Je-23; Sun, 27 Dec 2015 21:19:50 +0100 From: Lars Ingebrigtsen To: Dima Kogan Subject: Re: bug#19292: 24.3; [PATCH] erc-server-ping-timer-alist now has at most one timer per buffer References: <87egsc4cnq.fsf@secretsauce.net> Date: Sun, 27 Dec 2015 21:19:49 +0100 In-Reply-To: <87egsc4cnq.fsf@secretsauce.net> (Dima Kogan's message of "Sat, 06 Dec 2014 14:49:13 -0800") Message-ID: <87vb7jbq56.fsf@gnus.org> User-Agent: Gnus/5.130014 (Ma Gnus v0.14) Emacs/25.1.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-MailScanner-ID: 1aDHnC-0003Je-23 X-Netfonds-MailScanner: Found to be clean X-Netfonds-MailScanner-From: larsi@gnus.org MailScanner-NULL-Check: 1451852390.4002@+CTKFlxyyuC4jr4IxpG6qQ X-Spam-Status: No X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 19292 Cc: 19292@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) Dima Kogan writes: > This alist was meant to map buffers to timers, but the "push" function > was not checking for already-existing timers. This was causing a > flood of PINGs being queued (because more than one timer was inserting > those), and the flood-control logic would block those from going > through quickly. > > This patch checks for existing timers in the alist before adding new > ones. If a timer already exists, it is cancelled and overwritten. Thanks; applied to Emacs 25.1. -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no From debbugs-submit-bounces@debbugs.gnu.org Sun Dec 27 15:20:17 2015 Received: (at control) by debbugs.gnu.org; 27 Dec 2015 20:20:17 +0000 Received: from localhost ([127.0.0.1]:44865 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1aDHnd-0005zB-JK for submit@debbugs.gnu.org; Sun, 27 Dec 2015 15:20:17 -0500 Received: from hermes.netfonds.no ([80.91.224.195]:54811) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1aDHnb-0005yx-U3 for control@debbugs.gnu.org; Sun, 27 Dec 2015 15:20:16 -0500 Received: from 2.150.58.24.tmi.telenormobil.no ([2.150.58.24] helo=mouse) by hermes.netfonds.no with esmtpsa (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.72) (envelope-from ) id 1aDHnF-0003Js-NB for control@debbugs.gnu.org; Sun, 27 Dec 2015 21:19:53 +0100 Date: Sun, 27 Dec 2015 21:19:52 +0100 Message-Id: <87twn3bq53.fsf@gnus.org> To: control@debbugs.gnu.org From: Lars Ingebrigtsen Subject: control message for bug #19292 X-MailScanner-ID: 1aDHnF-0003Js-NB X-Netfonds-MailScanner: Found to be clean X-Netfonds-MailScanner-From: larsi@gnus.org MailScanner-NULL-Check: 1451852393.97287@9f3zkfk7xOrRGd0MLA9lSg X-Spam-Status: No X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) tags 19292 fixed close 19292 25.1 From unknown Sun Jun 22 07:42:36 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Mon, 25 Jan 2016 12:24:04 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator