Closed
Bug 836580
Opened 11 years ago
Closed 11 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•11 years ago
|
||
Pointer to Github pull-request
Reporter | ||
Comment 2•11 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•11 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•11 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•11 years ago
|
||
Pointer to Github pull-request
Reporter | ||
Updated•11 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•11 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•11 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•11 years ago
|
||
Pointer to Github pull-request
Reporter | ||
Updated•11 years ago
|
Attachment #708855 -
Flags: review?(poirot.alex)
Comment 11•11 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•11 years ago
|
Keywords: intermittent-failure
Comment 12•11 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•11 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: 11 years ago
Resolution: --- → FIXED
Comment 14•11 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
•