couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "alisdair sullivan (JIRA)" <>
Subject [jira] Commented: (COUCHDB-326) Occasional {"error":"error","reason":"eacces"} errors deleting a database on Windows
Date Mon, 20 Apr 2009 23:51:47 GMT


alisdair sullivan commented on COUCHDB-326:

exit(Pid, kill),
receive {'EXIT', Pid, close} -> ok end,

To achieve a clean shutdown of the db and it's child processes, you need to send it a signal
other than kill and give it a chance to shutdown and cleanup it's processes. The receive here
doesn't do anything as a killed process sends the 'EXIT' msg immediately upon being killed.

> Occasional {"error":"error","reason":"eacces"} errors deleting a database on Windows
> ------------------------------------------------------------------------------------
>                 Key: COUCHDB-326
>                 URL:
>             Project: CouchDB
>          Issue Type: Bug
>    Affects Versions: 0.9
>         Environment: Windows, couch 0.9, erlang R12B 5.6.5
>            Reporter: Mark Hammond
> On Windows, occasionally you will see errors attempting to delete a database.   This
manifests itself by 10-30% of the test suite failing on Windows.  If you retry the tests that
failed, they will usually pass on subsequent attempts.  Running the tests individually causes
them to fail roughly 10% of the time.
>  The log output shown is:
>   [debug] [<0.18650.6>] httpd 500 error response:
>    {"error":"error","reason":"eacces"}
>   [info] [<0.18650.6>] - - 'DELETE' /test_suite_db/ 500
> A slightly snipped transcript from IRC:
> (2:58:32 PM) markh: I see a number of INFO logs "Shutting down view group server, monitored
db is closing." directly before the error.  I was guessing the file may be unlink'd before
one of those workers actually closes its handle?
> (2:58:54 PM) alisdair: yeah, it's probably a race condition
> (2:59:13 PM) alisdair: where the delete is tried before the fd is let go
> (2:59:26 PM) alisdair: the reader fd that is
> (2:59:32 PM) markh: yeah
> ...
> (3:11:47 PM) alisdair: i can't find an obvious deadlock
> (3:12:18 PM) alisdair: couch_server:delete explicitly waits for the db process to exit
> (3:12:23 PM) alisdair: before deleting it
> (3:15:15 PM) alisdair: i think i found the problem
> (3:15:23 PM) alisdair: but i need a windows machine to confirm
> (3:15:30 PM) alisdair: i'll look into it tomorrow

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message