On 03/27/2013 02:11 PM, Jan Lehnardt wrote:
On Mar 27, 2013, at 22:05 , Wendall Cada <wenda...@apache.org> wrote:

In 1.3.0, there is a new part of the test suite to run the javascript tests 
from the command line. I'm running into various issues on different hardware/OS 
configurations. Mostly, tests hanging or timing out and failing. These are 
really hard to troubleshoot, as they all pass just fine if run individually.

What I'm experimenting with today is rewriting how the tests are implemented to 
be run one at a time from a loop in bash, versus a loop in javascript. I think 
the failures I'm running into are improper setup/teardown. There may be an 
issue with rapid delete and adding a db, or rapidly starting and stopping 
couchdb, but I think this is not what's happening in my failures.

The nature of spidermonkey doesn't allow for spawning threads, or sandboxing, 
etc, so it's hard looking at the test suite to see how I can improve running 
all tests. I think it's far better to have the setup spawn a new interpreter 
for each test. Tear down will kill the interpreter.
Thanks for looking into these!

I seem to recall from an IRC conversation earlier that you have crashes in 
`couchjs` that are unrelated to the test suite, but triggered by running it (on 
the cli) and that CouchDB doesn’t deal with the crashes properly and thus leads 
to subsequent test errors due to hangs or whatnot.

Any logs you could produce for any failures would be great, of course :)

Jan
--

That's just the problem. To get something useful, I'll need to be able to isolate the tests individually where they fail. Since they run quite well individually, and nothing is logged as a result, this is a tough request. There are some very repeatable conditions that arise. 1. Shutdown doesn't actually shut down couchdb between tests. 2. The javascript interpreter hangs indefinitely 3. The javascript interpreter crashes . I could get some working gdb output, but the tests aren't really designed well for this. Hence why I want to have these run a bit differently. Each test in isolation. Then we'll be testing CouchDB and not the test suite, or hardware limitations, or other unknown environmental variables.

Wendall

Reply via email to