diff options
author | Sverker Eriksson <[email protected]> | 2010-07-20 13:52:15 +0200 |
---|---|---|
committer | Sverker Eriksson <[email protected]> | 2010-07-20 13:52:15 +0200 |
commit | 9f44863204c56dcfa38c67db9662f7f1b7e6c582 (patch) | |
tree | bb1ba0f6b2a174bb0b7825ff6e32ae2abb5061e9 /lib | |
parent | c4b4edaaf03ac12e12080cb4a3768edbb6ecf77d (diff) | |
parent | ac90c289ab5ce18395c5fa53c30b38bc5f50ae1d (diff) | |
download | otp-9f44863204c56dcfa38c67db9662f7f1b7e6c582.tar.gz otp-9f44863204c56dcfa38c67db9662f7f1b7e6c582.tar.bz2 otp-9f44863204c56dcfa38c67db9662f7f1b7e6c582.zip |
Merge branch 'sverker/ets_select_hang/OTP-8732' into dev
* sverker/ets_select_hang/OTP-8732:
Fix ets:select hanging on ordered_set with empty list as key.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/stdlib/test/ets_SUITE.erl | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/lib/stdlib/test/ets_SUITE.erl b/lib/stdlib/test/ets_SUITE.erl index 13c87ca005..fe8e481121 100644 --- a/lib/stdlib/test/ets_SUITE.erl +++ b/lib/stdlib/test/ets_SUITE.erl @@ -63,7 +63,8 @@ meta_lookup_unnamed_read/1, meta_lookup_unnamed_write/1, meta_lookup_named_read/1, meta_lookup_named_write/1, meta_newdel_unnamed/1, meta_newdel_named/1]). --export([smp_insert/1, smp_fixed_delete/1, smp_unfix_fix/1, smp_select_delete/1, otp_8166/1]). +-export([smp_insert/1, smp_fixed_delete/1, smp_unfix_fix/1, smp_select_delete/1, + otp_8166/1, otp_8732/1]). -export([exit_large_table_owner/1, exit_many_large_table_owner/1, exit_many_tables_owner/1, @@ -129,7 +130,7 @@ all(suite) -> t_select_delete, t_ets_dets, memory, t_bucket_disappears, select_fail,t_insert_new, t_repair_continuation, otp_5340, otp_6338, - otp_6842_select_1000, otp_7665, + otp_6842_select_1000, otp_7665, otp_8732, meta_wb, grow_shrink, grow_pseudo_deleted, shrink_pseudo_deleted, meta_smp, @@ -5010,8 +5011,14 @@ verify_table_load(T) -> end. - - +otp_8732(doc) -> ["ets:select on a tree with NIL key object"]; +otp_8732(Config) when is_list(Config) -> + Tab = ets:new(noname,[ordered_set]), + filltabstr(Tab,999), + ets:insert(Tab,{[],"nasty NIL object"}), + ?line [] = ets:match(Tab,{'_',nomatch}), %% Will hang if bug not fixed + ok. + smp_select_delete(suite) -> []; smp_select_delete(doc) -> |