Closed
Bug 836580
Opened 13 years ago
Closed 13 years ago
Intermittent test failures in test-httpd and test-request
Categories
(Add-on SDK Graveyard :: General, defect)
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: mossop, Unassigned)
References
()
Details
(Keywords: intermittent-failure)
Attachments
(3 files)
Seen on Fedora and Ubuntu at least
info: addon-sdk: executing 'test-httpd.testBasicHTTPServer'
error: addon-sdk: fail: "<html><head><title>500 Internal Server Error</title></head><body><h1>500 Internal Server Error</h1><p>Something's broken in this server andneeds to be fixed.</p></body></html>" != "This is the HTTPD test file.\n"
info: addon-sdk: Traceback (most recent call last):
File "resource://a32b0c27-76e1-4421-af94-a48b3a5b925e-at-jetpack/addon-sdk/lib/sdk/net/xhr.js", line 126, in null
self._orsc.apply(self, arguments);
File "resource://a32b0c27-76e1-4421-af94-a48b3a5b925e-at-jetpack/addon-sdk/lib/sdk/request.js", line 91, in onreadystatechange
emit(target, 'complete', response);
File "resource://a32b0c27-76e1-4421-af94-a48b3a5b925e-at-jetpack/addon-sdk/lib/sdk/event/core.js", line 83, in emit
for each (let item in emit.lazy.apply(emit.lazy, arguments)) {
File "resource://a32b0c27-76e1-4421-af94-a48b3a5b925e-at-jetpack/addon-sdk/lib/sdk/event/core.js", line 101, in lazy
yield listeners.shift().apply(target, args);
File "resource://a32b0c27-76e1-4421-af94-a48b3a5b925e-at-jetpack/addon-sdk/tests/test-httpd.js", line 27, in exports.testBasicHTTPServer/<.onComplete
test.assertEqual(response.text, content);
File "resource://a32b0c27-76e1-4421-af94-a48b3a5b925e-at-jetpack/addon-sdk/lib/sdk/deprecated/unit-test.js", line 187, in assertEqual
this.fail(message);
File "resource://a32b0c27-76e1-4421-af94-a48b3a5b925e-at-jetpack/addon-sdk/lib/sdk/deprecated/unit-test.js", line 88, in fail
this.console.trace();
File "resource://a32b0c27-76e1-4421-af94-a48b3a5b925e-at-jetpack/addon-sdk/lib/sdk/lang/functional.js", line 71, in null
return function() fn.apply(this, args.concat(Array.slice(arguments)));
| Reporter | ||
Comment 1•13 years ago
|
||
Pointer to Github pull-request
| Reporter | ||
Comment 2•13 years ago
|
||
Comment on attachment 708396 [details]
Pointer to Github pull request: https://github.com/mozilla/addon-sdk/pull/753
Can't see what might be the problem here but we can turn on debug output from the httpd module which might help spot it.
Attachment #708396 -
Flags: review?(kwierso)
Comment on attachment 708396 [details]
Pointer to Github pull request: https://github.com/mozilla/addon-sdk/pull/753
Sure, why not!
Attachment #708396 -
Flags: review?(kwierso) → review+
Comment 4•13 years ago
|
||
Commits pushed to master at https://github.com/mozilla/addon-sdk
https://github.com/mozilla/addon-sdk/commit/4446c18b687be5d95080330f60c50368bd47eeeb
Bug 836580: Turn on httpd debug output when in verbose or parseable modes.
https://github.com/mozilla/addon-sdk/commit/d47b30279fb03fb8cee5179e23ac8953b6ae69f0
Merge pull request #753 from Mossop/bug836580
Bug 836580: Turn on httpd debug output when in verbose or parseable modes. r=Kwierso
| Reporter | ||
Comment 5•13 years ago
|
||
This picked us up some logging from before the error:
HTTPD-INFO | *** mapping '/' to the location /Users/cltbld/Library/Caches/TemporaryItems
HTTPD-INFO | >>> listening on port 8099, 11 pending connections
HTTPD-INFO | *** onSocketAccepted(socket=[xpconnect wrapped nsIServerSocket], trans=[xpconnect wrapped (nsISupports, nsISocketTransport, nsITransport, nsIDNSListener)])
HTTPD-INFO | >>> new connection on 127.0.0.1:49271
HTTPD-INFO | *** opening new connection 1 on port 49271
HTTPD-INFO | *** starting connection 1
HTTPD-INFO | *** onInputStreamReady(input=[xpconnect wrapped (nsISupports, nsIInputStream, nsIAsyncInputStream, nsISeekableStream, nsISearchableInputStream)]) on thread [xpconnect wrapped (nsISupports, nsIThread, nsIThreadInternal, nsIEventTarget, nsISupportsPriority)] (main is [xpconnect wrapped (nsISupports, nsIThread, nsIThreadInternal, nsIEventTarget, nsISupportsPriority)])
HTTPD-INFO | *** this._state == 0
HTTPD-INFO | *** _parseRequestLine('GET /test-httpd.txt HTTP/1.1')
HTTPD-INFO | *** _parseHeaders
HTTPD-INFO | _processHeaders, Content-length=0
HTTPD-INFO | *** remaining body data len=0
HTTPD-INFO | *** _validateRequest
HTTPD-INFO | *** path == /test-httpd.txt
HTTPD-INFO | *** _handleDefault()
HTTPD-INFO | *** handling '/test-httpd.txt' as mapping to /Users/cltbld/Library/Caches/TemporaryItems/test-httpd.txt from 0 to 28 inclusive
HTTPD-INFO | *** partiallySent()
HTTPD-INFO | *** unexpected error: e == [Exception... "Component returned failure code: 0x80520015 (NS_ERROR_FILE_ACCESS_DENIED) [nsIFileInputStream.init]" nsresult: "0x80520015 (NS_ERROR_FILE_ACCESS_DENIED)" location: "JS frame :: resource://gre/modules/XPIProvider.jsm -> jar:file:///var/folders/qd/srwd5f710sj0fcl9z464lkj00000gn/T/tmpqpz5w6.mozrunner/extensions/f5d83112-f739-46b5-87b7-479b9d03bc45@jetpack.xpi!/bootstrap.js -> resource://f5d83112-f739-46b5-87b7-479b9d03bc45-at-jetpack/addon-sdk/lib/toolkit/loader.js -> resource://f5d83112-f739-46b5-87b7-479b9d03bc45-at-jetpack/addon-sdk/lib/sdk/test/httpd.js :: ServerHandler.prototype._writeFileResponse :: line 2673" data: no]
HTTPD-INFO | *** partiallySent()
HTTPD-INFO | *** errorCode == 500
HTTPD-INFO | *** complete()
HTTPD-INFO | *** partiallySent()
HTTPD-INFO | *** _startAsyncProcessor()
HTTPD-INFO | *** _sendHeaders()
HTTPD-INFO | *** non-async response, set Content-Length
HTTPD-INFO | *** header post-processing completed, sending response head...
HTTPD-INFO | *** preamble copying started
HTTPD-INFO | *** _waitToReadData
HTTPD-INFO | *** _waitForSinkClosure
HTTPD-INFO | *** onInputStreamReady
HTTPD-INFO | *** input wanted: 158
HTTPD-INFO | *** 158 bytes read
HTTPD-INFO | *** _waitToWriteData
HTTPD-INFO | *** _waitToReadData
HTTPD-INFO | *** onOutputStreamReady
HTTPD-INFO | *** wrote 158 bytes of data
HTTPD-INFO | *** _waitForSinkClosure
HTTPD-INFO | *** onInputStreamReady
| Reporter | ||
Comment 6•13 years ago
|
||
Pointer to Github pull-request
| Reporter | ||
Updated•13 years ago
|
Attachment #708648 -
Flags: review?(kwierso)
Comment on attachment 708648 [details]
Pointer to Github pull request: https://github.com/mozilla/addon-sdk/pull/755
Looks good to me!
Attachment #708648 -
Flags: review?(kwierso) → review+
Comment 8•13 years ago
|
||
Commits pushed to master at https://github.com/mozilla/addon-sdk
https://github.com/mozilla/addon-sdk/commit/56823fe16674b61ce0a58947749bd148964d3a2a
Bug 836580: Turn on httpd logging for the request tests.
https://github.com/mozilla/addon-sdk/commit/993e999d5c838cf82e0789181de329a1fd2097a3
Merge pull request #755 from Mossop/bug836580_2
Bug 836580: Turn on httpd logging for the request tests. r=Kwierso
| Reporter | ||
Comment 9•13 years ago
|
||
So far all I can say is that both these tests write data to the temp directory and then httpd throws an access denied error trying to open those files. I wonder if it is something to do with the temp directory. I have a patch to switch to using the profile directory, this is probably a good idea anyway as at the moment we don't properly clean up the files these tests create.
Summary: Intermittent test failure in test-httpd.testBasicHTTPServer → Intermittent test failures in test-httpd and test-request
| Reporter | ||
Comment 10•13 years ago
|
||
Pointer to Github pull-request
| Reporter | ||
Updated•13 years ago
|
Attachment #708855 -
Flags: review?(poirot.alex)
Comment 11•13 years ago
|
||
Comment on attachment 708855 [details]
Pointer to Github pull request: https://github.com/mozilla/addon-sdk/pull/756
It might be worth to add brief comment about why we are using profile instead of tmp.
Attachment #708855 -
Flags: review?(poirot.alex) → review+
Updated•13 years ago
|
Keywords: intermittent-failure
Comment 12•13 years ago
|
||
Commits pushed to master at https://github.com/mozilla/addon-sdk
https://github.com/mozilla/addon-sdk/commit/20ac23ff80f7d658200acbc0e6adede3a56297e5
Bug 836580: Use the profile directory for the temporary test files.
https://github.com/mozilla/addon-sdk/commit/3d18a64915105bd331183f8ddb7e6ef3ec5ef6ad
Bug 836580: Add comments about why we're using the profile directory.
https://github.com/mozilla/addon-sdk/commit/5b94e642221a13c6f75e3994f079d90134edd86f
Merge pull request #756 from Mossop/bug836580_3
Bug 836580: Use the profile directory for the temporary test files. r=ochameau
| Reporter | ||
Comment 13•13 years ago
|
||
Seen 5 full runs on tbpl without these failures now which I think is enough to claim it is fixed.
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
Comment 14•13 years ago
|
||
Commits pushed to stabilization at https://github.com/mozilla/addon-sdk
https://github.com/mozilla/addon-sdk/commit/e5c178162cd6f590afa18045190a3ddbab5325bd
Merge pull request #755 from Mossop/bug836580_2
Bug 836580: Turn on httpd logging for the request tests. r=Kwierso(cherry picked from commit 993e999d5c838cf82e0789181de329a1fd2097a3)
https://github.com/mozilla/addon-sdk/commit/4e44dd094e8636216e8c9ca5664866a5cf7d0cdd
Merge pull request #756 from Mossop/bug836580_3
Bug 836580: Use the profile directory for the temporary test files. r=ochameau(cherry picked from commit 5b94e642221a13c6f75e3994f079d90134edd86f)
You need to log in
before you can comment on or make changes to this bug.
Description
•