diff options
author | Nick Vatamaniuc <vatamane@apache.org> | 2017-04-18 01:16:21 -0400 |
---|---|---|
committer | Nick Vatamaniuc <vatamane@apache.org> | 2017-04-18 01:16:21 -0400 |
commit | 841d7dd8d0bddced45c277e4c470473b6f156982 (patch) | |
tree | 4123643a0660cbd2b5d170dd6c69898c20648978 | |
parent | 4b6b64044b0e14e89a4d518a71345dfa97242bfc (diff) | |
download | couchdb-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.erl | 2 |
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) -> |