Age | Commit message (Collapse) | Author |
|
|
|
|
|
* ud/fix-return-do_get_disc_copy2:
Fixes value returned by mnesia_loader:do_get_disc_copy2/4
OTP-10015
OTP-10016
|
|
|
|
If a transaction releases a write, it can be deleted directly since no read locks
or other write locks can be present
|
|
|
|
5% faster on tpcb
|
|
Switch to ordered_set so match_object matches partially bound keys,
more efficient.
|
|
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
|
|
|
|
|
|
* dgud/mnesia/read-sticky-bug/OTP-9786:
[mnesia] Read record from correct node
[mnesia] Fixed sticky read lock bug
[mnesia] Whitespace fixes
Conflicts:
lib/mnesia/src/mnesia_log.erl
|
|
* rc/mnesia_log-no-async:
Use the synchronous log_terms instead of alog_terms in mnesia_log:ets2dcd()
OTP-9804
|
|
This avoids the situation where mnesia could dump a very large ets table in
its entirety into the message queue of the disk_log process, causing memory
blowup and choking the disk logger.
|
|
Read from where_to_read otherwise bad data may read during
move_table, where where_to_write is updated before where_to_read
and the table is available.
|
|
* dgud/mnesia/impl-table-options/OTP-8970:
[mnesia] Add possibility for implementation dependent storage options to create_table
|
|
wread on locks stuck at non-local node could return unexpected value.
Thanks to Magnus Henoch who posted a nice testcase showing the bug.
|
|
|
|
|
|
create_table
|
|
This reverts commit e21ff9b0b69219ab3853be7e80813156113152b7.
|
|
|
|
* pr/mnesia_frag_hash:
add mnesia_frag_hash test
Reduce calls to phash in key_to_frag_number
OTP-9722
|
|
|
|
|
|
|
|
|
|
Allow schema operation even if not all nodes are upgraded to
latest version.
|
|
|
|
Aviods failing/wobbling testcase. Mnesia mishandled supervisors.
|
|
These dependency files was once used when building the documentation,
but are no longer needed.
|
|
Some applications still have support for an ancient documentation
build system. Eliminate the DOCSUPPORT define in otp.mk.in and the
not taken arm of the ifdefs in the Makefiles.
|
|
|
|
|
|
|
|
|
|
* dev:
Improve the generation of man pages
Correct XML files
|
|
|
|
|
|
* dgud/mnesia/leaking-log/OTP-9551:
[mnesia] Use api to log decisions.
|
|
Mainly to correctly clear dets tables. It may also be faster to use
the dedicated functions.
|
|
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.
|
|
|
|
|
|
|
|
And remove old protocol version hacks
|
|
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.
|
|
|
|
|
|
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.
|