@@ -1088,18 +1088,22 @@ t_delete_all_objects_trap(Config) when is_list(Config) ->
10881088 EtsMem = etsmem (),
10891089 repeat_for_opts_all_set_table_types (
10901090 fun (Opts ) ->
1091- delete_all_objects_trap (Opts , unfix ),
1092- delete_all_objects_trap (Opts , exit ),
1093- delete_all_objects_trap (Opts , rename )
1091+ delete_all_objects_trap (Config , Opts , unfix ),
1092+ delete_all_objects_trap (Config , Opts , exit ),
1093+ delete_all_objects_trap (Config , Opts , rename )
10941094 end ),
10951095 verify_etsmem (EtsMem ),
10961096 ok .
10971097
1098- delete_all_objects_trap (Opts , Mode ) ->
1098+ delete_all_objects_trap (Config , Opts , Mode ) ->
10991099 io :format (" Opts = ~p \n Mode = ~p \n " , [Opts , Mode ]),
11001100 Tester = self (),
11011101 KeyRange = 50_000 ,
11021102 TableName = delete_all_objects_trap ,
1103+ SkipTraps = case proplists :get_bool (ets_force_trap , Config ) of
1104+ true -> 1 ;
1105+ false -> 0
1106+ end ,
11031107 {Tref ,T } =
11041108 case Mode of
11051109 rename ->
@@ -1124,8 +1128,9 @@ delete_all_objects_trap(Opts, Mode) ->
11241128 fun (N ) ->
11251129 case receive_any () of
11261130 {trace , Tester , out , {ets ,internal_delete_all ,2 }} ->
1127- % % Wait for second reschedule as on DEBUG we get a forced trap
1128- {N =:= 1 , N + 1 };
1131+ % % On DEBUG ignore the first forced trap
1132+ io :format (" TRACE OUT N=~p \n " , [N ]),
1133+ {N =< SkipTraps , N + 1 };
11291134 " delete_all_objects done" ->
11301135 ct :fail (" No trap detected" );
11311136 _M ->
0 commit comments