Safe Fixtable and ets:select with partial results
Tue Feb 3 22:12:06 CET 2004
I am using ets:select/3 and ets:select/1 to pick up parts of tables
(say the 10th to 20th rows). I guess that the ets:select/3 call must do
an implicit ets:safe_fixtable(Tab, true) otherwise later use of a
returned Continuation might get mixed up in a re-hash activity.
If I use this mechanism in a long lived process, and never actually
traverse the table all the way to the end I am a little concerned that
I might leave the table perpetually fix_tabled with all the associated
long term performance problems.
So, does anyone know if I am worrying unnecessarily? If I am not, do I
need to call ets:safe_fixtable(Tab, false) after abandoning a sequence
of ets:select/3 and ets:select/1 calls part way through the table?
If so, it might be worth a mention in the documentation.
More information about the erlang-questions