Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error response status: 13 after connect with ie6 #20

Closed
michaelmior opened this issue Feb 19, 2014 · 17 comments
Closed

Error response status: 13 after connect with ie6 #20

michaelmior opened this issue Feb 19, 2014 · 17 comments

Comments

@michaelmior
Copy link

I get the error below consistently. With ie9 I just get "socket disconnected". Both these messages appear after a sizeable delay. Chrome and Firefox seem to work fine.

$ SAUCE_USERNAME=XXX SAUCE_ACCESS_KEY=XXX repl ie6
… setting up tunnel
… booting up internet explorer (6) on Windows XP
… ready!
ie6 › window

Error: Error response status: 13. 
    at Webdriver._newError (/usr/lib/node_modules/browser-repl/node_modules/wd/lib/webdriver.js:80:13)
    at /usr/lib/node_modules/browser-repl/node_modules/wd/lib/webdriver.js:156:25
    at /usr/lib/node_modules/browser-repl/node_modules/wd/lib/webdriver.js:411:5
    at Request._callback (/usr/lib/node_modules/browser-repl/node_modules/wd/lib/webdriver.js:281:7)
    at Request.self.callback (/usr/lib/node_modules/browser-repl/node_modules/wd/node_modules/request/request.js:122:22)
    at Request.EventEmitter.emit (events.js:98:17)
    at Request.<anonymous> (/usr/lib/node_modules/browser-repl/node_modules/wd/node_modules/request/request.js:888:14)
    at Request.EventEmitter.emit (events.js:117:20)
    at IncomingMessage.<anonymous> (/usr/lib/node_modules/browser-repl/node_modules/wd/node_modules/request/request.js:839:12)
    at IncomingMessage.EventEmitter.emit (events.js:117:20)
@TooTallNate
Copy link
Contributor

Dup of #13 really. The 13 response status appears to happen after Internet Explorer crashes (read: the entire browser quits) on the sauce vm.

@TooTallNate
Copy link
Contributor

Any help on figuring out where/why the crash is occurring would be very helpful :)

@rauchg
Copy link
Contributor

rauchg commented Feb 19, 2014

@admc seen this coming from sauce labs quite a bit. Any insight?

cc @defunctzombie

@defunctzombie
Copy link

Yea. There is more info in the error object. The value field I think. The
WD module is kinda annoying when it makes errors cause it doesnt put the
human text in the message field.
On Feb 19, 2014 1:16 AM, "Guillermo Rauch" [email protected] wrote:

@admc https://github.com/admc seen this coming from sauce labs quite a
bit. Any insight?

cc @defunctzombie https://github.com/defunctzombie

Reply to this email directly or view it on GitHubhttps://github.com//issues/20#issuecomment-35469607
.

@santiycr
Copy link

I bet you this is connected to the complexity of the window element. How do you serialize elements before pulling it from Sauce Labs?

@TooTallNate
Copy link
Contributor

@santiycr We're using our util-inspect module, which is node.js's util.inspect() function ported to the browser for old ES3 browsers.

These host objects have already been giving us a wide range of issues with operations that would normally be fine with well-behaving JS objects. No doubt in my mind that some for (var i in window.document.foo.bar) ends up crashing the browser or something silly like that :p Hopefully we can narrow it down soon.

@defunctzombie
Copy link

@TooTallNate when you see that error 13 stuff, make sure to look at the other properties of the error object as they will have additional information about the error.

@TooTallNate
Copy link
Contributor

@defunctzombie Cool, will do. Does the 13 error code have any generic meaning in the webdriver protocol?

@defunctzombie
Copy link

Not that I am aware of but I dont know anything about the protocol.
On Feb 19, 2014 5:49 PM, "Nathan Rajlich" [email protected] wrote:

@defunctzombie https://github.com/defunctzombie Cool, will do. Does the
13 error code have any generic meaning in the webdriver protocol?

Reply to this email directly or view it on GitHubhttps://github.com//issues/20#issuecomment-35559814
.

@TooTallNate
Copy link
Contributor

Lol, lovely:

13  UnknownError     An unknown server-side error occurred while processing the command.

From https://code.google.com/p/selenium/wiki/JsonWireProtocol#Response_Status_Codes

@defunctzombie
Copy link

Rofl
On Feb 19, 2014 6:06 PM, "Nathan Rajlich" [email protected] wrote:

Lol, lovely:

13 UnknownError An unknown server-side error occurred while processing the command.

From
https://code.google.com/p/selenium/wiki/JsonWireProtocol#Response_Status_Codes

Reply to this email directly or view it on GitHubhttps://github.com//issues/20#issuecomment-35561407
.

@michaelmior
Copy link
Author

I noticed that window.parent seems to be what's causing the issue. Given that it takes some time to blow up, I wonder if it's the circular reference causing the issue. That is, window.parent == window in this case.

@TooTallNate
Copy link
Contributor

@michaelmior For IE6, at least, window.parent === window is false :( But actually, window.parent === window.parent.parent is true. Regardless though, the util-inspect function should be able to handle cyclic references fine, even in IE6:

㋛ ~/browser-repl (master) ❯ node repl.js ie6
… setting up tunnel
… booting up internet explorer (6) on Windows XP
… ready!
ie6 › a = {}
{}
ie6 › a.a = a
{ a: [Circular] }
ie6 › a
{ a: [Circular] }

@michaelmior
Copy link
Author

Correct, I meant to say window.parent === window.parent.parent. Perhaps nothing to do with circular references then. But I did notice trying to log window.parent fails as well.

@santiycr
Copy link

Wouldn't be surprised if from the browser side this just manifests as one
of those good old "Script taking too long" popups of death.
I agree that is something that can get fixed (or hacked, I'd say) by
tweaking the inspect module you guys are using.

Let me know if you need me to help out from the Sauce side to show you guys
how to get more visibility into what's going on in the browser.

On Wed, Feb 19, 2014 at 3:51 PM, Michael Mior [email protected]:

Correct, I meant to say window.parent === window.parent.parent. Perhaps
nothing to do with circular references then. But I did notice trying to log
window.parent fails as well.


Reply to this email directly or view it on GitHubhttps://github.com//issues/20#issuecomment-35566718
.

@michaelmior
Copy link
Author

FWIW, I tried running a loop that just spins.

for (var i=0; i<1000000000; i++) { Math.pow(2, 999); }

In this case, I just get socket disconnected instead of error 13. Subjectively, the delay is also quite a bit longer than in the case of trying to log window.

@defunctzombie
Copy link

I kinda feel like this should be handled by saucelabs / the web driver
server better. Since it can be reproduced (from my understanding) I would
imagine it should be possible for a sauce person to run it and see the
failure?
On Feb 20, 2014 8:31 AM, "Michael Mior" [email protected] wrote:

FWIW, I tried running a loop that just spins.

for (var i=0; i<1000000000; i++) { Math.pow(2, 999); }

In this case, I just get socket disconnected instead of error 13.
Subjectively, the delay is also quite a bit longer than in the case of
trying to log window.

Reply to this email directly or view it on GitHubhttps://github.com//issues/20#issuecomment-35621224
.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants