Fall back to legacy events on server failure (work around #2).
This commit is contained in:
parent
5bd12c5f9e
commit
26d61af902
@ -413,7 +413,7 @@ export class Xapi extends EventEmitter {
|
|||||||
error => {
|
error => {
|
||||||
// Unwrap error if necessary.
|
// Unwrap error if necessary.
|
||||||
if (error instanceof Bluebird.OperationalError) {
|
if (error instanceof Bluebird.OperationalError) {
|
||||||
({ error } = error)
|
error = error.cause
|
||||||
}
|
}
|
||||||
|
|
||||||
console.error(
|
console.error(
|
||||||
@ -552,7 +552,14 @@ export class Xapi extends EventEmitter {
|
|||||||
)
|
)
|
||||||
|
|
||||||
return loop().catch(error => {
|
return loop().catch(error => {
|
||||||
if (isMethodUnknown(error)) {
|
if (
|
||||||
|
isMethodUnknown(error) ||
|
||||||
|
|
||||||
|
// If the server failed, it is probably due to an excessively
|
||||||
|
// large response.
|
||||||
|
// Falling back to legacy events watch should be enough.
|
||||||
|
error && error.res.statusCode === 500
|
||||||
|
) {
|
||||||
return this._watchEventsLegacy()
|
return this._watchEventsLegacy()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user