From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:bcc0::]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id UCeKF0XLimC+JAEAgWs5BA (envelope-from ) for ; Thu, 29 Apr 2021 17:05:41 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id ALIXE0XLimCLAgAAB5/wlQ (envelope-from ) for ; Thu, 29 Apr 2021 15:05:41 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id C512B236F9 for ; Thu, 29 Apr 2021 17:05:40 +0200 (CEST) Received: from localhost ([::1]:57494 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lc8EV-00087I-7I for larch@yhetil.org; Thu, 29 Apr 2021 11:05:39 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:55980) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lc8Dv-00086z-7w for emacs-orgmode@gnu.org; Thu, 29 Apr 2021 11:05:03 -0400 Received: from ciao.gmane.io ([116.202.254.214]:52784) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lc8Dt-0001n6-Qn for emacs-orgmode@gnu.org; Thu, 29 Apr 2021 11:05:02 -0400 Received: from list by ciao.gmane.io with local (Exim 4.92) (envelope-from ) id 1lc8Ds-0004HF-4J for emacs-orgmode@gnu.org; Thu, 29 Apr 2021 17:05:00 +0200 X-Injected-Via-Gmane: http://gmane.org/ To: emacs-orgmode@gnu.org From: Maxim Nikulin Subject: Re: [PATCH] Bug: fragile org refile cache Date: Thu, 29 Apr 2021 22:04:54 +0700 Message-ID: References: <87v98598un.fsf@localhost> <87k0olxjpz.fsf@localhost> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.7.1 In-Reply-To: <87k0olxjpz.fsf@localhost> Content-Language: en-US Received-SPF: pass client-ip=116.202.254.214; envelope-from=geo-emacs-orgmode@m.gmane-mx.org; helo=ciao.gmane.io X-Spam_score_int: 28 X-Spam_score: 2.8 X-Spam_bar: ++ X-Spam_report: (2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_ADSP_CUSTOM_MED=0.001, FORGED_GMAIL_RCVD=1, FORGED_MUA_MOZILLA=2.309, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.25, NICE_REPLY_A=-0.001, NML_ADSP_CUSTOM_MED=0.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: "Emacs-orgmode" X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1619708740; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=Gep5TPqcFuwri+GzxKPMZJ7NIRHBAamhYoms0B9MCZA=; b=gvTzySOC3beXUrP1AYD3bP9FsER41tYDaJu0fzlGa5hrvXzv7KgYJRupcnXY6MkB4g5mAi Q0qVzw75w3kjTgmhXSTWYjTOcyBuoAT/O1Vey+QJR+BJ6bT7/q2WXZCZUDlDQreXTFALpm uc+t10zxJKG898mMtg2sMBGYpatcCE/L+JNsfpGHSjwUQkGzT1YofjWOyCKvmi9tq4TMCU U74YEK9KctKGZS8TX3OR5ogJ1i5ncrYhCBANo8q6jvuSvcpXTRf5n4fEwrNsLoOifrD9tn I+yqtDX0ulsAsNQuv1WU8fOAoZ7OkJ53T7orMu0f1nkxHduIExEcybC3nabC6w== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1619708740; a=rsa-sha256; cv=none; b=uI9Pcv0gddlp3cfd3gyY/39ngdU69B0zWue3W/qGep89Qrt7MqiQR0rk0MXJoTr3X3O0kW M7B82hzahn4N51yCqq2HY9Ad5/xRhTH15ojn9l71I5DtvpTILKs/7hBz0i1g3J5vzUkGkB LWg7Go6QqxO5hBux7mU503LXItKoreI4XYksFkM1IJRVzPd0XmpOCRw/3noRAFojUgumcu 2/jASo0f1LFW+U+iGAbc0QlOn35ITjKjJGPwocE5tdkpJS6yCZEO5FEZKj/Z8NgsZU1mWR +3A7x+u0pYRuRXekbZDhRe06CKiqGTGNhRx6tjNNRGvKsV8rwIa4YxY3kzhx+A== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=none; dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Migadu-Spam-Score: -1.86 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Migadu-Queue-Id: C512B236F9 X-Spam-Score: -1.86 X-Migadu-Scanner: scn0.migadu.com X-TUID: bpJx2+h4CCQN On 29/04/2021 21:12, Ihor Radchenko wrote: > There is org-outline-path-cache used by org-get-outline-cache. It avoids > computing parent's outline path multiple times, which is already a great > improvement. Curiously my experience is that avoiding this lazy cache with backtracking and maintaining custom structure during sequential scan of the buffer works several times faster. However it is appropriate time to populate the cache you mentioned. Unfortunately it is still necessary to cleanup heading text, and it consumes significant time. > org-refile-cache can be simply let-bound to nil (in my case) or > alternative cache variable, if the alternative cache should persist. Thank you for the idea. But I still hope that both function could use the same cache.