summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Vatamaniuc <vatamane@apache.org>2017-04-18 01:16:21 -0400
committerNick Vatamaniuc <vatamane@apache.org>2017-04-18 01:16:21 -0400
commit841d7dd8d0bddced45c277e4c470473b6f156982 (patch)
tree4123643a0660cbd2b5d170dd6c69898c20648978
parent4b6b64044b0e14e89a4d518a71345dfa97242bfc (diff)
downloadcouchdb-COUCHDB-3376-fix-mem3-shards-fixes.tar.gz
Correctly delete writer information from ?OPENERS in mem3_shardsCOUCHDB-3376-fix-mem3-shards-fixes
`?OPENERS` is an ETS table of type bag. To delete one specific object have to use `ets:delete_object(Tab, Object)` Without this fix writers were never cleaned up and no new writers could be spawned. COUCHDB-3376
-rw-r--r--src/mem3/src/mem3_shards.erl2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/mem3/src/mem3_shards.erl b/src/mem3/src/mem3_shards.erl
index af9417a32..5cdbc6c48 100644
--- a/src/mem3/src/mem3_shards.erl
+++ b/src/mem3/src/mem3_shards.erl
@@ -480,7 +480,7 @@ shard_writer(DbName, Shards, IdleTimeout) ->
ok
end
after
- true = ets:delete(?OPENERS, {DbName, self()})
+ true = ets:delete_object(?OPENERS, {DbName, self()})
end.
flush_write(DbName, Writer, WriteTimeout) ->