From aa1f74031befd401cfc2740044e5165613edb89f Mon Sep 17 00:00:00 2001 From: Luis Fernando Molina Date: Fri, 30 Mar 2018 17:29:07 +0200 Subject: [PATCH] RETRY loop BUG when status report is corrupt --- .vs/AACloud/v15/.suo | Bin 90112 -> 91648 bytes Dependencies.js | 37 +++++++++++++++++-------------------- Status Report.js | 12 ++++++++++-- this.config.json | 9 +++++++-- 4 files changed, 34 insertions(+), 24 deletions(-) diff --git a/.vs/AACloud/v15/.suo b/.vs/AACloud/v15/.suo index 11010df13900667b14578bc2196e6df380dd76f1..4542d95602a3e32ee05b1479399284c01b56a4cc 100644 GIT binary patch delta 4446 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 H3flhw`uwFF delta 3686 zcmcJSdr;KZ7037dc9&gPc7gB~gauJn1zcW*pw)$45e+V=w6QG##DKw~SXnf&S{A}Y zl8{#RB>DNs7_uhBX&jaPIm2`^nPMTalOX{cCNcGy#~+R{gtjsXX~OoLb$3gmCOXqz z<}>HsbMM~!yWewP*oT$&0p-3Wky@EdCMTxdZZ{cEKCW-gzX1eH5)uRL8y!auoOut5 zutjKv* z_2AtG=sHfRQd{Rx4;&aCDU56`G0$7(z_6bKlSudi^ApN*VCo63=fKnv93(y2<-}Yf zk_aX=L>7@igb>Mul9(lvwaOMyhP6y1ZWliufaABA;P@RUti*hR1!W!)-O5oYz>8dn1ge|&t3RcOxdsL8vle$*O z#+L9hHA|Qr|4JjmbLMNDbRx{!0bD5{#Ncfg$6XktN z)YqQn!O?Uh+GCQXTERLVbco1Z9oHZo}{HC2%Gv*vhP{OUWM#+C8+ z2mgbdFA|(wOF@tz!!7TwRx2MTM+a&fGjrkPKhQNwx)D;94RGC|HZsyw7wqYGFIJ zSgmMoehBr=R~(zElaeEWz}tV7A zRdRc(LtAQ>%VHMLylFM=E6!#qpbjUC9~Xu+xNF4|j#3+BU`uJ4nl~t)7QSHuHc{cr z+4%ME-&XTU!-uWEu9*tg1?lUR0fHlH2rW@d9MLv-1Y4r5JcNdS%bih@+=U>x%0Vao zb0efka|_M`LS(dPS_JV@cFhRfjTQweRGHGWUGkp27hX3P%qf21&C^FrCXnwe{TR)K zZ@B6Qfd^LdmsUtq%_;$}U5dh<4n5s$L1?O~3k!^YDPyss^VFZxCr|Bfy*ec8UK5Vb zbYxQlg|ix5hX>_2*pvzN(qxmCB2;qvuC&K_|7QE+w&&ZC|&j-{z!3^zE#(RnBW zg`@Y06NxZOb7kD^E~F#8NVXl_Ww~g2D*}6~(`F9(#uowTIAoGc$F2w5OBeRHtXTAB zmgCF`xQZvw*k}_K8j3~TN=U;ehx72*a1cKAP6VISvU0kho9Ke5lWnByfo?2>k!7wC zJ4mL#+T~~;H93auSTth7f#Ctst^&LBT{?r_YsAKN5n{U@?3yp>KH{CClO4vh;~VhA zxuv-K{R8;g2TpM`2wsssKbHgKsTKbqhdewnRx2jNKq!9jnE{jj{toQtUx`bzAXLl| zzyQyBdeKh@g|p#xhVnbrCgn zxi~Rigq7c1l{Q~^o@Vl2QLeKnIAGj4Q;o2DS3<1Jg(c!PCG3dgtHqc2HN(#=3(ro} z=%DfYl8IU!*u>9tuwMKNfM1UJ;7UzOX}S7b&pqi`9RbOad@K7>A7%Kd zV8QMW_lZvjgM_2wo#MZ=5be?3|2cl$Iikz4dn`e$iUp^5TnYJ-^(zsguKW5VE6@Yu z3GVhe4wY2-jadM>)HD4QL_I`RzEtncTm0dD?lOELKC2*sXqX9zq*r^mSQG*oVp}%6 zcC*}%3Rnk`{L1vDJ(S@$ok#zE(mx+=mHG8M&b$FXn$E@Y^I5p{vP0CzLri~L1T;ba zX@E@-%cm)eCMP)MnfL52-`=#j4nO)T)gziTI&K84`cNZw%?7hakFZNe>Nrm*b z%%n3QU1p@eLc&Zd$LM*0dpgHGBlFQ{2vw~g31SECtxJme89g5N&{kbbo3@eIK>tS6 z(Hk1=bq4X{M2JDt*#W*G{em9^D0!7+P~hx~M?KpA9D0{P0Cr!@`SBRM8`j_t)5M?m zQ@&JO76SRb1_<#z546}W$BkDsSDc-@u;8Ep QU%HrrmkdGT@2a8wKh;FEa{vGU diff --git a/Dependencies.js b/Dependencies.js index bb746f4dd..7d4db3bbb 100644 --- a/Dependencies.js +++ b/Dependencies.js @@ -63,35 +63,32 @@ try { - switch (err.result) { - case global.DEFAULT_OK_RESPONSE.result: { + statusReportModule.status = err.message; + + switch (err.message) { + case global.DEFAULT_OK_RESPONSE.message: { logger.write("[INFO] initialize -> onLoad -> Execution finished well. -> bot = " + pDependenciesConfig[i].bot); logger.write("[INFO] initialize -> onLoad -> Execution finished well. -> process = " + pDependenciesConfig[i].process); addReport(); return; } - case global.CUSTOM_OK_RESPONSE.result: { // We need to see if we can handle this. + case "Status Report was never created.": { - if (err.message === "Status Report was never created.") { + logger.write("[WARN] initialize -> onLoad -> err.message = " + err.message); + logger.write("[WARN] initialize -> onLoad -> Report Not Found. -> bot = " + pDependenciesConfig[i].bot); + logger.write("[WARN] initialize -> onLoad -> Report Not Found. -> process = " + pDependenciesConfig[i].process); + addReport(); + return; + } - logger.write("[WARN] initialize -> onLoad -> err.message = " + err.message); - logger.write("[WARN] initialize -> onLoad -> Report Not Found. -> bot = " + pDependenciesConfig[i].bot); - logger.write("[WARN] initialize -> onLoad -> Report Not Found. -> process = " + pDependenciesConfig[i].process); - addReport(); - return; - } else { + case "Status Report is corrupt.": { - logger.write("[ERROR] initialize -> onLoad -> Response not understood. -> err.message = " + err.message); - logger.write("[ERROR] initialize -> onLoad -> Response not understood. -> bot = " + pDependenciesConfig[i].bot); - logger.write("[ERROR] initialize -> onLoad -> Response not understood. -> process = " + pDependenciesConfig[i].process); - - if (alreadyCalledBack === false) { - alreadyCalledBack = true; - callBackFunction(err); - } - return; - } + logger.write("[WARN] initialize -> onLoad -> err.message = " + err.message); + logger.write("[WARN] initialize -> onLoad -> Report Not Found. -> bot = " + pDependenciesConfig[i].bot); + logger.write("[WARN] initialize -> onLoad -> Report Not Found. -> process = " + pDependenciesConfig[i].process); + addReport(); + return; } default: { diff --git a/Status Report.js b/Status Report.js index a8fcdfeb0..8d8ba7a8b 100644 --- a/Status Report.js +++ b/Status Report.js @@ -18,6 +18,7 @@ initialize: initialize, load: load, save: save, + status: undefined, verifyMarketComplete: verifyMarketComplete }; @@ -144,8 +145,15 @@ is being updated at the moment of the read. The bot can not run without a valid Status Report but we can request the platform to retry later. */ - logger.write("[ERROR] initialize -> load -> onFileReceived -> Bot cannot execute without a valid Status report. -> Err = " + err.message); - callBackFunction(global.DEFAULT_RETRY_RESPONSE); + logger.write("[ERROR] initialize -> load -> onFileReceived -> Error Parsing the Status report. -> Err = " + err.message); + + let customFail = { + result: global.CUSTOM_FAIL_RESPONSE.result, + message: "Status Report is corrupt." + }; + logger.write("[WARN] initialize -> load -> onFileReceived -> customFail = " + customFail.message); + callBackFunction(customFail); + return; } } diff --git a/this.config.json b/this.config.json index fe651f09d..2c86886bb 100644 --- a/this.config.json +++ b/this.config.json @@ -22,13 +22,18 @@ "process": "Poloniex-Hole-Fixing" }, { - "enabled": "true", + "enabled": "false", "botPath": "../Bots/AAMasters/AABruce-Indicator-Bot", "process": "One-Min-Daily-Candles-Volumes" + }, + { + "enabled": "true", + "botPath": "../Bots/AAMasters/AACharly-Extraction-Bot", + "process": "Poloniex-Hole-Fixing" } ], "stopGracefully": "true", "exchangeSimulationMode": "false", - "storageConnStringFolder": "Mixed", + "storageConnStringFolder": "Production", "maxLogLoops": 10 } \ No newline at end of file