[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/org d788fe9927 1/3: org-persist: Remove read cache intr
From: |
ELPA Syncer |
Subject: |
[elpa] externals/org d788fe9927 1/3: org-persist: Remove read cache introduced in f77800c68 |
Date: |
Tue, 28 Jun 2022 21:57:46 -0400 (EDT) |
branch: externals/org
commit d788fe99272d3563ff88e872bf337b8c198c7c7d
Author: Ihor Radchenko <yantar92@gmail.com>
Commit: Ihor Radchenko <yantar92@gmail.com>
org-persist: Remove read cache introduced in f77800c68
* lisp/org-persist.el (org-persist--read-cache): Remove variable.
(org-persist-read):
(org-persist-write): Do not use `org-persist--read-cache'. Using
`sx-hash-equal' as unique key indicating as-read data is not
reliable for deeply nested structures like `org-element--cache'. The
`sx-hash-equal' returns the same value regardless of the cache
contents. See Emacs Bug#56255.
---
lisp/org-persist.el | 8 +-------
1 file changed, 1 insertion(+), 7 deletions(-)
diff --git a/lisp/org-persist.el b/lisp/org-persist.el
index b16289da72..fd1c7eafd7 100644
--- a/lisp/org-persist.el
+++ b/lisp/org-persist.el
@@ -749,10 +749,6 @@ When ASSOCIATED is `all', unregister CONTAINER everywhere."
(remove container (plist-get collection :container)))
(org-persist--add-to-index collection))))))
-(defvar org-persist--read-cache (make-hash-table :test #'equal)
- "Hash table storing as-read data object hashes.
-
-This data is used to avoid overwriting unchanged data.")
(defvar org-persist--write-cache (make-hash-table :test #'equal)
"Hash table storing as-written data objects.
@@ -793,7 +789,6 @@ When LOAD? is non-nil, load the data instead of reading."
(plist-get collection :container))
(setq data (or (gethash persist-file org-persist--write-cache)
(org-persist--read-elisp-file persist-file)))
- (puthash persist-file (sxhash-equal data) org-persist--read-cache)
(when data
(cl-loop for container in (plist-get collection :container)
with result = nil
@@ -859,8 +854,7 @@ When IGNORE-RETURN is non-nil, just return t on success
without calling
(data (mapcar (lambda (c) (cons c (org-persist-write:generic c
collection)))
(plist-get collection :container))))
(puthash file data org-persist--write-cache)
- (unless (equal (sxhash-equal data) (gethash file
org-persist--read-cache))
- (org-persist--write-elisp-file file data))
+ (org-persist--write-elisp-file file data)
(or ignore-return (org-persist-read container associated))))))))
(defun org-persist-write-all (&optional associated)