aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/erl_db_hash.c
diff options
context:
space:
mode:
authorSverker Eriksson <[email protected]>2018-09-03 20:05:32 +0200
committerSverker Eriksson <[email protected]>2018-09-03 21:47:30 +0200
commit4253f875c73c577a768847639e9d2411f935d4d2 (patch)
tree527d1a67eb6ad4949ea1f017319fc98a6a6ed6e3 /erts/emulator/beam/erl_db_hash.c
parent5801fcb2b36e04c433dcf0b90a8c47b86e34fc07 (diff)
downloadotp-4253f875c73c577a768847639e9d2411f935d4d2.tar.gz
otp-4253f875c73c577a768847639e9d2411f935d4d2.tar.bz2
otp-4253f875c73c577a768847639e9d2411f935d4d2.zip
erts: Fix ets memstat false leak of FixedDeletion
causing erlang:memory to report too much ets memory.
Diffstat (limited to 'erts/emulator/beam/erl_db_hash.c')
-rw-r--r--erts/emulator/beam/erl_db_hash.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/erts/emulator/beam/erl_db_hash.c b/erts/emulator/beam/erl_db_hash.c
index b988a19cf4..b648965885 100644
--- a/erts/emulator/beam/erl_db_hash.c
+++ b/erts/emulator/beam/erl_db_hash.c
@@ -162,6 +162,7 @@ static ERTS_INLINE int link_fixdel(DbTableHash* tb,
if (NFIXED(tb) <= fixated_by_me) {
erts_db_free(ERTS_ALC_T_DB_FIX_DEL, (DbTable*)tb,
fixd, sizeof(FixedDeletion));
+ ERTS_ETS_MISC_MEM_ADD(-sizeof(FixedDeletion));
return 0; /* raced by unfixer */
}
exp_next = was_next;