ets:lookup and ets:update_counter return  although key/value is there
Tue Sep 13 10:42:39 CEST 2005
Knut Bakke <knutbakke@REDACTED> writes:
> My best clue: I know that the memory driver for erlang
> has been changed to delete memory areas before
> updating them - to reduce memory fragmentation. Could
> it be that there is a time slice where the data is not
(I suppose you refer to the +r flag.)
NO. The current emulator is single-threaded. Nothing else
can run while an ets operation is taking place.
I strongly suspect that there is a bug in your own application, that
changing the hardware has changed the timing and exposed a latent bug.
Of course, the bug could be in ets; in that case it should be possible
to reproduce it on any machine if you would do EXACTLY the same ets
Have you tried to trace all ets operations?
Björn Gustavsson, Erlang/OTP, Ericsson AB
More information about the erlang-questions