[erlang-questions] Mnesia and the 4Gb Limit

Chandru chandrashekhar.mullaparthi@REDACTED
Fri Feb 15 10:21:35 CET 2008


On 14/02/2008, David Lloyd <lloy0076@REDACTED> wrote:
>
>  Hi There,
>
>  Does Mnesia/Dets still have the 4GB limit? Answers I've found on the
>  'net seem to indicate that 64bit Erlang has, essentially, erased this limit.
>
>  I'm looking at a database table that miht be larger than 4Gb; it's
>  already an in memory, MySQL table (MySQL cluster uses an in memory table
>  structure) so I don't seem to have a "lack" of memory [last time I
>  looked the min. memory in any one node on this cluster is 8Gb).
>

>From reading the manuals, it looks like dets still has this limit.
What 64 bit erlang does is remove the restriction that an erlang node
can only address 4GB of memory. This basically means you can have a
database of more than 4GB, but *each* mnesia table on disk cannot be
more than 2GB. You can use table fragmentation to get around this. I
guess this restriction won't apply to mnesia ram_copies tables.

I have created databases of up to 15GB without any problem using 64
bit erlang, but they were fragmented disc_copies tables.

cheers
Chandru



More information about the erlang-questions mailing list