Mnesia and additional indexes: a cautionary tale
Ulf Wiger (AL/EAB)
ulf.wiger@REDACTED
Thu Mar 30 11:23:31 CEST 2006
The indexes in rdbms are first-class tables, and all index updates are
performed within a transaction context. Thus, solving the partitioned
network problem will be done in roughly the same way (I assume you mean
setting master nodes?)
There is (more or less) also a rebuild_indexes(Tab) function, using a
mnesia_recover. It's mainly used for adding indexes to existing tables
and populating them within the scope of a schema transaction.
One can also, of course, break the abstraction and simply clobber the
rdbms indexes and rebuild them by hand (by bypassing the wrapper
functions in rdbms). I could make this a bit simpler and clearly
documented, if it's deemed necessary.
BR,
Ulf W
________________________________
From: chandru [mailto:chandrashekhar.mullaparthi@REDACTED]
Sent: den 30 mars 2006 10:48
To: Ulf Wiger (AL/EAB)
Cc: erlang-questions@REDACTED
Subject: Re: Mnesia and additional indexes: a cautionary tale
On 30/03/06, Ulf Wiger (AL/EAB) <ulf.wiger@REDACTED> wrote:
Enter the 'rdbms' contrib...
I see a couple of traits of the additional indexing
support in rdbms that could help in this
particular situation:
- You can have disc_copy indexes, which are not rebuilt
every time mnesia is restarted
Is the case where mnesia recovers from a partitioned network
taken care of? The index tables will have to be rebuilt in this case.
I'm sure you would've but I thought I'll ask anyway.
cheers
Chandru
PS: haven't used rdbms (yet)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20060330/453a4d8c/attachment.htm>
More information about the erlang-questions
mailing list