GitHub user iilyak opened a pull request:

    https://github.com/apache/couchdb-couch/pull/209

    remove compact files on failure

    In the case when `compact.meta` file is corrupted the compaction fails over 
and over. 
    This fixes the cyclic failure aspect by use of a `.compact.crash` flag file.
    The logic is:
    
    ```python
    if there is an exception and  `.compact.crash` exists:
         remove(.compact.{meta|data})
    ```

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/cloudant/couchdb-couch 
76900-remove-compact-files-on-failure

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/couchdb-couch/pull/209.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #209
    
----
commit 0444072d8c10416800f05fb5c51bf67b25fda569
Author: ILYA Khlopotov <[email protected]>
Date:   2016-10-24T20:50:32Z

    Extract {delete|purge}_compact_files

commit 7e7498369e52c58f52423d58b1971bac97440765
Author: ILYA Khlopotov <[email protected]>
Date:   2016-10-24T21:02:31Z

    Use couch_db_updater:delete_compact_files/2

commit 72761387b02f73c9c5fa1960c9967fa7d918d2e9
Author: ILYA Khlopotov <[email protected]>
Date:   2016-10-27T22:33:26Z

    Use .compact.crash file to recover cyclic failures
    
    Remove compact.{meta|data} files if compaction crashes
    
    BugzID: 76900

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to