aboutsummaryrefslogtreecommitdiffstats
path: root/lib/mnesia/test/mnesia_trans_access_test.erl
diff options
context:
space:
mode:
authorDan Gudmundsson <[email protected]>2016-10-07 09:58:03 +0200
committerDan Gudmundsson <[email protected]>2016-10-07 09:58:03 +0200
commit2110e59e971af2f114eba36b04f36dc6b25a443d (patch)
tree06019f9ca3ccc63f8caea271af8a5204e9db8416 /lib/mnesia/test/mnesia_trans_access_test.erl
parent217bec24c9d369c1bfc14584270ffc90efe5f40c (diff)
parent1b4969db6ca0062f629f58c8d3838bcca1ab326b (diff)
downloadotp-2110e59e971af2f114eba36b04f36dc6b25a443d.tar.gz
otp-2110e59e971af2f114eba36b04f36dc6b25a443d.tar.bz2
otp-2110e59e971af2f114eba36b04f36dc6b25a443d.zip
Merge branch 'dgud/mnesia/dirty_select_cont/PR-1184/OTP-13944' into maint
* dgud/mnesia/dirty_select_cont/PR-1184/OTP-13944: Allow reusing mnesia select continuations
Diffstat (limited to 'lib/mnesia/test/mnesia_trans_access_test.erl')
-rw-r--r--lib/mnesia/test/mnesia_trans_access_test.erl10
1 files changed, 8 insertions, 2 deletions
diff --git a/lib/mnesia/test/mnesia_trans_access_test.erl b/lib/mnesia/test/mnesia_trans_access_test.erl
index aa50ee4cb1..4ed73ea859 100644
--- a/lib/mnesia/test/mnesia_trans_access_test.erl
+++ b/lib/mnesia/test/mnesia_trans_access_test.erl
@@ -307,6 +307,7 @@ select14(Config) when is_list(Config) ->
%% Some Helpers
Trans = fun(Fun) -> mnesia:transaction(Fun) end,
+ Dirty = fun(Fun) -> mnesia:async_dirty(Fun) end,
LoopHelp = fun('$end_of_table',_) -> [];
({Recs,Cont},Fun) ->
Sel = mnesia:select(Cont),
@@ -334,8 +335,13 @@ select14(Config) when is_list(Config) ->
?match({atomic, [OneRec]}, Trans(fun() -> Loop(Tab, OnePat) end)),
?match({atomic, All}, Trans(fun() -> Loop(Tab, AllPat) end)),
- {atomic,{_, Cont}} = Trans(fun() -> mnesia:select(Tab, OnePat, 1, read) end),
- ?match({aborted, wrong_transaction}, Trans(fun() -> mnesia:select(Cont) end)),
+ {atomic,{_, ContOne}} = Trans(fun() -> mnesia:select(Tab, OnePat, 1, read) end),
+ ?match({aborted, wrong_transaction}, Trans(fun() -> mnesia:select(ContOne) end)),
+ ?match('$end_of_table', Dirty(fun() -> mnesia:select(ContOne) end)),
+
+ {atomic,{_, ContAll}} = Trans(fun() -> mnesia:select(Tab, AllPat, 1, read) end),
+ ?match({aborted, wrong_transaction}, Trans(fun() -> mnesia:select(ContAll) end)),
+ ?match({[_], _}, Dirty(fun() -> mnesia:select(ContAll) end)),
?match({aborted, _}, Trans(fun() -> mnesia:select(Tab, {match, '$1', 2},1,read) end)),
?match({aborted, _}, Trans(fun() -> mnesia:select(Tab, [{'_', [], '$1'}],1,read) end)),