aboutsummaryrefslogtreecommitdiffstats
path: root/lib/mnesia/src/mnesia_loader.erl
AgeCommit message (Collapse)Author
2016-10-17Avoid some error reports when stopping mnesiaDan Gudmundsson
Worker processes can cause error reports if the main mnesia processes dissapear.
2016-10-11mnesia: Fix double blocked tables which could cause a crashDan Gudmundsson
Fast restarts could cause table to be blocked twice.
2016-05-09Merge branch 'dgud/mnesia/ext-backend/PR-858/OTP-13058'Dan Gudmundsson
* dgud/mnesia/ext-backend/PR-858/OTP-13058: mnesia_ext: Add basic backend extension tests mnesia_ext: reuse snmp field for ext updates mnesia_ext: Create table/data containers from mnesia monitor not temporary processes mnesia_ext: Implement ext copies index mnesia_ext: Load table ext mnesia_ext: Dumper and schema changes mnesia_ext: Refactor mnesia_schema.erl mnesia_ext: Ext support in fragmented tables mnesia_ext: Backup handling mnesia_ext: Create schema functionality mnesia_ext: Add ext copies and db_fold to low level api mnesia_ext: Refactor record_validation code mnesia_ext: Add create_external and increase protocol version to monitor mnesia_ext: Add ext copies to records mnesia_ext: Add supervisor and behaviour modules
2016-05-09mnesia_ext: Create table/data containers from mnesia monitor not temporary ↵Dan Gudmundsson
processes Tables or data containers should be owned and monitored by mnesia_monitor and should thus be created by that process. Always create_table before loading it We need to create tables for ram_copies at least before loading them as they are intermittent. It is also needed to get mnesia monitor as the parent and supervisor of the data storage.
2016-05-09mnesia_ext: Load table extUlf Wiger
2016-03-15update copyright-yearHenrik Nord
2016-02-09mnesia: let loader check if tablelock is neededDan Gudmundsson
move_table_copy needs the lock that was set previously in del_table_copy. This doesn't work on old nodes, so bump protocol version and check it. Remove old protocol conversion code, which have been around since OTP-R15. Checking if lock is needed requires rpc communication via mnesia_gvar ets table to be backwards compatible.
2015-06-18Change license text to APLv2Bruce Yinhe
2015-06-16Revert "Add number of entries to mnesia copy debug message"Björn-Egil Dahlberg
This reverts commit baad9722c84ecb41d2278ac9912d30e42c3b4409.
2015-03-27Merge branch 'dgud/mnesia/try-catch'Dan Gudmundsson
* dgud/mnesia/try-catch: mnesia: Replace catch with try-catch
2015-03-27mnesia: Replace catch with try-catchDan Gudmundsson
Avoids building stacktraces where it is not needed and do not mask errors, i.e. only catch the relevant classes in each try.
2015-02-11Merge branch 'richcarl/dcd-dumps'Zandra Hird
* richcarl/dcd-dumps: Make Mnesia DCD dump behaviour available via API Make Mnesia DCD dump behaviour available via configuration OTP-12481
2014-12-22Make Mnesia DCD dump behaviour available via configurationUlf Wiger
Setting the new Mnesia parameter 'dump_disc_copies_at_startup' to 'false' will completely disable the DCD dumping while tables are being loaded. If it is set to 'true' (the default), the same test will now be performed as for normal dumps, i.e., using the 'dc_dump_limit' parameter. Previously, the test performed at load time was different from the one used at runtime, and caused a lot of unnecessary dumping which slowed down the startup.
2014-08-14Add number of entries to mnesia copy debug messageRick Reed
2013-04-11mnesia: Fixed bad data in tableDan Gudmundsson
If mnesia:cleartable/1 was called during a table_load an schema event with delete and write of that table is sent, which caused the table to contain the schema record instead of clearing the table.
2011-12-31Fixes value returned by mnesia_loader:do_get_disc_copy2/4Uwe Dauernheim
Returns the same value for `mnesia_loader:disc_load_table/2' as `mnesia_loader:net_load_table/4' if a table copy can not be found. This patch was stuck as a pull request in GitHub (authored by Uwe Dauernheim): https://github.com/erlang/otp/pull/16
2011-11-28[mnesia] Add possibility for implementation dependent storage options to ↵Dan Gudmundsson
create_table
2011-09-19Merge branch 'dev' into majorDan Gudmundsson
2011-09-15[mnesia] Whitespace fixesDan Gudmundsson
2011-09-15[mnesia] Update protocol versionDan Gudmundsson
And remove old protocol version hacks
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-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.
2010-02-03Merge branch 'is/mnesia-send-compressed' into ccase/r13b04_devErlang/OTP
* is/mnesia-send-compressed: Add option to compress data when copying tables between Mnesia nodes OTP-8406 Igor Ribeiro Sucupira added the option to compress data when copying tables between Mnesia nodes.
2010-02-02Add option to compress data when copying tables between Mnesia nodesIgor Ribeiro Sucupira
Optionally using data compression for copying Mnesia tables allows the system to be tuned to eliminate network bottlenecks from deployments where enough CPU is available to use zlib. With this patch, running erl -mnesia send_compressed <level> will enable compression for sending tables between nodes. The compression level can be any integer in [0, 9], with 0 (the default) meaning no compression (exactly the previous behaviour) and 9 being the highest compression level. To set any non-zero compression level at the sender, both nodes must have the updated Mnesia modules (the receiver will work according to the sender's configuration).
2009-11-20The R13B03 release.OTP_R13B03Erlang/OTP