Return-Path: X-Original-To: apmail-couchdb-commits-archive@www.apache.org Delivered-To: apmail-couchdb-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id E1D6096B9 for ; Wed, 14 Mar 2012 22:28:10 +0000 (UTC) Received: (qmail 17350 invoked by uid 500); 14 Mar 2012 22:28:03 -0000 Delivered-To: apmail-couchdb-commits-archive@couchdb.apache.org Received: (qmail 17074 invoked by uid 500); 14 Mar 2012 22:28:03 -0000 Mailing-List: contact commits-help@couchdb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@couchdb.apache.org Delivered-To: mailing list commits@couchdb.apache.org Received: (qmail 15916 invoked by uid 99); 14 Mar 2012 22:28:02 -0000 Received: from tyr.zones.apache.org (HELO tyr.zones.apache.org) (140.211.11.114) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 14 Mar 2012 22:28:02 +0000 Received: by tyr.zones.apache.org (Postfix, from userid 65534) id 6D0E57122; Wed, 14 Mar 2012 22:28:02 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: davisp@apache.org To: commits@couchdb.apache.org X-Mailer: ASF-Git Admin Mailer Subject: [45/50] [abbrv] git commit: Close view compaction file when compaction is canceled Message-Id: <20120314222802.6D0E57122@tyr.zones.apache.org> Date: Wed, 14 Mar 2012 22:28:02 +0000 (UTC) Close view compaction file when compaction is canceled Closes COUCHDB-1384 Project: http://git-wip-us.apache.org/repos/asf/couchdb/repo Commit: http://git-wip-us.apache.org/repos/asf/couchdb/commit/12a593c6 Tree: http://git-wip-us.apache.org/repos/asf/couchdb/tree/12a593c6 Diff: http://git-wip-us.apache.org/repos/asf/couchdb/diff/12a593c6 Branch: refs/heads/COUCHDB-1426 Commit: 12a593c61dc0f154f3ade65a50706a019103d680 Parents: c43fbc9 Author: Filipe David Borba Manana Authored: Thu Jan 19 12:55:40 2012 +0000 Committer: Filipe David Borba Manana Committed: Sun Jan 22 12:44:12 2012 +0000 ---------------------------------------------------------------------- src/couchdb/couch_view_group.erl | 7 ++++++- 1 files changed, 6 insertions(+), 1 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/couchdb/blob/12a593c6/src/couchdb/couch_view_group.erl ---------------------------------------------------------------------- diff --git a/src/couchdb/couch_view_group.erl b/src/couchdb/couch_view_group.erl index 769a69e..97fc512 100644 --- a/src/couchdb/couch_view_group.erl +++ b/src/couchdb/couch_view_group.erl @@ -168,7 +168,12 @@ handle_call({start_compact, CompactFun}, _From, #group_state{compactor_pid=nil} {ok, Fd} = open_index_file(compact, RootDir, DbName, GroupSig), NewGroup = reset_file(Db, Fd, DbName, Group), couch_db:close(Db), - Pid = spawn_link(fun() -> CompactFun(Group, NewGroup, DbName) end), + unlink(Fd), + Pid = spawn_link(fun() -> + link(Fd), + CompactFun(Group, NewGroup, DbName), + unlink(Fd) + end), {reply, {ok, Pid}, State#group_state{compactor_pid = Pid}}; handle_call({start_compact, _}, _From, State) -> %% compact already running, this is a no-op