[erlang-questions] "Killed" Mnesia transaction left locks behind

Igor Ribeiro Sucupira igorrs@REDACTED
Tue Jun 14 07:55:52 CEST 2011


An Erlang process in node N was killed while executing a transaction
(our system does that automatically for some kinds of operations, when
they take too long to finish).
However, some locks were left behind in the 4 nodes that have the
tables (this should be a bug, according to what Dan Gudmundsson once
told me in this list).

Anyway, I'd like to know if there's a way of releasing the locks
without restarting the nodes.
I tried mnesia_locker:release_tid(27211023009), but the locks still
appear when I call mnesia:system_info(held_locks):
- In nodes N1 and N2:
[{{si_build_hq_frag31,7},
  write,
  {tid,27211023009,<8057.12454.8>}}]
- In nodes N3 and N4:
[{{si_build_hq_frag191,{7,1}},
  write,
  {tid,27211023009,<8057.12454.8>}}]
- Also in node N3:
[{{si_build_hq_frag191,{7,1}},
  read,
  {tid,27211023009,<8057.12454.8>}},


I'm sure the process is no longer running in node N.

Thank you.
Igor.

--
"The secret of joy in work is contained in one word - excellence. To
know how to do something well is to enjoy it." - Pearl S. Buck.



More information about the erlang-questions mailing list