aboutsummaryrefslogtreecommitdiffstats
path: root/lib/mnesia/src/mnesia_index.erl
AgeCommit message (Collapse)Author
2014-03-28mnesia: Dialyzer fixesDan Gudmundsson
2014-02-20mnesia: cleanup some dialyzer unmatched return warningsDan Gudmundsson
2013-06-12Update copyright yearsBjörn-Egil Dahlberg
2013-04-24Fix missing case clause for ordered_set tablesNick Marino
The previous commit contained a regression that would trigger a crash when attempting to add an index to an Mnesia table of type ordered_set.
2013-04-12Optimize index creation for Mnesia set tablesNick Marino
ETS bag tables have very poor performance on insertion if you have lots of rows with duplicate keys, since it has to check each existing record and make sure it's not inserting any duplicates. This can lead to some pretty drastic slowdowns when inserting lots of rows into an Mnesia table, IF you're introducing lots of duplicate values into an indexed column. As it turns out, we can fix this by switching to duplicate_bag tables for storing Mnesia indexes on tables of type 'set', and it ultimately makes no functional difference since we will never actually attempt to insert any duplicate records anyway. (We would have to make some bigger changes to make this work for Mnesia bag tables though, so that is left as a possible enhancement for the future.)
2012-08-31Update copyright yearsBjörn-Egil Dahlberg
2012-06-18Prevent index from being corrupted if a nonexistent item is deletedBartlomiej Puzon
We have to ensure that we actually delete the last object with a given (key, index) pair before removing the index.
2011-03-02Mnesia dialyzer fixesDan Gudmundsson
With help from Kostis
2009-11-20The R13B03 release.OTP_R13B03Erlang/OTP