aboutsummaryrefslogtreecommitdiffstats
path: root/lib/stdlib/src/ets.erl
AgeCommit message (Collapse)Author
2018-06-18Update copyright yearHenrik Nord
2018-05-08erts: Make atomic ets:delete_all_objects yieldSverker Eriksson
by using a cooperative strategy that will make any process accessing the table execute delelete_all_objects_continue until the table is empty. This is not an optimal solution as concurrent threads will still block on the table lock, but at least thread progress is made.
2018-02-22Add ets:whereis/1 for resolving table names -> tid()John Högberg
2018-02-06stdlib: Do not call erlang:get_stacktrace()Hans Bolinder
2018-01-29Merge branch 'maint'Sverker Eriksson
2018-01-23stdlib: Fix spec for match_spec_run/2Sverker Eriksson
Matching can be done on any terms.
2017-10-17Merge branch 'maint'Hans Bolinder
* maint: stdlib: Make ets:i/1 exit cleaner upon ^D (old Erlang shell)
2017-10-03stdlib: Make ets:i/1 exit cleaner upon ^D (old Erlang shell)Hans Bolinder
Instead of crashing, ^D now exits Erlang if started with -oldshell.
2017-09-15Merge branch 'siri/string-new-api'Siri Hansen
* siri/string-new-api: (28 commits) hipe (test): Do not use deprecated functions in string(3) dialyzer (test): Do not use deprecated functions in string(3) eunit (test): Do not use deprecated functions in string(3) system (test): Do not use deprecated functions in string(3) system (test): Do not use deprecated functions in string(3) mnesia (test): Do not use deprecated functions in string(3) Deprecate old string functions observer: Do not use deprecated functions in string(3) common_test: Do not use deprecated functions in string(3) eldap: Do not use deprecated functions in string(3) et: Do not use deprecated functions in string(3) os_mon: Do not use deprecated functions in string(3) debugger: Do not use deprecated functions in string(3) runtime_tools: Do not use deprecated functions in string(3) asn1: Do not use deprecated functions in string(3) compiler: Do not use deprecated functions in string(3) sasl: Do not use deprecated functions in string(3) reltool: Do not use deprecated functions in string(3) kernel: Do not use deprecated functions in string(3) hipe: Do not use deprecated functions in string(3) ... Conflicts: lib/eunit/src/eunit_lib.erl lib/observer/src/crashdump_viewer.erl lib/reltool/src/reltool_target.erl
2017-09-05stdlib: use 'unicode' option for regexp in etsSiri Hansen
2017-07-06stdlib: Do not use deprecated functions in string(3)Hans Bolinder
2017-05-04Update copyright yearRaimo Niskanen
2017-04-25Fix typespec of the opaque type tid() of the ETS moduleRickard Green
2017-03-22ETS: Allow for matchspec-based replacementGuilherme Andrade
2017-03-02Implement ets:all() using scheduler specific dataRickard Green
2017-02-06Use magic refs for compiled match specsRickard Green
2016-07-04Fix return value spec for ets:match_objectILYA Khlopotov
ets:match_object/1 and ets:match_object/3 return list of matches
2016-03-15update copyright-yearHenrik Nord
2016-01-20Introduce time warp safe replacement for safe_fixed optionRickard Green
The new time warp safe option is safe_fixed_monotonic_time which gives erlang:monotonic_time(). The safe_fixed option was also slightly changed. It now gives erlang:timestamp() instead of erlang:now(). This has however not been documented, so it is considered a compatible change. The above effects both ets, and dets. This commit also include the bugfix OTP-13239 for dets:info(Tab, safe_fixed). The timestamp in the result returned by dets:info(Tab, safe_fixed) was unintentionally broken as a result of the time API rewrites in OTP 18.0.
2015-06-18Change license text to APLv2Bruce Yinhe
2015-06-15stdlib: Make ets:file2tab preserve read/write_concurrencySverker Eriksson
2015-05-21Merge branch 'sverk/ets-tab2file-syn/OTP-12737'Sverker Eriksson
* sverk/ets-tab2file-syn/OTP-12737: stdlib: Add 'sync' option to ets:tab2file/3
2015-05-13stdlib: Add 'sync' option to ets:tab2file/3Sverker Eriksson
to improve the chance of some real disk persistence before tab2file returns.
2015-03-16Merge branch 'nox/ets-update_counter-4'Zandra Hird
* nox/ets-update_counter-4: Create new BIF ets:update_counter/4 Allow 4-ary BIFs OTP-12563
2015-03-12Create new BIF ets:update_counter/4Anthony Ramine
Conflicts: erts/emulator/beam/bif.tab lib/stdlib/src/ets.erl
2015-03-10Merge branch 'maint'Zandra Hird
2015-01-26Support binary standard input in ets:i/1José Valim
2014-12-19Merge branch 'lukas/erts/crashdump_improvements/OTP-12377'Lukas Larsson
* lukas/erts/crashdump_improvements/OTP-12377: erts: Make main thread safe from pipe closed event erts: Improve crash dumps erts: Rename sys_sigset to sys_signal erts: Introduce thread suspend functions erts: Remove usage of QUANTIFY signal erts: Add support for thread names ets: Increase data available in crash dumps and ets:info erts: Start compilation of beam_emu earlier
2014-12-19ets: Increase data available in crash dumps and ets:infoLukas Larsson
OTP-12376
2014-05-30Implement ets:take/2Anthony Ramine
This new ETS BIF returns and deletes objects from tables.
2014-02-23Deprecate pre-defined built-in typesHans Bolinder
The types array(), dict(), digraph(), gb_set(), gb_tree(), queue(), set(), and tid() have been deprecated. They will be removed in OTP 18.0. Instead the types array:array(), dict:dict(), digraph:graph(), gb_set:set(), gb_tree:tree(), queue:queue(), sets:set(), and ets:tid() can be used. (Note: it has always been necessary to use ets:tid().) It is allowed in OTP 17.0 to locally re-define the types array(), dict(), and so on. New types array:array/1, dict:dict/2, gb_sets:set/1, gb_trees:tree/2, queue:queue/1, and sets:set/1 have been added.
2013-12-12Support named funs in the shellAnthony Ramine
The current code for the evaluation of ordinary funs is dependent on the order on variables in the fun environment as returned by erlang:fun_info(Fun, env). To avoid the problem in the future, make sure that we only have one free variable in the funs that we will need to inspect using erlang:fun_info(Fun, env).
2013-05-06Fix a minor bug in ets:tabfile_info() and ets:file2tab()Hans Bolinder
Certain error conditions could leave an open file descriptor.
2013-05-06Fix unmatched_return warnings in stdlibSiri Hansen
2013-05-06Fix unmatched_returns warnings in STDLIB and KernelHans Bolinder
2013-01-25Update copyright yearsBjörn-Egil Dahlberg
2013-01-25Make adjustments for UnicodeHans Bolinder
2012-10-08Merge branch 'jn/ets-match-pattern-export-type'Henrik Nord
* jn/ets-match-pattern-export-type: Export ets:match_pattern/0 type Conflicts: lib/stdlib/src/ets.erl OTP-10472
2012-09-27Refine a few opaque typesHans Bolinder
2012-09-23Export ets:match_pattern/0 typeJoseph Wayne Norton
Similar to match specification, some of the ets functions uses a match pattern. Export the match pattern type to allow for inclusion in the types and function specifications of other modules.
2012-02-07Correct docs, comments and dialyzer testsPatrik Nyblom
Update preloaded erlang.beam Removed stray error in dialyzer test suite - different error message with the new specs.
2012-01-27Move types and specs from erl_bif_types.erl to modulesHans Bolinder
2011-05-12Types and specifications have been modified and addedHans Bolinder
2010-11-22ETS 'compressed' option.Sverker Eriksson
The compressed format is using a slighty modified variant of the extern format (term_to_binary). To not worsen key lookup's too much, the top tuple itself and the key element are not compressed. Table objects with only immediate non-key elements will therefor not gain anything (but actually consume one extra word for "alloc_size").
2010-06-07Remove tid() from the predefined builtin types.Kostis Sagonas
Change erl_lint not to recognize this type as builtin and add a new erl_lint.beam version in bootstrap. Add an -opaque type declaration for this type in ets.erl and also declare this as an exported type. Use this type in file debugger/src/dbg_iload.erl in a spec. While at it, also clean up this later file a bit.
2010-06-03stdlib: Add declarations for exported typesKostis Sagonas
2010-04-30Fix mispelled type name in spec for ets:to_dets/2Björn Gustavsson
2010-04-14Fix spec for ets:to_dets/2Kostis Sagonas
2010-04-14Merge branch 'ks/stdlib' into devErlang/OTP
* ks/stdlib: erl_parse.yrl: Add missing operator in type declaration stdlib: Add types and specs stdlib: Use fun object instead of {M,F} tuple ets: Cleanup as suggested by tidier OTP-8576 ks/stdlib
2010-04-13ets: Cleanup as suggested by tidierKostis Sagonas