File 1061-stdlib-Clarify-ets-traversal-doc.patch of Package erlang
From f19eaebd761902a2b162f5fda8cafa9364efccd3 Mon Sep 17 00:00:00 2001
From: Sverker Eriksson <sverker@erlang.org>
Date: Wed, 11 Nov 2020 12:32:53 +0100
Subject: [PATCH] stdlib: Clarify ets traversal doc
---
lib/stdlib/doc/src/ets.xml | 18 ++++++++++++++----
1 file changed, 14 insertions(+), 4 deletions(-)
diff --git a/lib/stdlib/doc/src/ets.xml b/lib/stdlib/doc/src/ets.xml
index 5f10818273..690e3558be 100644
--- a/lib/stdlib/doc/src/ets.xml
+++ b/lib/stdlib/doc/src/ets.xml
@@ -167,10 +167,20 @@
<seealso marker="#tab2list/1"><c>tab2list/1</c></seealso>.</p>
</item>
</list>
- <p>None of these ways of table traversal will guarantee a consistent table snapshot
- if the table is also updated during the traversal. Moreover, traversals not
- done in a <em>safe</em> way, on tables where keys are inserted or deleted
- during the traversal, may yield the following undesired effects:</p>
+ <p>
+ No table traversal will guarantee a consistent snapshot of the entire
+ table if the table is also updated by concurrent processes during the
+ traversal. The result of each concurrently updated object may be seen (or
+ not) depending on if it has happened when the traversal visits that part
+ of the table. The only way to guarantee a full consistent table snapshot
+ (if you really need that) is to disallow concurrent updates during the
+ entire traversal.
+ </p>
+ <p>
+ Moreover, traversals not done in a <em>safe</em> way, on tables where
+ keys are inserted or deleted during the traversal, may yield the
+ following undesired effects:
+ </p>
<list type="bulleted">
<item><p>Any key may be missed.</p></item>
<item><p>Any key may be found more than once.</p></item>
--
2.26.2