diff options
author | Hans Bolinder <[email protected]> | 2014-07-01 09:20:09 +0200 |
---|---|---|
committer | Hans Bolinder <[email protected]> | 2014-07-01 09:20:09 +0200 |
commit | d2ade9b27432a1f7342e231d0d8b12467c3d3d77 (patch) | |
tree | d4f8aa18ee7ee3236b0e6e43b309307dd80577a5 | |
parent | a884f78ee7609b3140f5a9fb524599be4ea816d7 (diff) | |
parent | 4e19c161a1aaae5462d9de34c2e10b0109f5f853 (diff) | |
download | otp-d2ade9b27432a1f7342e231d0d8b12467c3d3d77.tar.gz otp-d2ade9b27432a1f7342e231d0d8b12467c3d3d77.tar.bz2 otp-d2ade9b27432a1f7342e231d0d8b12467c3d3d77.zip |
Merge branch 'hb/stdlib/dets_insert_new/OTP-12024' into maint
* hb/stdlib/dets_insert_new/OTP-12024:
stdlib: Correct documentation of dets:insert/2
-rw-r--r-- | lib/stdlib/src/dets.erl | 5 | ||||
-rw-r--r-- | lib/stdlib/test/dets_SUITE.erl | 6 |
2 files changed, 9 insertions, 2 deletions
diff --git a/lib/stdlib/src/dets.erl b/lib/stdlib/src/dets.erl index c32da1624f..76e03bbfaa 100644 --- a/lib/stdlib/src/dets.erl +++ b/lib/stdlib/src/dets.erl @@ -440,9 +440,10 @@ insert(Tab, Objs) when is_list(Objs) -> insert(Tab, Obj) -> badarg(treq(Tab, {insert, [Obj]}), [Tab, Obj]). --spec insert_new(Name, Objects) -> boolean() when +-spec insert_new(Name, Objects) -> boolean() | {'error', Reason} when Name :: tab_name(), - Objects :: object() | [object()]. + Objects :: object() | [object()], + Reason :: term(). insert_new(Tab, Objs) when is_list(Objs) -> badarg(treq(Tab, {insert_new, Objs}), [Tab, Objs]); diff --git a/lib/stdlib/test/dets_SUITE.erl b/lib/stdlib/test/dets_SUITE.erl index 6be37cbecf..119b4dc7cb 100644 --- a/lib/stdlib/test/dets_SUITE.erl +++ b/lib/stdlib/test/dets_SUITE.erl @@ -2032,6 +2032,12 @@ match(Config, Version) -> CrashPos = if Version =:= 8 -> 5; Version =:= 9 -> 1 end, crash(Fname, ObjPos2+CrashPos), {ok, _} = dets:open_file(T, Args), + case dets:insert_new(T, Obj) of % OTP-12024 + ok -> + bad_object(dets:sync(T), Fname); + Else3 -> + bad_object(Else3, Fname) + end, io:format("Expect corrupt table:~n"), case ins(T, N) of ok -> |