You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openwhisk.apache.org by be...@apache.org on 2017/07/18 18:21:06 UTC
[incubator-openwhisk-package-alarms] branch master updated: Handle
db connection error during follow (#77)
This is an automated email from the ASF dual-hosted git repository.
berstler pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-openwhisk-package-alarms.git
The following commit(s) were added to refs/heads/master by this push:
new 512b90c Handle db connection error during follow (#77)
512b90c is described below
commit 512b90cd59e178b03c1726f123294bc23102b4fe
Author: Jason Peterson <ja...@us.ibm.com>
AuthorDate: Tue Jul 18 14:21:04 2017 -0400
Handle db connection error during follow (#77)
---
provider/lib/utils.js | 61 ++++++++++++++++++++++++++++++++-------------------
1 file changed, 38 insertions(+), 23 deletions(-)
diff --git a/provider/lib/utils.js b/provider/lib/utils.js
index 5008c70..91d25de 100644
--- a/provider/lib/utils.js
+++ b/provider/lib/utils.js
@@ -271,34 +271,49 @@ module.exports = function(
this.setupFollow = function(seq) {
var method = 'setupFollow';
- var feed = triggerDB.follow({ since: seq, include_docs: true, filter: ddname + '/' + filter, query_params: { worker: utils.worker } });
+ try {
+ var feed = triggerDB.follow({
+ since: seq,
+ include_docs: true,
+ filter: ddname + '/' + filter,
+ query_params: {worker: utils.worker}
+ });
- feed.on('change', (change) => {
- var triggerIdentifier = change.id;
- var doc = change.doc;
+ feed.on('change', (change) => {
+ var triggerIdentifier = change.id;
+ var doc = change.doc;
- logger.info(method, 'got change for trigger', triggerIdentifier);
+ logger.info(method, 'got change for trigger', triggerIdentifier);
- if (utils.triggers[triggerIdentifier]) {
- if (doc.status && doc.status.active === false) {
- utils.deleteTrigger(triggerIdentifier);
+ if (utils.triggers[triggerIdentifier]) {
+ if (doc.status && doc.status.active === false) {
+ utils.deleteTrigger(triggerIdentifier);
+ }
}
- }
- else {
- //ignore changes to disabled triggers
- if (!doc.status || doc.status.active === true) {
- utils.createTrigger(triggerIdentifier, doc)
- .then(triggerIdentifier => {
- logger.info(method, triggerIdentifier, 'created successfully');
- }).catch(err => {
- var message = 'Automatically disabled after receiving exception on create trigger: ' + err;
- utils.disableTrigger(triggerIdentifier, undefined, message);
- logger.error(method, 'Disabled trigger', triggerIdentifier, 'due to exception:', err);
- });
+ else {
+ //ignore changes to disabled triggers
+ if (!doc.status || doc.status.active === true) {
+ utils.createTrigger(triggerIdentifier, doc)
+ .then(triggerIdentifier => {
+ logger.info(method, triggerIdentifier, 'created successfully');
+ }).catch(err => {
+ var message = 'Automatically disabled after receiving exception on create trigger: ' + err;
+ utils.disableTrigger(triggerIdentifier, undefined, message);
+ logger.error(method, 'Disabled trigger', triggerIdentifier, 'due to exception:', err);
+ });
+ }
}
- }
- });
- feed.follow();
+ });
+
+ feed.on('error', function (err) {
+ logger.error(method, err);
+ });
+
+ feed.follow();
+ }
+ catch (err) {
+ logger.error(method, err);
+ }
};
this.authorize = function(req, res, next) {
--
To stop receiving notification emails like this one, please contact
['"commits@openwhisk.apache.org" <co...@openwhisk.apache.org>'].