Questions tagged [mnesia]

A distributed DataBase Management System used in Erlang applications.

Mnesia is a distributed DataBase Management System (DBMS), appropriate for telecommunications applications and other Erlang applications which require continuous operation and exhibit soft real-time properties.

414 questions
6
votes
1 answer

Accessing a Mnesia node from another Erlang shell while it is running

What is the best practice to accessing a single running mnesia node from another Erlang shell to only view data in the tables? I tried opening two shells and pointing them to the same mnesia directory location which I realized was a very bad idea…
6
votes
1 answer

How Elixir can read remote node mnesia table

I am trying use Elixir to write program to access mnesia. I run iex shell in amazon linux. I tried to connect another node using Node.connect(:'hello@abc.com') which return true, then I want to run mnesia command on this remote node, I issue …
want_to_be_calm
  • 1,477
  • 3
  • 23
  • 41
6
votes
1 answer

Where are tables in Mnesia located?

I try to compare Mnesia with more traditional databases. As I understand it tables in Mnesia can be located to (see Memory consumption in Mnesia): ram_copies - tables are stored in ets, so no durability as in ACID. disc_copies - tables are located…
Jonas
  • 121,568
  • 97
  • 310
  • 388
6
votes
2 answers

Mnesia: reading remote node data in {local_content, true} mode

Is there a way to do local writes and and global reads ( without replication ) using mnesia. Eg: node A writes to its local DB and node B reads from node A's DB. Node B does not have any data of its own, apart from the schema information stored…
Abhijith
  • 929
  • 8
  • 9
6
votes
1 answer

RabbitMQ inconsistent cluster

Few questions about RabbitMQ v3.1.5 clustering. I have a cluster with 2 nodes, rabbitmq.config is like this on both nodes: [ {rabbit, [ {cluster_nodes, {['rabbit@rmq01', 'rabbit@rmq02'], ram}}, {tcp_listeners, [5674]} ]} ]. I already…
Sasha Ru
  • 625
  • 1
  • 6
  • 16
6
votes
2 answers

One replicated mnesia table has become out-of-sync

I have an erlang application currently running on four nodes with a replicated mnesia db that stores minimal data regarding connected clients. The mnesia replication has been working seamlessly in the past (as far as I know anyway) but a client…
RockyMountainHigh
  • 2,871
  • 5
  • 34
  • 68
6
votes
4 answers

Is it possible to develop a powerful web search engine using Erlang, Mnesia & Yaws?

I am thinking of developing a web search engine using Erlang, Mnesia & Yaws. Is it possible to make a powerful and the fastest web search engine using these software? What will it need to accomplish this and how what do I start with?
Ankit Singh
  • 2,602
  • 6
  • 32
  • 44
6
votes
4 answers

Erlang : Mnesia : Lookup and update based on fields other than the key

I have a table in mnesia and I need to update individual fields in the records in it. According to Erlang : Mnesia : Updating a single field value in a row if I do something like: update_a(Tab, Key, Value) -> fun() -> [P] = mnesia:wread({Tab,…
ErJab
  • 6,056
  • 10
  • 42
  • 54
6
votes
2 answers

how does Ejabberd manage databases for clustering?

Does it replicate all the data to every node or does it store data fragments on each node and then fetches every needed fragment from different node at runtime? Or how does this work? Does clustering still work correctly if, instead of Mnesia, you…
Andres Canella
  • 3,706
  • 1
  • 35
  • 47
6
votes
2 answers

Records in Erl (Erlang question)

Is there a way to use records directly in erl? No matter what I try, it always says it canno find the record. I am trying to do mnesia transactions and I cannot go too far without my records. Any help is greatly appreciated - thank you!
ewindsor
  • 885
  • 10
  • 24
6
votes
2 answers

Erlang fault-tolerant application: PA or CA of CAP?

I have already asked a question regarding a simple fault-tolerant soft real-time web application for a pizza delivery shop. I have gotten really nice comments and answers there, but I disagree in that it is a true web service. Rather than a web…
skanatek
  • 5,133
  • 3
  • 47
  • 75
6
votes
2 answers

In Erlang, what is the best way to upgrade a distributed system?

If I have multiple web server written in Erlang running (load balanced) and Mnesia is used for the backend database, what is the best way to upgrade the whole system to a newer version?
TP.
  • 740
  • 7
  • 17
5
votes
1 answer

Access distributed mnesia database from different nodes

I have a mnesia database containning different tables. I want to be able to access the tables from different Linux terminals. I have a function called add_record, which takes a few parameters, say name and id. I want to be able to call add_record on…
Onty
  • 141
  • 2
  • 10
5
votes
2 answers

Improving the message throughput of ejabberd-2.1.10

I have installed ejbberd-2.1.10 from the binary installer on my machine(Win7 32bit 2.93GHz Core2Duo 3GB RAM). Since our set-up needs a very high message throughput I have looked through the performance tuning reference and made changes in my…
sandy1510
  • 59
  • 5
5
votes
2 answers

What is the idiomatic way of limiting the number of records under a certain key in mnesia?

I use mnesia to store data for users, and the record is a bag structured like { username, field1, filed2, timestamp } In order not to let the database explode, I want to set a limit for the number of records belonging to a certain user, say, if the…
Chi Zhang
  • 771
  • 2
  • 8
  • 22
1 2
3
27 28