aboutsummaryrefslogtreecommitdiffstats
path: root/lib/stdlib/test/ets_SUITE.erl
diff options
context:
space:
mode:
authorSverker Eriksson <[email protected]>2018-10-25 13:35:12 +0200
committerSverker Eriksson <[email protected]>2018-10-26 11:57:54 +0200
commit13214aae3697d27d27d5c628997fd4a92b497f89 (patch)
tree539966cbda52ad0f8dc9b14be769bb80679843a4 /lib/stdlib/test/ets_SUITE.erl
parentc6af9cd30c151baaa0afb929ce6a0292607db86c (diff)
downloadotp-13214aae3697d27d27d5c628997fd4a92b497f89.tar.gz
otp-13214aae3697d27d27d5c628997fd4a92b497f89.tar.bz2
otp-13214aae3697d27d27d5c628997fd4a92b497f89.zip
erts: Join empty base nodes in catree
The original implementation did not do this due to fear of bad performance. But we think the negative effect of "leaking" empty base nodes is more important to fix. To get the bad performance a special kind of access patterns is needed where base nodes are frequently emptied and then repopulated soon again. ets_SUITE:throughput_benchmark for example did not show any negative effect from this commit at all.
Diffstat (limited to 'lib/stdlib/test/ets_SUITE.erl')
-rw-r--r--lib/stdlib/test/ets_SUITE.erl9
1 files changed, 5 insertions, 4 deletions
diff --git a/lib/stdlib/test/ets_SUITE.erl b/lib/stdlib/test/ets_SUITE.erl
index 367c7533b4..74a4f47fa9 100644
--- a/lib/stdlib/test/ets_SUITE.erl
+++ b/lib/stdlib/test/ets_SUITE.erl
@@ -7393,13 +7393,14 @@ stimulate_contention(Tid) ->
RState = unique_rand_start(KeyRange, Seed),
stim_inserter_loop(T, RState, Num),
Num = ets:info(T, size),
- erts_debug:set_internal_state(ets_force_split, {T, false}),
ets:match_delete(T, {'$1','$1','$1'}),
+ 0 = ets:info(T, size),
+ erts_debug:set_internal_state(ets_force_split, {T, false}),
case ets:info(T,stats) of
{0, _, _} ->
- io:format("Houston, we got a testability problem.\n"
- "Someone seems to have implemented join-on-delete\n", []),
- ct:fail("Join on delete?");
+ io:format("No routing nodes in table?\n"
+ "Debug feature 'ets_force_split' does not seem to work.\n", []),
+ ct:fail("No ets_force_split?");
Stats ->
io:format("stimulated ordered_set: ~p\n", [Stats])
end.