aboutsummaryrefslogtreecommitdiffstats
path: root/lib/mnesia
AgeCommit message (Collapse)Author
2011-09-21Merge branch 'dev' into majorDan Gudmundsson
2011-09-21Merge branch 'dgud/mnesia/leaking-log/OTP-9551' into devDan Gudmundsson
* dgud/mnesia/leaking-log/OTP-9551: [mnesia] Use api to log decisions.
2011-09-19[mnesia] Use dedicated api for clearing tablesDan Gudmundsson
Mainly to correctly clear dets tables. It may also be faster to use the dedicated functions.
2011-09-19[mnesia] Use api to log decisions.Dan Gudmundsson
Instead of just appending decisions to the log, use mnesia_log:log(Decision), it will increment the counter which causes the log to be dumped even if no actual commits are stored on this node. This fixed a bug where the LATEST.log would grow forever on a node which had the schema on disc, but where not involved in any commits.
2011-09-19Merge branch 'dev' into majorDan Gudmundsson
2011-09-15[mnesia] Fix schema conversion to previous versionsDan Gudmundsson
2011-09-15[mnesia] Whitespace fixesDan Gudmundsson
2011-09-15[mnesia] Update protocol versionDan Gudmundsson
And remove old protocol version hacks
2011-09-15[mnesia] Mnesia schema merge tested with 2 nodes, r13b04 -> r14b (dev)Ulf Wiger
The do_merge_schema function now converts cstructs from a remote node when it detects that they are different. In order to be compatible the other way around, mnesia_controller:get_cstructs() detects a remote caller, and converts the cstructs before sending them.
2011-09-15[mnesia] Fixed bug in aborted schema transactionsDan Gudmundsson
2011-09-15[mnesia] Add hrl dependencyDan Gudmundsson
2011-08-16emulator: Add a fourth element in exception stacktracesBjörn Gustavsson
This commit is a preparation for introducing location information (filename/line number) in stacktraces in exceptions. Currently a stack trace looks like: [{Mod1,Function1,Arity1}, . . . {ModN,FunctionN,ArityN}] Add a forth element to each tuple that can be used indication the filename and line number of the source file: [{Mod1,Function1,Arity1,Location1}, . . . {ModN,FunctionN,ArityN,LocationN}] In this commit, the fourth element will just be an empty list, and we will change all code that look at or manipulate stacktraces.
2011-05-24Prepare releaseOTP_R14B03Erlang/OTP
2011-05-20Update copyright yearsBjörn-Egil Dahlberg
2011-05-19Merge branch 'dgud/mnesia/prepare-release' into devDan Gudmundsson
* dgud/mnesia/prepare-release: Prepare mnesia release Remove deadcode
2011-05-18Convert majority tests to common test frameworkDan Gudmundsson
2011-05-17Prepare mnesia releaseDan Gudmundsson
2011-05-17Remove deadcodeDan Gudmundsson
2011-05-17Merge branch 'uw/mnesia-majority' into devHenrik Nord
* uw/mnesia-majority: dialyzer warning on mnesia_tm Add documentation text about majority checking add mnesia_majority_test suite where_to_wlock optimization + change_table_majority/2 bug in mnesia_tm:needs_majority/2 optimize sticky_lock maj. check check majority for sticky locks Write locks now check majority when needed. Add {majority, boolean()} per-table option. OTP-9304
2011-05-16dialyzer warning on mnesia_tmUlf Wiger
2011-05-16Add documentation text about majority checkingUlf Wiger
2011-05-16add mnesia_majority_test suiteUlf Wiger
2011-05-16where_to_wlock optimization + change_table_majority/2Ulf Wiger
2011-05-16bug in mnesia_tm:needs_majority/2Ulf Wiger
2011-05-16optimize sticky_lock maj. checkUlf Wiger
2011-05-16check majority for sticky locksUlf Wiger
2011-05-16Write locks now check majority when needed.Ulf Wiger
Since the table loader also sets (table) write locks, a special lock type, 'load', was needed. Unfortunately, this affects mnesia activity callbacks that redefine the lock operation.
2011-05-16Add {majority, boolean()} per-table option.Ulf Wiger
With {majority, true} set for a table, write transactions will abort if they cannot commit to a majority of the nodes that have a copy of the table. Currently, the implementation hooks into the prepare_commit, and forces an asymmetric transaction if the commit set affects any table with the majority flag set. In the commit itself, the transaction will abort if it cannot satisfy the majority requirement for all tables involved in the thransaction. A future optimization might be to abort already when a write lock is attempted on such a table (/-object) and the lock cannot be set on enough nodes. This functionality introduces the possibility to automatically "fence off" a table in the presence of failures. This is a first implementation. Only basic tests have been performed.
2011-05-16OTP-9094: [httpc] Add support for upload body streaming (PUT and POST).Micael Karlberg
Filipe David Manana OTP-9114: [ftp] Added (type) spec for all exported functions. OTP-9123: mod_esi:deliver/2 made to accept binary data. Bernard Duggan OTP-9124: [httpd] Prevent XSS in error pages. Michael Santos OTP-9131: [httpd] Wrong security property names used in documentation. Garrett Smith OTP-9157: [httpd] Improved error messages. Ricardo Catalinas Jim�nez OTP-9158: [httpd] Fix timeout message generated by mod_esi. Bernard Duggan OTP-9202: [httpd] Extended support for file descriptors. Attila Rajmund Nohl OTP-9230: The default ssl kind has now been changed to essl. OTP-9246: [httpc] httpc manager crash because of a handler retry race condition. Merge branch 'bmk/inets/inet56_integration' into dev
2011-05-12Merge branch 'dgud/mnesia/add_index_crash/OTP-9285' into devDan Gudmundsson
* dgud/mnesia/add_index_crash/OTP-9285: Fix mnesia crash when adding index on non loaded tables.
2011-05-12Merge branch 'dgud/mnesia/startup-timing' into devDan Gudmundsson
* dgud/mnesia/startup-timing: Use recover_nodes when deciding alive nodes
2011-05-12Use recover_nodes when deciding alive nodesDan Gudmundsson
Fixes timing issue in test cases
2011-05-12Verify that remote data is commited before dirty ops beginDan Gudmundsson
2011-05-12Fix mnesia own small test framework so it works with the re-written tests.Dan Gudmundsson
2011-05-11Fix mnesia crash when adding index on non loaded tables.Dan Gudmundsson
This could happen on ram_copies tables.
2011-04-12Merge branch 'dev' into bmk/inets/inet56_integrationMicael Karlberg
2011-04-07Merge branch 'maint-r14' into devNiclas Eklund
2011-04-06Merge branch 'dev' into bmk/inets/inet56_integrationMicael Karlberg
2011-04-04Update release notesErlang/OTP
2011-04-04Prepare releaseDan Gudmundsson
2011-04-04Mnesia sometimes failed to tell all nodes that it had started.Dan Gudmundsson
2011-03-30Merge branch 'hw/call-chmod-without-f' into devHenrik Nord
* hw/call-chmod-without-f: Call chmod without the "-f" flag Conflicts: erts/emulator/test/Makefile lib/asn1/test/Makefile lib/crypto/test/Makefile lib/debugger/test/Makefile lib/docbuilder/test/Makefile lib/edoc/test/Makefile lib/erl_interface/test/Makefile lib/inviso/test/Makefile lib/parsetools/test/Makefile lib/percept/test/Makefile lib/ssl/test/Makefile lib/syntax_tools/test/Makefile lib/test_server/test/Makefile lib/tools/test/Makefile OTP-9170
2011-03-17Merge branch 'dev' into ↵Micael Karlberg
bmk/inets/ftp/missing_spec_causes_dialyxer_problems/OTP-9114 Also fixed a bunch of "end-years" (was 2010 but should have been 2011, which the commit hook not happy with).
2011-03-14Prepare releaseOTP_R14B02Erlang/OTP
2011-03-11Update copyright yearsBjörn-Egil Dahlberg
2011-03-09Prepare releaseDan Gudmundsson
2011-03-09Applied from mnesia_frag:first patch from Magnus HenochDan Gudmundsson
"When I run mnesia:first on an empty fragmented table, it tries to access the fragment with the number one beyond the maximum. In the sample code below, I create a table with two fragments, 'foo' and 'foo_frag2', but mnesia tries to access 'foo_frag3':"
2011-03-09The number of test nodes where to small for the testsuiteDan Gudmundsson
A miss introduced when converting to common_test
2011-03-09Abort/restart if network has changed, can be a partioned networkDan Gudmundsson
2011-03-07Merge branch 'dgud/dialyzer-fixes' into devDan Gudmundsson
OTP-9107