Bug #905
Javascript throws exception when left idle
Status: | Closed | Start date: | 07/21/2011 | |
---|---|---|---|---|
Priority: | High | Due date: | ||
Assignee: | Kostas Papadimitriou | % Done: | 0% |
|
Category: | Cyclades UI | Spent time: | - | |
Target version: | v0.5.4 |
Description
Feedback message:
Error report
------------
Code: -5
Type: UI Error
Action: Update VMs
Data: [Exception... "Component returned failure code: 0x80040111 (NS_ERROR_NOT_AVAILABLE) [nsIXMLHttpRequest.status]"
nsresult: "0x80040111 (NS_ERROR_NOT_AVAILABLE)" location: "JS frame :: https://okeanos.grnet.gr/static/synnefo.js ::
<TOP_LEVEL> :: line 375" data: no]
Please describe the actions that triggered the error:
browser left inactive, after minutes of inactivity, this error came up.
User accepted data send:
True
User info:
ID: 51
Email: nkoziris@cslab.ece.ntua.gr
User application data:
{"servers":{"0":{"status":"ACTIVE","updated":"2011-07-19T19:31:31+00:00","hostId":"","addresses":{"values":[{"firewallProfile":"DISABLED
","mac":"aa:0c:ea:0c:b5:30","values":[{"version":4,"addr":"62.217.112.15"},{"version":6,"addr":"2001:648:2ffc:1112:a80c:eaff:fe0c:b530"
}],"id":"public","name":"public"}]},"name":"kubuntu","imageRef":4,"created":"2011-07-19T18:31:43+00:00","flavorRef":1,"progress":100,"i
d":19,"metadata":{"values":{"OS":"kubuntu"}}},"1":{"status":"ACTIVE","updated":"2011-07-19T22:36:05+00:00","hostId":"","addresses":{"va
+lues":[{"firewallProfile":"DISABLED","mac":"aa:0c:ea:52:11:cc","values":[{"version":4,"addr":"62.217.112.24"},{"version":6,"addr":"2001
:648:2ffc:1112:a80c:eaff:fe52:11cc"}],"id":"public","name":"public"}]},"name":"stargate-4","imageRef":7,"created":"2011-07-19T22:16:51+
00:00","flavorRef":1,"progress":100,"id":43,"metadata":{"values":{"OS":"windows"}}},"2":{"status":"ACTIVE","updated":"2011-07-20T18:23:
+01+00:00","hostId":"","addresses":{"values":[{"firewallProfile":"DISABLED","m
ac":"aa:0c:ea:79:37:ed","values":[{"version":4,"addr":"62.217.112.52"},{"version":6,"addr":"2001:648:2ffc:1112:a80c:eaff:fe79:37ed"}],"i
+d":"public","name":"public"}]},"name":"stargate-5","imageRef":7,"created":"2011-07-20T12:53:03+00:00","flavorRef":1,"progress":100,"id"
:100,"metadata":{"values":{"OS":"windows"}}}},"client":{"browser":{"mozilla":true,"version":"5.0.1"},"screen":{"top":176,"height":1024,
"width":1280,"left":1920,"pixelDepth":24,"colorDepth":24,"availWidth":1280,"availHeight":990,"availLeft":1920,"availTop":176},"client":
{"os":"Windows","browser":"Firefox"}},"dates":{"now":"2011-07-20T19:43:49.660Z","lastUpdate":"2011-07-20T19:04:02.000Z"}}
Associated revisions
Improve UI exception handling, Refs #905
- Different error codes for different ui errors
- Don't block interaction for specific DOM exceptions (invalid xhr state)
- Append last ajax request information when reporting an error
History
#1 Updated by Vangelis Koukis almost 12 years ago
I think this is more of the same:
Feedback message:
Error report
------------
Code: -5
Type: UI Error
Action: Update VMs
Data: [Exception... "Component returned failure code: 0x80040111 (NS_ERROR_NOT_AVAILABLE) [nsIXMLHttpRequest.status]"
+nsresult: "0x80040111 (NS_ERROR_NOT_AVAILABLE)" location: "JS frame :: https://okeanos.grnet.gr/static/synnefo.js ::
+anonymous :: line 375" data: no]
Please describe the actions that triggered the error:
Είχα ανοιχτό το ui, ξεχασμένο σε ένα tab
User accepted data send:
True
User info:
#2 Updated by Kostas Papadimitriou almost 12 years ago
Its hard to reproduce but it seems that jquery sometimes executes error callbacks while browser xhr object is in invalid state.
The error seems to get triggered when trying to access the status attribute of that xhr object which follows to the UI error.
Workaround
Since the error happens on scattered ajax calls, the UI should not block user interaction for those specific exceptions.
#3 Updated by Kostas Papadimitriou almost 12 years ago
workaround + improvements for better user information reporting committed on
#4 Updated by Kostas Papadimitriou almost 12 years ago
- Status changed from Assigned to Feedback
#5 Updated by Kostas Papadimitriou almost 12 years ago
improved ajax calls exceptions handling.
Jquery provides textStatus of the error occured even for errors that provide invalid xhr objects.
UI now fallbacks to error overlay, displaying textStatus content.
thanks to vkoukis for identifying that the `timeout errors` caused xhr object to be left in invalid state.
#6 Updated by Vangelis Koukis almost 12 years ago
- Status changed from Feedback to Closed
This seems to be working properly, will be reopen if we encounter something similar in the future.