@hotmeshio/hotmesh 0.3.22 → 0.3.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -7
- package/build/modules/enums.d.ts +2 -0
- package/build/modules/enums.js +3 -1
- package/build/modules/key.js +1 -1
- package/build/modules/utils.js +1 -1
- package/build/package.json +1 -1
- package/build/services/activities/activity.js +1 -1
- package/build/services/activities/await.js +1 -1
- package/build/services/activities/cycle.js +1 -1
- package/build/services/activities/hook.js +1 -1
- package/build/services/activities/index.js +1 -1
- package/build/services/activities/interrupt.js +1 -1
- package/build/services/activities/signal.js +1 -1
- package/build/services/activities/trigger.js +1 -1
- package/build/services/activities/worker.js +1 -1
- package/build/services/collator/index.js +1 -1
- package/build/services/compiler/deployer.js +1 -1
- package/build/services/compiler/index.js +1 -1
- package/build/services/compiler/validator.js +1 -1
- package/build/services/connector/factory.js +0 -1
- package/build/services/connector/providers/postgres.d.ts +1 -1
- package/build/services/connector/providers/postgres.js +2 -1
- package/build/services/engine/index.js +1 -1
- package/build/services/exporter/index.js +1 -1
- package/build/services/mapper/index.js +1 -1
- package/build/services/meshflow/exporter.js +1 -1
- package/build/services/pipe/functions/array.js +1 -1
- package/build/services/pipe/functions/bitwise.js +1 -1
- package/build/services/pipe/functions/conditional.js +1 -1
- package/build/services/pipe/functions/cron.js +1 -1
- package/build/services/pipe/functions/date.js +1 -1
- package/build/services/pipe/functions/index.js +1 -1
- package/build/services/pipe/functions/json.js +1 -1
- package/build/services/pipe/functions/logical.js +1 -1
- package/build/services/pipe/functions/math.js +1 -1
- package/build/services/pipe/functions/number.js +1 -1
- package/build/services/pipe/functions/object.js +1 -1
- package/build/services/pipe/functions/string.js +1 -1
- package/build/services/pipe/functions/symbol.js +1 -1
- package/build/services/pipe/functions/unary.js +1 -1
- package/build/services/pipe/index.js +1 -1
- package/build/services/quorum/index.js +1 -1
- package/build/services/reporter/index.js +1 -1
- package/build/services/router/index.js +1 -1
- package/build/services/search/providers/postgres/postgres.js +1 -1
- package/build/services/search/providers/redis/ioredis.js +1 -1
- package/build/services/search/providers/redis/redis.js +1 -1
- package/build/services/serializer/index.js +1 -1
- package/build/services/store/providers/postgres/kvsql.js +1 -1
- package/build/services/store/providers/postgres/kvtables.js +1 -1
- package/build/services/store/providers/postgres/kvtransaction.js +1 -1
- package/build/services/store/providers/postgres/kvtypes/hash.js +1 -1
- package/build/services/store/providers/postgres/kvtypes/list.js +1 -1
- package/build/services/store/providers/postgres/kvtypes/string.js +1 -1
- package/build/services/store/providers/postgres/kvtypes/zset.js +1 -1
- package/build/services/store/providers/postgres/postgres.js +1 -1
- package/build/services/store/providers/redis/_base.js +1 -1
- package/build/services/store/providers/redis/ioredis.js +1 -1
- package/build/services/store/providers/redis/redis.js +1 -1
- package/build/services/store/providers/store-initializable.js +1 -1
- package/build/services/stream/providers/nats/nats.js +1 -1
- package/build/services/stream/providers/postgres/postgres.js +1 -1
- package/build/services/stream/providers/redis/ioredis.js +1 -1
- package/build/services/stream/providers/redis/redis.js +1 -1
- package/build/services/stream/providers/stream-initializable.js +1 -1
- package/build/services/sub/factory.d.ts +1 -1
- package/build/services/sub/factory.js +4 -4
- package/build/services/sub/providers/nats/nats.js +1 -1
- package/build/services/sub/providers/postgres/postgres.js +1 -1
- package/build/services/sub/providers/redis/ioredis.js +1 -1
- package/build/services/sub/providers/redis/redis.js +1 -1
- package/build/services/task/index.js +1 -1
- package/build/services/telemetry/index.js +1 -1
- package/build/services/worker/index.js +1 -1
- package/package.json +1 -1
- package/types/postgres.ts +1 -1
- package/types/provider.ts +1 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';function _0x189a(_0x4a4557,_0x36f363){const _0x54f20a=_0x54f2();return _0x189a=function(_0x189ada,_0xb885d){_0x189ada=_0x189ada-0x1ce;let _0x4d1c49=_0x54f20a[_0x189ada];return _0x4d1c49;},_0x189a(_0x4a4557,_0x36f363);}(function(_0x3cb248,_0x41aa47){const _0x58dd9b=_0x189a,_0x5de21e=_0x3cb248();while(!![]){try{const _0x4f6c18=parseInt(_0x58dd9b(0x1d4))/0x1+-parseInt(_0x58dd9b(0x1cf))/0x2+-parseInt(_0x58dd9b(0x1d0))/0x3*(-parseInt(_0x58dd9b(0x1d1))/0x4)+-parseInt(_0x58dd9b(0x1d6))/0x5+-parseInt(_0x58dd9b(0x1d7))/0x6+-parseInt(_0x58dd9b(0x1ce))/0x7*(parseInt(_0x58dd9b(0x1d5))/0x8)+parseInt(_0x58dd9b(0x1d3))/0x9*(parseInt(_0x58dd9b(0x1d2))/0xa);if(_0x4f6c18===_0x41aa47)break;else _0x5de21e['push'](_0x5de21e['shift']());}catch(_0x1ac3b2){_0x5de21e['push'](_0x5de21e['shift']());}}}(_0x54f2,0xd08ea));Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['Router']=void 0x0;const enums_1=require('../../modules/enums'),key_1=require('../../modules/key'),utils_1=require('../../modules/utils'),telemetry_1=require('../telemetry'),stream_1=require('../../types/stream');class Router{constructor(_0x3bb08b,_0x19e74,_0x86465f){this['throttle']=0x0,this['errorCount']=0x0,this['counts']={},this['currentTimerId']=null,this['sleepPromiseResolve']=null,this['innerPromiseResolve']=null,this['isSleeping']=![],this['sleepTimout']=null,this['appId']=_0x3bb08b['appId'],this['guid']=_0x3bb08b['guid'],this['role']=_0x3bb08b['role'],this['topic']=_0x3bb08b['topic'],this['stream']=_0x19e74,this['throttle']=_0x3bb08b['throttle'],this['reclaimDelay']=_0x3bb08b['reclaimDelay']||enums_1['HMSH_XCLAIM_DELAY_MS'],this['reclaimCount']=_0x3bb08b['reclaimCount']||enums_1['HMSH_XCLAIM_COUNT'],this['logger']=_0x86465f,this['readonly']=_0x3bb08b['readonly']||![],this['resetThrottleState']();}['resetThrottleState'](){this['sleepPromiseResolve']=null,this['innerPromiseResolve']=null,this['isSleeping']=![],this['sleepTimout']=null;}async['createGroup'](_0x554fed,_0x31f797){try{await this['stream']['createConsumerGroup'](_0x554fed,_0x31f797);}catch(_0x54e890){this['logger']['debug']('router-stream-group-exists',{'stream':_0x554fed,'group':_0x31f797});}}async['publishMessage'](_0x51385f,_0xfdfe9e,_0x2f17c6){const _0x1aff3f=_0xfdfe9e?.['code']||'200';this['counts'][_0x1aff3f]=(this['counts'][_0x1aff3f]||0x0)+0x1;const _0xd67ab5=this['stream']['mintKey'](key_1['KeyType']['STREAMS'],{'topic':_0x51385f}),_0x24dcfb=await this['stream']['publishMessages'](_0xd67ab5,[JSON['stringify'](_0xfdfe9e)],{'transaction':_0x2f17c6});return _0x24dcfb[0x0];}async['customSleep'](){if(this['throttle']===0x0)return;if(this['isSleeping'])return;this['isSleeping']=!![];const _0x408cf3=Date['now']();await new Promise(async _0x3f51ea=>{this['sleepPromiseResolve']=_0x3f51ea;let _0x4e8948=Date['now']()-_0x408cf3;while(_0x4e8948<this['throttle']){await new Promise(_0x38e73d=>{this['innerPromiseResolve']=_0x38e73d,this['sleepTimout']=setTimeout(_0x38e73d,this['throttle']-_0x4e8948);}),_0x4e8948=Date['now']()-_0x408cf3;}this['resetThrottleState'](),_0x3f51ea();});}async['consumeMessages'](_0x5b23e4,_0x2c48c2,_0x2f99dd,_0x35b609){if(this['readonly']){this['logger']['info']('router-stream-readonly',{'group':_0x2c48c2,'consumer':_0x2f99dd,'stream':_0x5b23e4});return;}this['logger']['info']('router-stream-starting',{'group':_0x2c48c2,'consumer':_0x2f99dd,'stream':_0x5b23e4}),Router['instances']['add'](this),this['shouldConsume']=!![],await this['createGroup'](_0x5b23e4,_0x2c48c2);let _0x5212c8=Date['now']();async function _0x4b05bd(){await this['customSleep']();if(this['isStopped'](_0x2c48c2,_0x2f99dd,_0x5b23e4))return;else{if(this['isPaused']()){setImmediate(_0x4b05bd['bind'](this));return;}}const _0x40ae68=enums_1['HMSH_BLOCK_TIME_MS']+Math['round'](enums_1['HMSH_BLOCK_TIME_MS']*Math['random']());try{const _0x5ac4e6=await this['stream']['consumeMessages'](_0x5b23e4,_0x2c48c2,_0x2f99dd,{'blockTimeout':_0x40ae68});if(this['isStopped'](_0x2c48c2,_0x2f99dd,_0x5b23e4))return;else{if(this['isPaused']()){setImmediate(_0x4b05bd['bind'](this));return;}}for(let _0x19dce8=0x0;_0x19dce8<_0x5ac4e6['length'];_0x19dce8++){const _0x42ae32=_0x5ac4e6[_0x19dce8];await this['consumeOne'](_0x5b23e4,_0x2c48c2,_0x42ae32['id'],_0x42ae32['data'],_0x35b609);}const _0x3f3a9f=Date['now']();if(this['stream']['getProviderSpecificFeatures']()['supportsRetry']&&_0x3f3a9f-_0x5212c8>this['reclaimDelay']){_0x5212c8=_0x3f3a9f;const _0x3665b7=await this['stream']['retryMessages'](_0x5b23e4,_0x2c48c2,{'consumerName':_0x2f99dd,'minIdleTime':this['reclaimDelay'],'limit':enums_1['HMSH_XPENDING_COUNT']});for(let _0x1e6413=0x0;_0x1e6413<_0x3665b7['length'];_0x1e6413++){const _0x279da6=_0x3665b7[_0x1e6413];await this['consumeOne'](_0x5b23e4,_0x2c48c2,_0x279da6['id'],_0x279da6['data'],_0x35b609);}}setImmediate(_0x4b05bd['bind'](this));}catch(_0x3c3e9f){if(this['shouldConsume']&&process['env']['NODE_ENV']!=='test'){this['logger']['error']('router-stream-error',{'err':_0x3c3e9f,'stream':_0x5b23e4,'group':_0x2c48c2,'consumer':_0x2f99dd}),this['errorCount']++;const _0x5e4680=Math['min'](enums_1['HMSH_GRADUATED_INTERVAL_MS']*0x2**this['errorCount'],enums_1['HMSH_MAX_TIMEOUT_MS']);setTimeout(_0x4b05bd['bind'](this),_0x5e4680);}}}_0x4b05bd['call'](this);}['isStreamMessage'](_0x10bbb4){return Array['isArray'](_0x10bbb4)&&Array['isArray'](_0x10bbb4[0x0]);}['isPaused'](){return this['throttle']===enums_1['MAX_DELAY'];}['isStopped'](_0x591c35,_0x2aa712,_0x98da03){return!this['shouldConsume']&&this['logger']['info']('router-stream-stopped',{'group':_0x591c35,'consumer':_0x2aa712,'stream':_0x98da03}),!this['shouldConsume'];}async['consumeOne'](_0x48dbcf,_0x44a3ce,_0x48200b,_0x3fc983,_0x22ff94){this['logger']['debug']('stream-read-one',{'group':_0x44a3ce,'stream':_0x48dbcf,'id':_0x48200b});let _0x234569,_0x511eee;try{_0x511eee=new telemetry_1['TelemetryService'](this['appId']),_0x511eee['startStreamSpan'](_0x3fc983,this['role']),_0x234569=await this['execStreamLeg'](_0x3fc983,_0x48dbcf,_0x48200b,_0x22ff94['bind'](this)),_0x234569?.['status']===stream_1['StreamStatus']['ERROR']&&_0x511eee['setStreamError']('Function\x20Status\x20Code\x20'+(_0x234569['code']||enums_1['HMSH_CODE_UNKNOWN'])),this['errorCount']=0x0;}catch(_0x37f16d){this['logger']['error']('stream-read-one-error',{'group':_0x44a3ce,'stream':_0x48dbcf,'id':_0x48200b,'err':_0x37f16d}),_0x511eee['setStreamError'](_0x37f16d['message']);}const _0x101300=await this['publishResponse'](_0x3fc983,_0x234569);_0x511eee['setStreamAttributes']({'app.worker.mid':_0x101300}),await this['ackAndDelete'](_0x48dbcf,_0x44a3ce,_0x48200b),_0x511eee['endStreamSpan'](),this['logger']['debug']('stream-read-one-end',{'group':_0x44a3ce,'stream':_0x48dbcf,'id':_0x48200b});}async['execStreamLeg'](_0x408c97,_0x43cb9e,_0x5dd826,_0x12713e){let _0x5c8983;try{_0x5c8983=await _0x12713e(_0x408c97);}catch(_0x481e27){this['logger']['error']('stream-call-function-error',{..._0x481e27,'input':_0x408c97,'stack':_0x481e27['stack'],'message':_0x481e27['message'],'name':_0x481e27['name'],'stream':_0x43cb9e,'id':_0x5dd826}),_0x5c8983=this['structureUnhandledError'](_0x408c97,_0x481e27);}return _0x5c8983;}async['ackAndDelete'](_0x4a3961,_0x93a2d0,_0x5c05c1){await this['stream']['ackAndDelete'](_0x4a3961,_0x93a2d0,[_0x5c05c1]);}async['publishResponse'](_0x4c2348,_0xe6603a){if(_0xe6603a&&typeof _0xe6603a==='object'){if(_0xe6603a['status']==='error'){const [_0x12fe04,_0x483bea]=this['shouldRetry'](_0x4c2348,_0xe6603a);if(_0x12fe04)return await(0x0,utils_1['sleepFor'])(_0x483bea),await this['publishMessage'](_0x4c2348['metadata']['topic'],{'data':_0x4c2348['data'],'metadata':{..._0x4c2348['metadata'],'try':(_0x4c2348['metadata']['try']||0x0)+0x1},'policies':_0x4c2348['policies']});else _0xe6603a=this['structureError'](_0x4c2348,_0xe6603a);}else typeof _0xe6603a['metadata']!=='object'?_0xe6603a['metadata']={..._0x4c2348['metadata'],'guid':(0x0,utils_1['guid'])()}:_0xe6603a['metadata']['guid']=(0x0,utils_1['guid'])();return _0xe6603a['type']=stream_1['StreamDataType']['RESPONSE'],await this['publishMessage'](null,_0xe6603a);}}['shouldRetry'](_0x46774f,_0x3246dc){const _0x10b65d=_0x46774f['policies']?.['retry'],_0x2fdff6=_0x3246dc['code']['toString'](),_0x424ce5=_0x10b65d?.[_0x2fdff6],_0x482dd1=_0x424ce5?.[0x0],_0x370c39=Math['min'](_0x46774f['metadata']['try']||0x0,enums_1['HMSH_MAX_RETRIES']);if(_0x482dd1>_0x370c39)return[!![],Math['pow'](0xa,_0x370c39+0x1)];return[![],0x0];}['structureUnhandledError'](_0x48e909,_0x5f5958){const _0x3939d8={};return typeof _0x5f5958['message']==='string'?_0x3939d8['message']=_0x5f5958['message']:_0x3939d8['message']=enums_1['HMSH_STATUS_UNKNOWN'],typeof _0x5f5958['stack']==='string'&&(_0x3939d8['stack']=_0x5f5958['stack']),typeof _0x5f5958['name']==='string'&&(_0x3939d8['name']=_0x5f5958['name']),{'status':'error','code':enums_1['HMSH_CODE_UNKNOWN'],'metadata':{..._0x48e909['metadata'],'guid':(0x0,utils_1['guid'])()},'data':_0x3939d8};}['structureUnacknowledgedError'](_0x4c0c97){const _0x2b217c='stream\x20message\x20max\x20delivery\x20count\x20exceeded',_0x1b8917=enums_1['HMSH_CODE_UNACKED'],_0x399286={'message':_0x2b217c,'code':_0x1b8917},_0x21ef74={'metadata':{..._0x4c0c97['metadata'],'guid':(0x0,utils_1['guid'])()},'status':stream_1['StreamStatus']['ERROR'],'code':_0x1b8917,'data':_0x399286};return delete _0x21ef74['metadata']['topic'],_0x21ef74;}['structureError'](_0xea5dc0,_0x1508cc){const _0x5c97bb=_0x1508cc['data']?.['message']?_0x1508cc['data']?.['message']['toString']():enums_1['HMSH_STATUS_UNKNOWN'],_0x155809=_0x1508cc['code']||_0x1508cc['data']?.['code'],_0x233f3d=isNaN(_0x155809)?enums_1['HMSH_CODE_UNKNOWN']:parseInt(_0x155809['toString']()),_0x277713=_0x1508cc['data']?.['stack']?_0x1508cc['data']?.['stack']['toString']():undefined,_0x18de24={'message':_0x5c97bb,'code':_0x233f3d,'stack':_0x277713};return typeof _0x1508cc['data']?.['error']==='object'&&(_0x18de24['error']={..._0x1508cc['data']['error']}),{'status':stream_1['StreamStatus']['ERROR'],'code':_0x233f3d,'stack':_0x277713,'metadata':{..._0xea5dc0['metadata'],'guid':(0x0,utils_1['guid'])()},'data':_0x18de24};}static async['stopConsuming'](){for(const _0x5ba0a8 of[...Router['instances']]){_0x5ba0a8['stopConsuming']();}await(0x0,utils_1['sleepFor'])(enums_1['HMSH_BLOCK_TIME_MS']*0x2);}async['stopConsuming'](){this['shouldConsume']=![],this['logger']['info']('router-stream-stopping',this['topic']?{'topic':this['topic']}:undefined),this['cancelThrottle']();}['cancelThrottle'](){this['sleepTimout']&&clearTimeout(this['sleepTimout']),this['resetThrottleState']();}['setThrottle'](_0x2bcc8d){if(!Number['isInteger'](_0x2bcc8d)||_0x2bcc8d<0x0||_0x2bcc8d>enums_1['MAX_DELAY'])throw new Error('Throttle\x20must\x20be\x20a\x20non-negative\x20integer\x20and\x20not\x20exceed\x20'+enums_1['MAX_DELAY']+'\x20ms;\x20send\x20-1\x20to\x20throttle\x20indefinitely');const _0x4fdbc4=_0x2bcc8d<this['throttle'];this['throttle']=_0x2bcc8d,_0x4fdbc4&&(this['sleepTimout']&&clearTimeout(this['sleepTimout']),this['innerPromiseResolve']&&this['innerPromiseResolve']());}}function _0x54f2(){const _0x441451=['1431651ZhntAm','4oxztGZ','270ImLDvJ','752940IODPuk','35297qWkXew','8GRPPMd','1447860ykCMiz','230442lnhCqi','7200606HrYJTq','1120894xPJzTF'];_0x54f2=function(){return _0x441451;};return _0x54f2();}exports['Router']=Router,Router['instances']=new Set();
|
|
1
|
+
'use strict';(function(_0x4bacf8,_0xd8cd59){const _0x30e526=_0x7812,_0x35f308=_0x4bacf8();while(!![]){try{const _0x58485d=-parseInt(_0x30e526(0x93))/0x1*(parseInt(_0x30e526(0x95))/0x2)+parseInt(_0x30e526(0x94))/0x3*(-parseInt(_0x30e526(0x97))/0x4)+-parseInt(_0x30e526(0x9b))/0x5+parseInt(_0x30e526(0x96))/0x6+parseInt(_0x30e526(0x9c))/0x7+-parseInt(_0x30e526(0x9a))/0x8*(parseInt(_0x30e526(0x92))/0x9)+-parseInt(_0x30e526(0x99))/0xa*(-parseInt(_0x30e526(0x98))/0xb);if(_0x58485d===_0xd8cd59)break;else _0x35f308['push'](_0x35f308['shift']());}catch(_0x189122){_0x35f308['push'](_0x35f308['shift']());}}}(_0x45e2,0xa73d3));Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['Router']=void 0x0;function _0x45e2(){const _0x157d77=['2248064mIRhbf','9iSaMVM','44035mRPwYC','888rqTdWE','42EnJjKx','2269578YFoCcJ','15100sBQyZh','440NgOVDQ','871360bCjSXA','1463464frbQiq','6373880sczbHt'];_0x45e2=function(){return _0x157d77;};return _0x45e2();}function _0x7812(_0x2c3307,_0x5d9444){const _0x45e24f=_0x45e2();return _0x7812=function(_0x7812d8,_0x4e7e9c){_0x7812d8=_0x7812d8-0x92;let _0x249e62=_0x45e24f[_0x7812d8];return _0x249e62;},_0x7812(_0x2c3307,_0x5d9444);}const enums_1=require('../../modules/enums'),key_1=require('../../modules/key'),utils_1=require('../../modules/utils'),telemetry_1=require('../telemetry'),stream_1=require('../../types/stream');class Router{constructor(_0x5ab7b5,_0x36c1f6,_0x5041be){this['throttle']=0x0,this['errorCount']=0x0,this['counts']={},this['currentTimerId']=null,this['sleepPromiseResolve']=null,this['innerPromiseResolve']=null,this['isSleeping']=![],this['sleepTimout']=null,this['appId']=_0x5ab7b5['appId'],this['guid']=_0x5ab7b5['guid'],this['role']=_0x5ab7b5['role'],this['topic']=_0x5ab7b5['topic'],this['stream']=_0x36c1f6,this['throttle']=_0x5ab7b5['throttle'],this['reclaimDelay']=_0x5ab7b5['reclaimDelay']||enums_1['HMSH_XCLAIM_DELAY_MS'],this['reclaimCount']=_0x5ab7b5['reclaimCount']||enums_1['HMSH_XCLAIM_COUNT'],this['logger']=_0x5041be,this['readonly']=_0x5ab7b5['readonly']||![],this['resetThrottleState']();}['resetThrottleState'](){this['sleepPromiseResolve']=null,this['innerPromiseResolve']=null,this['isSleeping']=![],this['sleepTimout']=null;}async['createGroup'](_0x26bd7f,_0x914ef9){try{await this['stream']['createConsumerGroup'](_0x26bd7f,_0x914ef9);}catch(_0x3d809c){this['logger']['debug']('router-stream-group-exists',{'stream':_0x26bd7f,'group':_0x914ef9});}}async['publishMessage'](_0xfbff71,_0x296af2,_0x59209d){const _0x42ea6b=_0x296af2?.['code']||'200';this['counts'][_0x42ea6b]=(this['counts'][_0x42ea6b]||0x0)+0x1;const _0x46fcd5=this['stream']['mintKey'](key_1['KeyType']['STREAMS'],{'topic':_0xfbff71}),_0x10ed59=await this['stream']['publishMessages'](_0x46fcd5,[JSON['stringify'](_0x296af2)],{'transaction':_0x59209d});return _0x10ed59[0x0];}async['customSleep'](){if(this['throttle']===0x0)return;if(this['isSleeping'])return;this['isSleeping']=!![];const _0x3677da=Date['now']();await new Promise(async _0x18a4c8=>{this['sleepPromiseResolve']=_0x18a4c8;let _0x2137d4=Date['now']()-_0x3677da;while(_0x2137d4<this['throttle']){await new Promise(_0x20b02c=>{this['innerPromiseResolve']=_0x20b02c,this['sleepTimout']=setTimeout(_0x20b02c,this['throttle']-_0x2137d4);}),_0x2137d4=Date['now']()-_0x3677da;}this['resetThrottleState'](),_0x18a4c8();});}async['consumeMessages'](_0x225511,_0x2c46f6,_0x4e62f2,_0x482851){if(this['readonly']){this['logger']['info']('router-stream-readonly',{'group':_0x2c46f6,'consumer':_0x4e62f2,'stream':_0x225511});return;}this['logger']['info']('router-stream-starting',{'group':_0x2c46f6,'consumer':_0x4e62f2,'stream':_0x225511}),Router['instances']['add'](this),this['shouldConsume']=!![],await this['createGroup'](_0x225511,_0x2c46f6);let _0x46b5b5=Date['now']();async function _0x2d3b47(){await this['customSleep']();if(this['isStopped'](_0x2c46f6,_0x4e62f2,_0x225511))return;else{if(this['isPaused']()){setImmediate(_0x2d3b47['bind'](this));return;}}const _0x181036=enums_1['HMSH_BLOCK_TIME_MS']+Math['round'](enums_1['HMSH_BLOCK_TIME_MS']*Math['random']());try{const _0x38a231=await this['stream']['consumeMessages'](_0x225511,_0x2c46f6,_0x4e62f2,{'blockTimeout':_0x181036});if(this['isStopped'](_0x2c46f6,_0x4e62f2,_0x225511))return;else{if(this['isPaused']()){setImmediate(_0x2d3b47['bind'](this));return;}}for(let _0x5343c1=0x0;_0x5343c1<_0x38a231['length'];_0x5343c1++){const _0x5813cf=_0x38a231[_0x5343c1];await this['consumeOne'](_0x225511,_0x2c46f6,_0x5813cf['id'],_0x5813cf['data'],_0x482851);}const _0x1864be=Date['now']();if(this['stream']['getProviderSpecificFeatures']()['supportsRetry']&&_0x1864be-_0x46b5b5>this['reclaimDelay']){_0x46b5b5=_0x1864be;const _0x2ee1f3=await this['stream']['retryMessages'](_0x225511,_0x2c46f6,{'consumerName':_0x4e62f2,'minIdleTime':this['reclaimDelay'],'limit':enums_1['HMSH_XPENDING_COUNT']});for(let _0xeb6ff4=0x0;_0xeb6ff4<_0x2ee1f3['length'];_0xeb6ff4++){const _0x4ac8bd=_0x2ee1f3[_0xeb6ff4];await this['consumeOne'](_0x225511,_0x2c46f6,_0x4ac8bd['id'],_0x4ac8bd['data'],_0x482851);}}setImmediate(_0x2d3b47['bind'](this));}catch(_0x299035){if(this['shouldConsume']&&process['env']['NODE_ENV']!=='test'){this['logger']['error']('router-stream-error',{'err':_0x299035,'stream':_0x225511,'group':_0x2c46f6,'consumer':_0x4e62f2}),this['errorCount']++;const _0x2d89f7=Math['min'](enums_1['HMSH_GRADUATED_INTERVAL_MS']*0x2**this['errorCount'],enums_1['HMSH_MAX_TIMEOUT_MS']);setTimeout(_0x2d3b47['bind'](this),_0x2d89f7);}}}_0x2d3b47['call'](this);}['isStreamMessage'](_0x4270d0){return Array['isArray'](_0x4270d0)&&Array['isArray'](_0x4270d0[0x0]);}['isPaused'](){return this['throttle']===enums_1['MAX_DELAY'];}['isStopped'](_0x35f114,_0x15b2bb,_0x97c112){return!this['shouldConsume']&&this['logger']['info']('router-stream-stopped',{'group':_0x35f114,'consumer':_0x15b2bb,'stream':_0x97c112}),!this['shouldConsume'];}async['consumeOne'](_0x5b06fd,_0x402e4d,_0x4f1eec,_0x469bc6,_0x37309b){this['logger']['debug']('stream-read-one',{'group':_0x402e4d,'stream':_0x5b06fd,'id':_0x4f1eec});let _0x1e49f2,_0x38607b;try{_0x38607b=new telemetry_1['TelemetryService'](this['appId']),_0x38607b['startStreamSpan'](_0x469bc6,this['role']),_0x1e49f2=await this['execStreamLeg'](_0x469bc6,_0x5b06fd,_0x4f1eec,_0x37309b['bind'](this)),_0x1e49f2?.['status']===stream_1['StreamStatus']['ERROR']&&_0x38607b['setStreamError']('Function\x20Status\x20Code\x20'+(_0x1e49f2['code']||enums_1['HMSH_CODE_UNKNOWN'])),this['errorCount']=0x0;}catch(_0x502afa){this['logger']['error']('stream-read-one-error',{'group':_0x402e4d,'stream':_0x5b06fd,'id':_0x4f1eec,'err':_0x502afa}),_0x38607b['setStreamError'](_0x502afa['message']);}const _0x2f0848=await this['publishResponse'](_0x469bc6,_0x1e49f2);_0x38607b['setStreamAttributes']({'app.worker.mid':_0x2f0848}),await this['ackAndDelete'](_0x5b06fd,_0x402e4d,_0x4f1eec),_0x38607b['endStreamSpan'](),this['logger']['debug']('stream-read-one-end',{'group':_0x402e4d,'stream':_0x5b06fd,'id':_0x4f1eec});}async['execStreamLeg'](_0x5634bf,_0xd3dc49,_0x1cbd13,_0xf8f499){let _0x123023;try{_0x123023=await _0xf8f499(_0x5634bf);}catch(_0x15d892){this['logger']['error']('stream-call-function-error',{..._0x15d892,'input':_0x5634bf,'stack':_0x15d892['stack'],'message':_0x15d892['message'],'name':_0x15d892['name'],'stream':_0xd3dc49,'id':_0x1cbd13}),_0x123023=this['structureUnhandledError'](_0x5634bf,_0x15d892);}return _0x123023;}async['ackAndDelete'](_0x21efd9,_0x21f612,_0x2d9954){await this['stream']['ackAndDelete'](_0x21efd9,_0x21f612,[_0x2d9954]);}async['publishResponse'](_0x13fd41,_0x35eae0){if(_0x35eae0&&typeof _0x35eae0==='object'){if(_0x35eae0['status']==='error'){const [_0x2a6fdc,_0x157600]=this['shouldRetry'](_0x13fd41,_0x35eae0);if(_0x2a6fdc)return await(0x0,utils_1['sleepFor'])(_0x157600),await this['publishMessage'](_0x13fd41['metadata']['topic'],{'data':_0x13fd41['data'],'metadata':{..._0x13fd41['metadata'],'try':(_0x13fd41['metadata']['try']||0x0)+0x1},'policies':_0x13fd41['policies']});else _0x35eae0=this['structureError'](_0x13fd41,_0x35eae0);}else typeof _0x35eae0['metadata']!=='object'?_0x35eae0['metadata']={..._0x13fd41['metadata'],'guid':(0x0,utils_1['guid'])()}:_0x35eae0['metadata']['guid']=(0x0,utils_1['guid'])();return _0x35eae0['type']=stream_1['StreamDataType']['RESPONSE'],await this['publishMessage'](null,_0x35eae0);}}['shouldRetry'](_0x212d17,_0x4a7fec){const _0x5a6db5=_0x212d17['policies']?.['retry'],_0x39d502=_0x4a7fec['code']['toString'](),_0x3fa1f4=_0x5a6db5?.[_0x39d502],_0x356fa5=_0x3fa1f4?.[0x0],_0x5d62fd=Math['min'](_0x212d17['metadata']['try']||0x0,enums_1['HMSH_MAX_RETRIES']);if(_0x356fa5>_0x5d62fd)return[!![],Math['pow'](0xa,_0x5d62fd+0x1)];return[![],0x0];}['structureUnhandledError'](_0x2b021e,_0x4de6a2){const _0x5c1948={};return typeof _0x4de6a2['message']==='string'?_0x5c1948['message']=_0x4de6a2['message']:_0x5c1948['message']=enums_1['HMSH_STATUS_UNKNOWN'],typeof _0x4de6a2['stack']==='string'&&(_0x5c1948['stack']=_0x4de6a2['stack']),typeof _0x4de6a2['name']==='string'&&(_0x5c1948['name']=_0x4de6a2['name']),{'status':'error','code':enums_1['HMSH_CODE_UNKNOWN'],'metadata':{..._0x2b021e['metadata'],'guid':(0x0,utils_1['guid'])()},'data':_0x5c1948};}['structureUnacknowledgedError'](_0x5baa1d){const _0x33754a='stream\x20message\x20max\x20delivery\x20count\x20exceeded',_0x9a384c=enums_1['HMSH_CODE_UNACKED'],_0x333869={'message':_0x33754a,'code':_0x9a384c},_0x108595={'metadata':{..._0x5baa1d['metadata'],'guid':(0x0,utils_1['guid'])()},'status':stream_1['StreamStatus']['ERROR'],'code':_0x9a384c,'data':_0x333869};return delete _0x108595['metadata']['topic'],_0x108595;}['structureError'](_0xe67f64,_0x423dc4){const _0x32a301=_0x423dc4['data']?.['message']?_0x423dc4['data']?.['message']['toString']():enums_1['HMSH_STATUS_UNKNOWN'],_0x289caf=_0x423dc4['code']||_0x423dc4['data']?.['code'],_0x13e62e=isNaN(_0x289caf)?enums_1['HMSH_CODE_UNKNOWN']:parseInt(_0x289caf['toString']()),_0x33627a=_0x423dc4['data']?.['stack']?_0x423dc4['data']?.['stack']['toString']():undefined,_0x1fe6cc={'message':_0x32a301,'code':_0x13e62e,'stack':_0x33627a};return typeof _0x423dc4['data']?.['error']==='object'&&(_0x1fe6cc['error']={..._0x423dc4['data']['error']}),{'status':stream_1['StreamStatus']['ERROR'],'code':_0x13e62e,'stack':_0x33627a,'metadata':{..._0xe67f64['metadata'],'guid':(0x0,utils_1['guid'])()},'data':_0x1fe6cc};}static async['stopConsuming'](){for(const _0x11bfd6 of[...Router['instances']]){_0x11bfd6['stopConsuming']();}await(0x0,utils_1['sleepFor'])(enums_1['HMSH_BLOCK_TIME_MS']*0x2);}async['stopConsuming'](){this['shouldConsume']=![],this['logger']['info']('router-stream-stopping',this['topic']?{'topic':this['topic']}:undefined),this['cancelThrottle']();}['cancelThrottle'](){this['sleepTimout']&&clearTimeout(this['sleepTimout']),this['resetThrottleState']();}['setThrottle'](_0x383203){if(!Number['isInteger'](_0x383203)||_0x383203<0x0||_0x383203>enums_1['MAX_DELAY'])throw new Error('Throttle\x20must\x20be\x20a\x20non-negative\x20integer\x20and\x20not\x20exceed\x20'+enums_1['MAX_DELAY']+'\x20ms;\x20send\x20-1\x20to\x20throttle\x20indefinitely');const _0x357b0d=_0x383203<this['throttle'];this['throttle']=_0x383203,_0x357b0d&&(this['sleepTimout']&&clearTimeout(this['sleepTimout']),this['innerPromiseResolve']&&this['innerPromiseResolve']());}}exports['Router']=Router,Router['instances']=new Set();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';(function(
|
|
1
|
+
'use strict';(function(_0x5535ea,_0x3336eb){const _0x2d85c6=_0x1cd3,_0x27632d=_0x5535ea();while(!![]){try{const _0x47bce1=parseInt(_0x2d85c6(0xd2))/0x1*(parseInt(_0x2d85c6(0xd1))/0x2)+-parseInt(_0x2d85c6(0xcd))/0x3+parseInt(_0x2d85c6(0xcf))/0x4+-parseInt(_0x2d85c6(0xcb))/0x5*(parseInt(_0x2d85c6(0xca))/0x6)+-parseInt(_0x2d85c6(0xd0))/0x7+-parseInt(_0x2d85c6(0xcc))/0x8+parseInt(_0x2d85c6(0xce))/0x9;if(_0x47bce1===_0x3336eb)break;else _0x27632d['push'](_0x27632d['shift']());}catch(_0x1a53e5){_0x27632d['push'](_0x27632d['shift']());}}}(_0x512e,0x2d104));function _0x512e(){const _0x3b3f5f=['4688640eYtPko','1172520LoopWj','2214562Gjjgvn','4774KHrNIa','79VyDIjc','2147514AfLyJd','5giReHN','186840VVSStY','361329TArbVL'];_0x512e=function(){return _0x3b3f5f;};return _0x512e();}Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['PostgresSearchService']=void 0x0;function _0x1cd3(_0x5862d5,_0x250979){const _0x512eff=_0x512e();return _0x1cd3=function(_0x1cd383,_0x22b268){_0x1cd383=_0x1cd383-0xca;let _0x24c16f=_0x512eff[_0x1cd383];return _0x24c16f;},_0x1cd3(_0x5862d5,_0x250979);}const index_1=require('../../index'),kvsql_1=require('../../../store/providers/postgres/kvsql');class PostgresSearchService extends index_1['SearchService']{['transact'](){return this['storeClient']['transact']();}constructor(_0x63dc31,_0x46a83b){super(_0x63dc31,_0x46a83b),this['pgClient']=_0x63dc31,this['searchClient']=new kvsql_1['KVSQL'](_0x63dc31,this['namespace'],this['appId']);}async['init'](_0x156714,_0x504884,_0x12ed36){this['searchClient']['namespace']=this['namespace']=_0x156714,this['searchClient']['appId']=this['appId']=_0x504884,this['namespace']=_0x156714,this['appId']=_0x504884,this['logger']=_0x12ed36;}async['createSearchIndex'](_0x1736de,_0x71b36e,_0x115e43){}async['listSearchIndexes'](){return[];}async['setFields'](_0x354248,_0x48710e){try{const _0x54f9fa=await this['searchClient']['hset'](_0x354248,_0x48710e);return Number(_0x54f9fa);}catch(_0x16c464){this['logger']['error']('postgres-search-set-fields-error',{'key':_0x354248,..._0x16c464});throw _0x16c464;}}async['getField'](_0x750ee8,_0x57bb3d){try{return await this['searchClient']['hget'](_0x750ee8,_0x57bb3d);}catch(_0x1cb3ba){this['logger']['error']('postgres-search-get-field-error',{'key':_0x750ee8,'field':_0x57bb3d,..._0x1cb3ba});throw _0x1cb3ba;}}async['getFields'](_0x2883ab,_0x43ad6c){try{return await this['searchClient']['hmget'](_0x2883ab,[..._0x43ad6c]);}catch(_0x98dc35){this['logger']['error']('postgres-search-get-fields-error',{'key':_0x2883ab,'fields':_0x43ad6c,..._0x98dc35});throw _0x98dc35;}}async['getAllFields'](_0xabc591){try{return await this['searchClient']['hgetall'](_0xabc591);}catch(_0x1aef22){this['logger']['error']('postgres-search-get-all-fields-error',{'key':_0xabc591,..._0x1aef22});throw _0x1aef22;}}async['deleteFields'](_0x7f388d,_0x4134aa){try{const _0x1a3953=await this['searchClient']['hdel'](_0x7f388d,_0x4134aa);return Number(_0x1a3953);}catch(_0x425c2c){this['logger']['error']('postgres-search-delete-fields-error',{'key':_0x7f388d,'fields':_0x4134aa,..._0x425c2c});throw _0x425c2c;}}async['incrementFieldByFloat'](_0x28e0bc,_0x472db3,_0x4770e2){try{const _0x35775a=await this['searchClient']['hincrbyfloat'](_0x28e0bc,_0x472db3,_0x4770e2);return Number(_0x35775a);}catch(_0x1820c9){this['logger']['error']('postgres-increment-field-error',{'key':_0x28e0bc,'field':_0x472db3,..._0x1820c9});throw _0x1820c9;}}async['sendQuery'](_0x362d69){try{return await this['pgClient']['query'](_0x362d69);}catch(_0x2c2591){this['logger']['error']('postgres-send-query-error',{'query':_0x362d69,..._0x2c2591});throw _0x2c2591;}}async['sendIndexedQuery'](_0x4dc263,_0x365aa6=[]){const [_0x4acf60,..._0x21c5b1]=_0x365aa6;try{const _0xfd52f2=await this['pgClient']['query'](_0x4acf60,_0x21c5b1['length']?_0x21c5b1:undefined);return _0xfd52f2['rows'];}catch(_0x5d1549){this['logger']['error']('postgres-send-indexed-query-error',{'query':_0x4acf60,..._0x5d1549});throw _0x5d1549;}}}exports['PostgresSearchService']=PostgresSearchService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';(function(
|
|
1
|
+
'use strict';(function(_0x9b72c4,_0xdba625){const _0x26039b=_0x31d1,_0x5206fe=_0x9b72c4();while(!![]){try{const _0x378102=parseInt(_0x26039b(0x1a0))/0x1*(parseInt(_0x26039b(0x1a1))/0x2)+parseInt(_0x26039b(0x1a7))/0x3+parseInt(_0x26039b(0x19f))/0x4+-parseInt(_0x26039b(0x1a2))/0x5+-parseInt(_0x26039b(0x1a4))/0x6*(-parseInt(_0x26039b(0x1a3))/0x7)+-parseInt(_0x26039b(0x1a5))/0x8+-parseInt(_0x26039b(0x1a6))/0x9*(parseInt(_0x26039b(0x19e))/0xa);if(_0x378102===_0xdba625)break;else _0x5206fe['push'](_0x5206fe['shift']());}catch(_0x53d96a){_0x5206fe['push'](_0x5206fe['shift']());}}}(_0x1898,0x559ed));Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['IORedisSearchService']=void 0x0;const index_1=require('../../index');class IORedisSearchService extends index_1['SearchService']{constructor(_0x4e47dd,_0x5ba729){super(_0x4e47dd,_0x5ba729);}async['init'](_0x2b61ba,_0x3565da,_0x4f02ce){this['namespace']=_0x2b61ba,this['appId']=_0x3565da,this['logger']=_0x4f02ce;}async['createSearchIndex'](_0x5c7088,_0x475279,_0x3f61d7){try{await this['searchClient']['call']('FT.CREATE',_0x5c7088,'ON','HASH','PREFIX',_0x475279['length']['toString'](),..._0x475279,'SCHEMA',..._0x3f61d7);}catch(_0x41a600){this['logger']['info']('Error\x20creating\x20search\x20index',{'error':_0x41a600});throw _0x41a600;}}async['listSearchIndexes'](){try{const _0x4d696a=await this['searchClient']['call']('FT._LIST');return _0x4d696a;}catch(_0x2c4520){this['logger']['info']('Error\x20listing\x20search\x20indexes',{'error':_0x2c4520});throw _0x2c4520;}}async['setFields'](_0xd8afc,_0xc8f298){try{const _0x87faab=await this['searchClient']['hset'](_0xd8afc,_0xc8f298);return Number(_0x87faab);}catch(_0x29ab9b){this['logger']['error']('Error\x20setting\x20fields\x20for\x20key:\x20'+_0xd8afc,{'error':_0x29ab9b});throw _0x29ab9b;}}async['getField'](_0x5abe78,_0x2b27cf){try{return await this['searchClient']['hget'](_0x5abe78,_0x2b27cf);}catch(_0x264e7b){this['logger']['error']('Error\x20getting\x20field\x20'+_0x2b27cf+'\x20for\x20key:\x20'+_0x5abe78,{'error':_0x264e7b});throw _0x264e7b;}}async['getFields'](_0x5a4eef,_0x11bfa7){try{return await this['searchClient']['hmget'](_0x5a4eef,[..._0x11bfa7]);}catch(_0x5e4394){this['logger']['error']('Error\x20getting\x20fields\x20for\x20key:\x20'+_0x5a4eef,{'error':_0x5e4394});throw _0x5e4394;}}async['getAllFields'](_0x500da8){try{return await this['searchClient']['hgetall'](_0x500da8);}catch(_0x3556ea){this['logger']['error']('Error\x20getting\x20fields\x20for\x20key:\x20'+_0x500da8,{'error':_0x3556ea});throw _0x3556ea;}}async['deleteFields'](_0x2e78d3,_0x5eaa66){try{const _0x29aeaf=await this['searchClient']['hdel'](_0x2e78d3,..._0x5eaa66);return Number(_0x29aeaf);}catch(_0x1ac100){this['logger']['error']('Error\x20deleting\x20fields\x20for\x20key:\x20'+_0x2e78d3,{'error':_0x1ac100});throw _0x1ac100;}}async['incrementFieldByFloat'](_0x417360,_0x467973,_0x18b28f){try{const _0x7da388=await this['searchClient']['hincrbyfloat'](_0x417360,_0x467973,_0x18b28f);return Number(_0x7da388);}catch(_0x4ae667){this['logger']['error']('Error\x20incrementing\x20field\x20'+_0x467973+'\x20for\x20key:\x20'+_0x417360,{'error':_0x4ae667});throw _0x4ae667;}}async['sendQuery'](..._0x263f40){try{return await this['searchClient']['call'](..._0x263f40);}catch(_0x30765c){this['logger']['error']('Error\x20executing\x20query',{'error':_0x30765c});throw _0x30765c;}}async['sendIndexedQuery'](_0x1538ec,_0x264a2a){try{if(_0x264a2a[0x0]?.['startsWith']('FT.')){const [_0x385457,..._0x5e1674]=_0x264a2a;return await this['searchClient']['call'](_0x385457,..._0x5e1674);}return await this['searchClient']['call']('FT.SEARCH',_0x1538ec,..._0x264a2a);}catch(_0x3a0276){this['logger']['error']('Error\x20executing\x20query',{'error':_0x3a0276});throw _0x3a0276;}}}exports['IORedisSearchService']=IORedisSearchService;function _0x31d1(_0x1e8523,_0x421215){const _0x1898b8=_0x1898();return _0x31d1=function(_0x31d1b8,_0x29e827){_0x31d1b8=_0x31d1b8-0x19e;let _0x2a4108=_0x1898b8[_0x31d1b8];return _0x2a4108;},_0x31d1(_0x1e8523,_0x421215);}function _0x1898(){const _0x820c1c=['804464VoBcMw','9zoKEHI','96142KHrvZG','1307330uiopMs','3350599vUGyHr','6znxwxX','991880CjPcOk','99gYRHbT','597813dbAZwO','523210VTItgf'];_0x1898=function(){return _0x820c1c;};return _0x1898();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';(function(
|
|
1
|
+
'use strict';(function(_0x5c5997,_0x577b35){const _0x26f3d0=_0x19e2,_0x1e0a6e=_0x5c5997();while(!![]){try{const _0x39cf25=-parseInt(_0x26f3d0(0x1fb))/0x1+-parseInt(_0x26f3d0(0x1f7))/0x2+-parseInt(_0x26f3d0(0x1f6))/0x3+-parseInt(_0x26f3d0(0x1f8))/0x4+-parseInt(_0x26f3d0(0x1f9))/0x5+parseInt(_0x26f3d0(0x1f5))/0x6*(-parseInt(_0x26f3d0(0x1fa))/0x7)+parseInt(_0x26f3d0(0x1f4))/0x8;if(_0x39cf25===_0x577b35)break;else _0x1e0a6e['push'](_0x1e0a6e['shift']());}catch(_0x939de5){_0x1e0a6e['push'](_0x1e0a6e['shift']());}}}(_0xbe82,0xd167c));function _0xbe82(){const _0x6bdd5e=['2192776TntaCa','5557240ULNXch','21fDqBqr','1343033rSUqYm','56939488FMJRjO','1904322oAgbOi','4978215ZBfNEk','1290942zMtbIc'];_0xbe82=function(){return _0x6bdd5e;};return _0xbe82();}Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['RedisSearchService']=void 0x0;const index_1=require('../../index');class RedisSearchService extends index_1['SearchService']{constructor(_0x42b95e,_0x47b3cf){super(_0x42b95e,_0x47b3cf);}async['init'](_0x5acc13,_0x27aeac,_0x342bb6){this['namespace']=_0x5acc13,this['appId']=_0x27aeac,this['logger']=_0x342bb6;}async['createSearchIndex'](_0x207d47,_0x2d6299,_0x319dbe){try{await this['searchClient']['sendCommand'](['FT.CREATE',_0x207d47,'ON','HASH','PREFIX',_0x2d6299['length']['toString'](),..._0x2d6299,'SCHEMA',..._0x319dbe]);}catch(_0xbd799a){this['logger']['info']('Error\x20creating\x20search\x20index',{'error':_0xbd799a});throw _0xbd799a;}}async['listSearchIndexes'](){try{const _0x20f560=await this['searchClient']['sendCommand'](['FT._LIST']);return _0x20f560;}catch(_0x57c9dd){this['logger']['info']('Error\x20listing\x20search\x20indexes',{'error':_0x57c9dd});throw _0x57c9dd;}}async['setFields'](_0x35670b,_0x5238ea){try{const _0x240960=await this['searchClient']['HSET'](_0x35670b,_0x5238ea);return Number(_0x240960);}catch(_0x201be1){this['logger']['error']('Error\x20setting\x20fields\x20for\x20key:\x20'+_0x35670b,{'error':_0x201be1});throw _0x201be1;}}async['getField'](_0x1841a5,_0x49e481){try{return await this['searchClient']['HGET'](_0x1841a5,_0x49e481);}catch(_0x1a0498){this['logger']['error']('Error\x20getting\x20field\x20'+_0x49e481+'\x20for\x20key:\x20'+_0x1841a5,{'error':_0x1a0498});throw _0x1a0498;}}async['getFields'](_0x183f53,_0x4f494c){try{return await this['searchClient']['HMGET'](_0x183f53,[..._0x4f494c]);}catch(_0xd803ee){this['logger']['error']('Error\x20getting\x20fields\x20for\x20key:\x20'+_0x183f53,{'error':_0xd803ee});throw _0xd803ee;}}async['getAllFields'](_0x41a214){try{return await this['searchClient']['HGETALL'](_0x41a214);}catch(_0x4f2c03){this['logger']['error']('Error\x20getting\x20fields\x20for\x20key:\x20'+_0x41a214,{'error':_0x4f2c03});throw _0x4f2c03;}}async['deleteFields'](_0xb386a2,_0x3287ff){try{const _0x49f4d6=await this['searchClient']['HDEL'](_0xb386a2,_0x3287ff);return Number(_0x49f4d6);}catch(_0xf6c832){this['logger']['error']('Error\x20deleting\x20fields\x20for\x20key:\x20'+_0xb386a2,{'error':_0xf6c832});throw _0xf6c832;}}async['incrementFieldByFloat'](_0xf2f639,_0x5b5c47,_0x5b0740){try{const _0x51734a=await this['searchClient']['HINCRBYFLOAT'](_0xf2f639,_0x5b5c47,_0x5b0740);return Number(_0x51734a);}catch(_0x512856){this['logger']['error']('Error\x20incrementing\x20field\x20'+_0x5b5c47+'\x20for\x20key:\x20'+_0xf2f639,{'error':_0x512856});throw _0x512856;}}async['sendQuery'](..._0x58cf0c){try{return await this['searchClient']['sendCommand'](_0x58cf0c);}catch(_0x54da80){this['logger']['error']('Error\x20executing\x20query',{'error':_0x54da80});throw _0x54da80;}}async['sendIndexedQuery'](_0x16b638,_0x119613){try{if(_0x119613[0x0]?.['startsWith']('FT.'))return await this['searchClient']['sendCommand'](_0x119613);return await this['searchClient']['sendCommand'](['FT.SEARCH',_0x16b638,..._0x119613]);}catch(_0x3fd5e8){this['logger']['error']('Error\x20executing\x20query',{'error':_0x3fd5e8});throw _0x3fd5e8;}}}function _0x19e2(_0x3135ee,_0x41e63e){const _0xbe82b1=_0xbe82();return _0x19e2=function(_0x19e2d8,_0x5444f0){_0x19e2d8=_0x19e2d8-0x1f4;let _0x4f2b51=_0xbe82b1[_0x19e2d8];return _0x4f2b51;},_0x19e2(_0x3135ee,_0x41e63e);}exports['RedisSearchService']=RedisSearchService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';(function(
|
|
1
|
+
'use strict';(function(_0xe252fe,_0x2ca49c){const _0x48ea97=_0xa87e,_0xc8dad9=_0xe252fe();while(!![]){try{const _0x131d85=parseInt(_0x48ea97(0x12f))/0x1*(-parseInt(_0x48ea97(0x130))/0x2)+-parseInt(_0x48ea97(0x136))/0x3+-parseInt(_0x48ea97(0x131))/0x4+-parseInt(_0x48ea97(0x132))/0x5+-parseInt(_0x48ea97(0x12e))/0x6*(parseInt(_0x48ea97(0x137))/0x7)+-parseInt(_0x48ea97(0x138))/0x8*(-parseInt(_0x48ea97(0x133))/0x9)+parseInt(_0x48ea97(0x134))/0xa*(parseInt(_0x48ea97(0x135))/0xb);if(_0x131d85===_0x2ca49c)break;else _0xc8dad9['push'](_0xc8dad9['shift']());}catch(_0x1963a2){_0xc8dad9['push'](_0xc8dad9['shift']());}}}(_0x268c,0xe8959));Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['SerializerService']=exports['MDATA_SYMBOLS']=void 0x0;function _0x268c(){const _0x460a89=['7uFElqr','3903112dhxlzh','10019082elocZF','159mUWLSy','3270rsTpnO','2259708AjlaVI','212550Kxskte','27RNtzmL','20FDfnap','13508616CdWRZK','1289595CoWPTn'];_0x268c=function(){return _0x460a89;};return _0x268c();}const utils_1=require('../../modules/utils'),dateReg=/^"\d{4}-\d{2}-\d{2}(?:T\d{2}:\d{2}:\d{2}(?:\.\d{3})?Z)?"$/;exports['MDATA_SYMBOLS']={'SLOTS':0x1a,'ACTIVITY':{'KEYS':['aid','dad','as','atp','stp','ac','au','err','l1s','l2s']},'ACTIVITY_UPDATE':{'KEYS':['au','err','l2s']},'JOB':{'KEYS':['ngn','tpc','pj','pg','pd','px','pa','key','app','vrs','jid','gid','aid','ts','jc','ju','js','err','trc']},'JOB_UPDATE':{'KEYS':['ju','err']}};function _0xa87e(_0x146915,_0x307ab1){const _0x268c96=_0x268c();return _0xa87e=function(_0xa87ea0,_0x3d4038){_0xa87ea0=_0xa87ea0-0x12e;let _0x171259=_0x268c96[_0xa87ea0];return _0x171259;},_0xa87e(_0x146915,_0x307ab1);}class SerializerService{constructor(){this['resetSymbols']({},{},{});}['abbreviate'](_0x5803c9,_0x5d020f,_0x2b99eb=[]){for(const _0x891d55 of _0x5d020f){const _0x2b8fa9=this['symKeys']['get'](_0x891d55),_0x32c976=_0x5803c9[_0x891d55];for(const _0x3664dc of _0x32c976){const _0x3a826e=_0x2b8fa9['get'](_0x3664dc);if(_0x3a826e){const _0x4b91d6=this['resolveDimensionalIndex'](_0x3664dc);_0x2b99eb['push'](''+_0x3a826e+_0x4b91d6);}else _0x2b99eb['push'](_0x3664dc);}}return _0x2b99eb;}['resolveDimensionalIndex'](_0x438dd7){if(this['isJobPath'](_0x438dd7))return'';else{const [_0x3ad74c]=_0x438dd7['split']('/');if(_0x3ad74c in this['dIds'])return this['dIds'][_0x3ad74c];else{if('$ADJACENT'in this['dIds'])return this['dIds']['$ADJACENT'];}return',0';}}['isJobPath'](_0x3cea72){return _0x3cea72['startsWith']('data/')||_0x3cea72['startsWith']('metadata/');}['resetSymbols'](_0x34c20b,_0x53bcc0,_0x17c9b6){this['symKeys']=new Map(),this['symReverseKeys']=new Map();for(const _0x46b88a in _0x34c20b){this['symKeys']['set'](_0x46b88a,new Map(Object['entries'](_0x34c20b[_0x46b88a])));}this['symValMaps']=new Map(Object['entries'](_0x53bcc0)),this['symValReverseMaps']=this['getReverseValueMap'](this['symValMaps']),this['dIds']=_0x17c9b6;}['getReverseKeyMap'](_0x3a4267,_0x4a6b55){let _0x5c7740=this['symReverseKeys']['get'](_0x4a6b55);if(!_0x5c7740){_0x5c7740=new Map();for(const [_0x39a1fe,_0x2917b5]of _0x3a4267['entries']()){_0x5c7740['set'](_0x2917b5,_0x39a1fe);}this['symReverseKeys']['set'](_0x4a6b55,_0x5c7740);}return _0x5c7740;}['getReverseValueMap'](_0x3c8d82){const _0x31ab30=new Map();for(const [_0x1d96be,_0x29faa1]of _0x3c8d82['entries']()){_0x31ab30['set'](_0x29faa1,_0x1d96be);}return _0x31ab30;}static['filterSymVals'](_0x5afe95,_0x2525ac,_0x261824,_0x3daf95){const _0x31ebb5={},_0x5b55a6={..._0x261824},_0x616dc0=new Set(Object['values'](_0x5b55a6));for(const _0x35a038 of _0x3daf95){if(!_0x616dc0['has'](_0x35a038)){if(_0x5afe95>_0x2525ac)return _0x31ebb5;const _0x2f1c77=(0x0,utils_1['getSymVal'])(_0x5afe95);_0x5afe95++,_0x31ebb5[_0x2f1c77]=_0x35a038,_0x616dc0['add'](_0x35a038);}}return _0x31ebb5;}['compress'](_0x23cbe9,_0x580b83){if(this['symKeys']['size']===0x0)return _0x23cbe9;const _0x49202b={..._0x23cbe9},_0x1f2535={},_0x103079=(_0x274c63,_0x11a09e)=>{for(const _0x39a584 in _0x49202b){if(_0x39a584['startsWith'](_0x11a09e+'/')||_0x11a09e['startsWith']('$')&&['data','metadata']['includes'](_0x39a584['split']('/')[0x0])){const _0x31b48d=this['resolveDimensionalIndex'](_0x39a584),_0x42e776=_0x274c63['get'](_0x39a584)||_0x39a584,_0x1add98=''+_0x42e776+_0x31b48d;_0x1f2535[_0x1add98]=_0x49202b[_0x39a584];}else!(_0x39a584 in _0x1f2535)&&this['isLiteralKeyType'](_0x39a584)&&(_0x1f2535[_0x39a584]=_0x49202b[_0x39a584]);}};for(const _0x14273b of _0x580b83){const _0x47ac34=this['symKeys']['get'](_0x14273b);_0x47ac34&&_0x103079(_0x47ac34,_0x14273b);}return _0x1f2535;}['isLiteralKeyType'](_0x1298ad){return _0x1298ad['startsWith']('-')||_0x1298ad['startsWith']('_');}['decompress'](_0x5158d3,_0x4722ab){if(this['symKeys']['size']===0x0)return _0x5158d3;const _0x57092c={..._0x5158d3},_0x1cd982=(_0x547984,_0x26cf2a)=>{const _0x49aa45=this['getReverseKeyMap'](_0x547984,_0x26cf2a);for(const _0xd268bd in _0x57092c){const _0x368d96=_0xd268bd['split'](',')[0x0],_0x2c822a=_0x49aa45['get'](_0x368d96);_0x2c822a&&(_0x57092c[_0x2c822a]=_0x57092c[_0xd268bd],delete _0x57092c[_0xd268bd]);}};for(const _0x2d7643 of _0x4722ab){const _0x4a052d=this['symKeys']['get'](_0x2d7643);_0x4a052d&&_0x1cd982(_0x4a052d,_0x2d7643);}return _0x57092c;}['stringify'](_0x305676){const _0x5f3ce9={};for(const _0x1f1410 in _0x305676){const _0x19410d=SerializerService['toString'](_0x305676[_0x1f1410]);_0x19410d&&(_0x5f3ce9[_0x1f1410]=_0x19410d);}return _0x5f3ce9;}['parse'](_0x103a33){const _0x2280d1={};for(const [_0x29fe4f,_0xf1ddbd]of Object['entries'](_0x103a33)){if(_0xf1ddbd===undefined||_0xf1ddbd===null)continue;_0x2280d1[_0x29fe4f]=SerializerService['fromString'](_0xf1ddbd);}return _0x2280d1;}static['toString'](_0xacab2b){switch(typeof _0xacab2b){case'string':break;case'boolean':_0xacab2b=_0xacab2b?'/t':'/f';break;case'number':_0xacab2b='/d'+_0xacab2b['toString']();break;case'undefined':return undefined;case'object':_0xacab2b===null?_0xacab2b='/n':_0xacab2b='/s'+JSON['stringify'](_0xacab2b);break;}return _0xacab2b;}static['fromString'](_0x44d1e3){if(typeof _0x44d1e3!=='string')return undefined;const _0xfc33db=_0x44d1e3['slice'](0x0,0x2),_0x180900=_0x44d1e3['slice'](0x2);switch(_0xfc33db){case'/t':return!![];case'/f':return![];case'/d':return Number(_0x180900);case'/n':return null;case'/s':if(dateReg['exec'](_0x180900))return new Date(JSON['parse'](_0x180900));return JSON['parse'](_0x180900);default:return _0x44d1e3;}}['package'](_0x34f338,_0x2caa49){const _0xfd8db9=this['stringify'](_0x34f338);return this['compress'](_0xfd8db9,_0x2caa49);}['unpackage'](_0x5f17ae,_0x4a3d71){const _0x3f1b24=this['decompress'](_0x5f17ae,_0x4a3d71);return this['parse'](_0x3f1b24);}['export'](){const _0x3ce33e={};for(const [_0x23c3c6,_0x3e5739]of this['symKeys']['entries']()){_0x3ce33e[_0x23c3c6]={};for(const [_0x4029b1,_0x31a96c]of _0x3e5739['entries']()){_0x3ce33e[_0x23c3c6][_0x4029b1]=_0x31a96c;}}return _0x3ce33e;}}exports['SerializerService']=SerializerService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';
|
|
1
|
+
'use strict';(function(_0x2f4c93,_0x42057e){const _0x29c0dc=_0x3e4e,_0x55bfe7=_0x2f4c93();while(!![]){try{const _0xd852a9=-parseInt(_0x29c0dc(0x93))/0x1+-parseInt(_0x29c0dc(0x95))/0x2*(parseInt(_0x29c0dc(0x96))/0x3)+parseInt(_0x29c0dc(0x91))/0x4+parseInt(_0x29c0dc(0x90))/0x5+parseInt(_0x29c0dc(0x94))/0x6*(parseInt(_0x29c0dc(0x8d))/0x7)+-parseInt(_0x29c0dc(0x8e))/0x8*(-parseInt(_0x29c0dc(0x8f))/0x9)+-parseInt(_0x29c0dc(0x92))/0xa;if(_0xd852a9===_0x42057e)break;else _0x55bfe7['push'](_0x55bfe7['shift']());}catch(_0x15a15a){_0x55bfe7['push'](_0x55bfe7['shift']());}}}(_0x1dec,0x5e93a));Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['KVSQL']=void 0x0;const key_1=require('../../../../modules/key'),kvtransaction_1=require('./kvtransaction'),string_1=require('./kvtypes/string'),hash_1=require('./kvtypes/hash'),list_1=require('./kvtypes/list'),zset_1=require('./kvtypes/zset');function _0x3e4e(_0x49939c,_0x384545){const _0x1dec22=_0x1dec();return _0x3e4e=function(_0x3e4e0d,_0x5974fc){_0x3e4e0d=_0x3e4e0d-0x8d;let _0x45923a=_0x1dec22[_0x3e4e0d];return _0x45923a;},_0x3e4e(_0x49939c,_0x384545);}class KVSQL{constructor(_0x31594c,_0x2c3e98,_0x2cb406){this['set']=(..._0x3b2857)=>this['string']['set'](..._0x3b2857),this['_set']=(..._0x3e41ab)=>this['string']['_set'](..._0x3e41ab),this['get']=(..._0x44349e)=>this['string']['get'](..._0x44349e),this['_get']=(..._0x550ef5)=>this['string']['_get'](..._0x550ef5),this['del']=(..._0xfa8067)=>this['string']['del'](..._0xfa8067),this['_del']=(..._0x37d5f2)=>this['string']['_del'](..._0x37d5f2),this['setnx']=(..._0x341b6b)=>this['string']['setnx'](..._0x341b6b),this['setnxex']=(..._0x5c5f14)=>this['string']['setnxex'](..._0x5c5f14),this['hset']=(..._0x319da7)=>this['hash']['hset'](..._0x319da7),this['_hset']=(..._0x374fe4)=>this['hash']['_hset'](..._0x374fe4),this['hsetnx']=(..._0x526b43)=>this['hash']['hsetnx'](..._0x526b43),this['hget']=(..._0x472e8c)=>this['hash']['hget'](..._0x472e8c),this['_hget']=(..._0x1d745c)=>this['hash']['_hget'](..._0x1d745c),this['hdel']=(..._0x59eb83)=>this['hash']['hdel'](..._0x59eb83),this['_hdel']=(..._0x4315ba)=>this['hash']['_hdel'](..._0x4315ba),this['hmget']=(..._0x247b49)=>this['hash']['hmget'](..._0x247b49),this['_hmget']=(..._0x2777ac)=>this['hash']['_hmget'](..._0x2777ac),this['hgetall']=(..._0x5ba5f2)=>this['hash']['hgetall'](..._0x5ba5f2),this['hincrbyfloat']=(..._0x219228)=>this['hash']['hincrbyfloat'](..._0x219228),this['_hincrbyfloat']=(..._0x57d548)=>this['hash']['_hincrbyfloat'](..._0x57d548),this['hscan']=(..._0x24ad9)=>this['hash']['hscan'](..._0x24ad9),this['_hscan']=(..._0x5af69b)=>this['hash']['_hscan'](..._0x5af69b),this['expire']=(..._0x6c685f)=>this['hash']['expire'](..._0x6c685f),this['_expire']=(..._0x374514)=>this['hash']['_expire'](..._0x374514),this['scan']=(..._0x2b3cc5)=>this['hash']['scan'](..._0x2b3cc5),this['_scan']=(..._0x3dcf69)=>this['hash']['_scan'](..._0x3dcf69),this['lrange']=(..._0x59cf8c)=>this['list']['lrange'](..._0x59cf8c),this['_lrange']=(..._0x1dad5d)=>this['list']['_lrange'](..._0x1dad5d),this['rpush']=(..._0x5b653a)=>this['list']['rpush'](..._0x5b653a),this['_rpush']=(..._0x48a4d7)=>this['list']['_rpush'](..._0x48a4d7),this['lpush']=(..._0x46ed44)=>this['list']['lpush'](..._0x46ed44),this['_lpush']=(..._0x2068b2)=>this['list']['_lpush'](..._0x2068b2),this['lpop']=(..._0x2b8445)=>this['list']['lpop'](..._0x2b8445),this['_lpop']=(..._0x3db35f)=>this['list']['_lpop'](..._0x3db35f),this['lmove']=(..._0x3dfc7c)=>this['list']['lmove'](..._0x3dfc7c),this['_lmove']=(..._0x3b77c5)=>this['list']['_lmove'](..._0x3b77c5),this['rename']=(..._0x43b601)=>this['list']['rename'](..._0x43b601),this['_rename']=(..._0x540fb1)=>this['list']['_rename'](..._0x540fb1),this['zadd']=(..._0x60fc0c)=>this['zset']['zadd'](..._0x60fc0c),this['_zadd']=(..._0x5b443f)=>this['zset']['_zadd'](..._0x5b443f),this['zrange']=(..._0x161e67)=>this['zset']['zrange'](..._0x161e67),this['_zrange']=(..._0x2fa906)=>this['zset']['_zrange'](..._0x2fa906),this['zrangebyscore']=(..._0x2c5543)=>this['zset']['zrangebyscore'](..._0x2c5543),this['_zrangebyscore']=(..._0x31745e)=>this['zset']['_zrangebyscore'](..._0x31745e),this['zrangebyscore_withscores']=(..._0x5d18fd)=>this['zset']['zrangebyscore_withscores'](..._0x5d18fd),this['_zrangebyscore_withscores']=(..._0x251a25)=>this['zset']['_zrangebyscore_withscores'](..._0x251a25),this['zrem']=(..._0x5548ae)=>this['zset']['zrem'](..._0x5548ae),this['_zrem']=(..._0x23aa76)=>this['zset']['_zrem'](..._0x23aa76),this['zrank']=(..._0x537121)=>this['zset']['zrank'](..._0x537121),this['_zrank']=(..._0x2ce918)=>this['zset']['_zrank'](..._0x2ce918),this['zscore']=(..._0x561243)=>this['zset']['zscore'](..._0x561243),this['_zscore']=(..._0x33c29c)=>this['zset']['_zscore'](..._0x33c29c),this['pgClient']=_0x31594c,this['namespace']=_0x2c3e98,this['appId']=_0x2cb406,this['hash']=(0x0,hash_1['hashModule'])(this),this['list']=(0x0,list_1['listModule'])(this),this['zset']=(0x0,zset_1['zsetModule'])(this),this['string']=(0x0,string_1['stringModule'])(this);}['isStatusOnly'](_0x55cb9b){return _0x55cb9b['length']===0x1&&_0x55cb9b[0x0]===':';}['appendExpiryClause'](_0x21c092,_0x4a6b86){return'\x0a\x20\x20\x20\x20\x20\x20'+_0x21c092+'\x0a\x20\x20\x20\x20\x20\x20AND\x20('+_0x4a6b86+'.expiry\x20IS\x20NULL\x20OR\x20'+_0x4a6b86+'.expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20';}['appendJobExpiryClause'](_0x134778,_0x46dfbc){return'\x0a\x20\x20\x20\x20\x20\x20'+_0x134778+'\x0a\x20\x20\x20\x20\x20\x20AND\x20('+_0x46dfbc+'.expired_at\x20IS\x20NULL\x20OR\x20'+_0x46dfbc+'.expired_at\x20>\x20NOW())\x0a\x20\x20\x20\x20';}['getMulti'](){return new kvtransaction_1['KVTransaction'](this);}['transact'](){return new kvtransaction_1['KVTransaction'](this);}['exec'](..._0x472577){return Promise['resolve']([]);}['mintKey'](_0x4362b2,_0x54a4af){return'';}['tableForKey'](_0x382d38,_0x5f5a67){if(_0x382d38===key_1['HMNS'])return'public.hotmesh_connections';const [_0x429c89,_0x35baa1,_0xb73874,..._0x41e55d]=_0x382d38['split'](':');if(_0x35baa1==='a')return'public.hotmesh_applications';const _0x5ed03e=_0x41e55d?.['length']?_0x41e55d['join'](':'):'',_0x11d179=key_1['KeyService']['resolveEntityType'](_0xb73874,_0x5ed03e);if(this['safeName'](this['appId'])!==this['safeName'](_0x35baa1))throw new Error('App\x20ID\x20mismatch:\x20'+this['appId']+'\x20!==\x20'+_0x35baa1);const _0x4e12b2=this['safeName'](_0x35baa1);if(_0x11d179==='stats'){let _0xac93d0;if(_0x5f5a67==='sorted_set')_0xac93d0='stats_ordered';else{if(_0x5f5a67==='list'||_0x382d38['endsWith'](':processed'))_0xac93d0='stats_indexed';else{if(_0x5f5a67==='hash'||/:\d$/['test'](_0x382d38))_0xac93d0='stats_counted';else throw new Error('Unknown\x20stats\x20type\x20['+_0x5f5a67+']\x20for\x20key\x20['+_0x382d38+']');}}return _0x4e12b2+'.'+_0xac93d0;}if(_0x11d179==='unknown_entity')throw new Error('Unknown\x20entity\x20type\x20abbreviation:\x20'+_0xb73874);else return _0x11d179==='applications'?'public.hotmesh_applications':_0x4e12b2+'.'+_0x11d179;}['safeName'](_0x30c975,_0x50fa87=''){if(!_0x30c975)return'connections';let _0x426376=_0x30c975['trim']()['toLowerCase']();return _0x426376=_0x426376['replace'](/[^a-z0-9]+/g,'_'),_0x50fa87&&(_0x426376=_0x50fa87+'_'+_0x426376),_0x426376['length']>0x3f&&(_0x426376=_0x426376['slice'](0x0,0x3f)),_0x426376=_0x426376['replace'](/_+$/g,''),!_0x426376&&(_0x426376='connections'),_0x426376;}async['exists'](_0x4d85f8){const {sql:_0x4a67cf,params:_0x59de07}=this['_exists'](_0x4d85f8),_0x14fbe0=await this['pgClient']['query'](_0x4a67cf,_0x59de07);return _0x14fbe0['rows']['length']?_0x14fbe0['rows'][0x0]['table_name']:0x0;}['_exists'](_0x520491){const _0x1a7b11=this['tableForKey'](_0x520491),_0x426b1f=_0x1a7b11['endsWith']('jobs');let _0x61e53a;_0x426b1f?_0x61e53a='\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20FROM\x20'+_0x1a7b11+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20id\x20=\x20$1\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20AND\x20(expired_at\x20IS\x20NULL\x20OR\x20expired_at\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20\x20\x20LIMIT\x201;\x0a\x20\x20\x20\x20\x20\x20':_0x61e53a='\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20FROM\x20'+_0x1a7b11+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20\x20\x20LIMIT\x201;\x0a\x20\x20\x20\x20\x20\x20';const _0x17dc2a=[_0x520491];return{'sql':_0x61e53a,'params':_0x17dc2a};}}function _0x1dec(){const _0x22d5e8=['1876675Ucplwd','2756364curjLZ','6966920aEUBlf','311267nwFHHg','8142utdxxW','73034aVIuSO','39EBfHpB','273DtIqXi','16408iqpLgT','3303uhvGYa'];_0x1dec=function(){return _0x22d5e8;};return _0x1dec();}exports['KVSQL']=KVSQL;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';(function(_0x417bd4,_0x16c5a0){const _0x4c2e74=_0x2bef,_0x5c5347=_0x417bd4();while(!![]){try{const _0x36096f=-parseInt(_0x4c2e74(0x6e))/0x1*(-parseInt(_0x4c2e74(0x73))/0x2)+parseInt(_0x4c2e74(0x77))/0x3+-parseInt(_0x4c2e74(0x6f))/0x4*(parseInt(_0x4c2e74(0x75))/0x5)+-parseInt(_0x4c2e74(0x70))/0x6*(-parseInt(_0x4c2e74(0x71))/0x7)+parseInt(_0x4c2e74(0x76))/0x8+parseInt(_0x4c2e74(0x74))/0x9+-parseInt(_0x4c2e74(0x72))/0xa;if(_0x36096f===_0x16c5a0)break;else _0x5c5347['push'](_0x5c5347['shift']());}catch(_0x39bdf9){_0x5c5347['push'](_0x5c5347['shift']());}}}(_0x3ffa,0x86b7b));function _0x2bef(_0x59e83f,_0x1c14d9){const _0x3fface=_0x3ffa();return _0x2bef=function(_0x2bef0a,_0xa9f1cb){_0x2bef0a=_0x2bef0a-0x6e;let _0x5a054f=_0x3fface[_0x2bef0a];return _0x5a054f;},_0x2bef(_0x59e83f,_0x1c14d9);}Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['KVTables']=void 0x0;const utils_1=require('../../../../modules/utils'),KVTables=_0x5b8853=>({async 'deploy'(_0x73a226){const _0x5a5c08=_0x5b8853['pgClient'];let _0x49a35c,_0x4c0cb7=![];!(isNaN(_0x5a5c08?.['totalCount'])&&isNaN(_0x5a5c08?.['idleCount']))?(_0x49a35c=await _0x5a5c08['connect'](),_0x4c0cb7=!![]):_0x49a35c=_0x5a5c08;try{const _0x74cbcd=this['getAdvisoryLockId'](_0x73a226),_0x3c139c=await _0x49a35c['query']('SELECT\x20pg_try_advisory_lock($1)\x20AS\x20locked',[_0x74cbcd]);if(_0x3c139c['rows'][0x0]['locked']){await _0x49a35c['query']('BEGIN');const _0x3a93af=await this['checkIfTablesExist'](_0x49a35c,_0x73a226);!_0x3a93af&&await this['createTables'](_0x49a35c,_0x73a226),await _0x49a35c['query']('COMMIT'),await _0x49a35c['query']('SELECT\x20pg_advisory_unlock($1)',[_0x74cbcd]);}else await this['waitForTablesCreation'](_0x49a35c,_0x74cbcd,_0x73a226);}catch(_0x4477c8){console['error'](_0x4477c8),_0x5b8853['logger']['error']('Error\x20deploying\x20tables',{'error':_0x4477c8});throw _0x4477c8;}finally{_0x4c0cb7&&await _0x49a35c['release']();}},'getAdvisoryLockId'(_0x5a7464){return this['hashStringToInt'](_0x5a7464);},'hashStringToInt'(_0x2d3224){let _0x2148f9=0x0;for(let _0x127f38=0x0;_0x127f38<_0x2d3224['length'];_0x127f38++){_0x2148f9=(_0x2148f9<<0x5)-_0x2148f9+_0x2d3224['charCodeAt'](_0x127f38),_0x2148f9|=0x0;}return Math['abs'](_0x2148f9);},async 'waitForTablesCreation'(_0x5c869c,_0x15812c,_0x4d6b4b){let _0x5f4b02=0x0;const _0x4b9718=0x14;while(_0x5f4b02<_0x4b9718){await(0x0,utils_1['sleepFor'])(0x96);const _0x4659ce=await _0x5c869c['query']('SELECT\x20NOT\x20EXISTS\x20(SELECT\x201\x20FROM\x20pg_locks\x20WHERE\x20locktype\x20=\x20\x27advisory\x27\x20AND\x20objid\x20=\x20$1::bigint)\x20AS\x20unlocked',[_0x15812c]);if(_0x4659ce['rows'][0x0]['unlocked']){const _0x3e42d7=await this['checkIfTablesExist'](_0x5c869c,_0x4d6b4b);if(_0x3e42d7)return;}_0x5f4b02++;}throw new Error('Timeout\x20waiting\x20for\x20table\x20creation');},async 'checkIfTablesExist'(_0x162c36,_0x5232e5){const _0x4dd3cf=this['getTableNames'](_0x5232e5),_0x4f34bd=_0x4dd3cf['map'](_0x680519=>_0x162c36['query']('SELECT\x20to_regclass(\x27'+_0x680519+'\x27)\x20AS\x20table')),_0x1fcb90=await Promise['all'](_0x4f34bd);return _0x1fcb90['every'](_0x12bfdc=>_0x12bfdc['rows'][0x0]['table']!==null);},async 'createTables'(_0x5943f2,_0x23908d){try{await _0x5943f2['query']('BEGIN');const _0x94b1f=_0x5b8853['storeClient']['safeName'](_0x23908d);await _0x5943f2['query']('CREATE\x20SCHEMA\x20IF\x20NOT\x20EXISTS\x20'+_0x94b1f+';');const _0x5ea8d9=this['getTableDefinitions'](_0x23908d);for(const _0x2e04ab of _0x5ea8d9){const _0x45de1c=_0x2e04ab['schema']+'.'+_0x2e04ab['name'];switch(_0x2e04ab['type']){case'string':await _0x5943f2['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x45de1c+'\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20key\x20TEXT\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20value\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20expiry\x20TIMESTAMP\x20WITH\x20TIME\x20ZONE\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20');break;case'hash':await _0x5943f2['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x45de1c+'\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20key\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20field\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20value\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20expiry\x20TIMESTAMP\x20WITH\x20TIME\x20ZONE,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20PRIMARY\x20KEY\x20(key,\x20field)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20');break;case'jobhash':await _0x5943f2['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20DO\x20$$\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20BEGIN\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20IF\x20NOT\x20EXISTS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x201\x20FROM\x20pg_type\x20t\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20JOIN\x20pg_namespace\x20n\x20ON\x20n.oid\x20=\x20t.typnamespace\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20t.typname\x20=\x20\x27type_enum\x27\x20AND\x20n.nspname\x20=\x20\x27'+_0x94b1f+'\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20)\x20THEN\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TYPE\x20'+_0x94b1f+'.type_enum\x20AS\x20ENUM\x20(\x27jmark\x27,\x20\x27hmark\x27,\x20\x27status\x27,\x20\x27jdata\x27,\x20\x27adata\x27,\x20\x27udata\x27,\x20\x27other\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END\x20IF;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END$$;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x5943f2['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x45de1c+'\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20id\x20UUID\x20DEFAULT\x20gen_random_uuid(),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20key\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20entity\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20status\x20INTEGER\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20created_at\x20TIMESTAMP\x20WITH\x20TIME\x20ZONE\x20DEFAULT\x20NOW(),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20updated_at\x20TIMESTAMP\x20WITH\x20TIME\x20ZONE\x20DEFAULT\x20NOW(),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20expired_at\x20TIMESTAMP\x20WITH\x20TIME\x20ZONE,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20is_live\x20BOOLEAN\x20DEFAULT\x20TRUE,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20PRIMARY\x20KEY\x20(id)\x20\x20--\x20Primary\x20key\x20on\x20id\x20which\x20is\x20also\x20our\x20partitioning\x20key\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20)\x20PARTITION\x20BY\x20HASH\x20(id);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x5943f2['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20DO\x20$$\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20BEGIN\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOR\x20i\x20IN\x200..7\x20LOOP\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20EXECUTE\x20format(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x27CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x45de1c+'_part_%s\x20PARTITION\x20OF\x20'+_0x45de1c+'\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOR\x20VALUES\x20WITH\x20(modulus\x208,\x20remainder\x20%s)\x27,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20i,\x20i\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END\x20LOOP;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END$$;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x5943f2['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x2e04ab['name']+'_key_expired_at\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x45de1c+'\x20(key,\x20expired_at)\x20INCLUDE\x20(is_live);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x5943f2['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x2e04ab['name']+'_entity_status\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x45de1c+'\x20(entity,\x20status);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x5943f2['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x2e04ab['name']+'_expired_at\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x45de1c+'\x20(expired_at);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x5943f2['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20OR\x20REPLACE\x20FUNCTION\x20'+_0x94b1f+'.update_is_live()\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20RETURNS\x20TRIGGER\x20AS\x20$$\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20BEGIN\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20NEW.is_live\x20:=\x20NEW.expired_at\x20IS\x20NULL\x20OR\x20NEW.expired_at\x20>\x20NOW();\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20RETURN\x20NEW;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20$$\x20LANGUAGE\x20plpgsql;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x5943f2['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TRIGGER\x20trg_update_is_live\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20BEFORE\x20INSERT\x20OR\x20UPDATE\x20ON\x20'+_0x45de1c+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOR\x20EACH\x20ROW\x20EXECUTE\x20PROCEDURE\x20'+_0x94b1f+'.update_is_live();\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x5943f2['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20OR\x20REPLACE\x20FUNCTION\x20'+_0x94b1f+'.enforce_live_job_uniqueness()\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20RETURNS\x20TRIGGER\x20AS\x20$$\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20BEGIN\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20IF\x20(NEW.expired_at\x20IS\x20NULL\x20OR\x20NEW.expired_at\x20>\x20NOW())\x20THEN\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20PERFORM\x20pg_advisory_xact_lock(hashtextextended(NEW.key,\x200));\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20IF\x20EXISTS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x201\x20FROM\x20'+_0x45de1c+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20NEW.key\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20AND\x20(expired_at\x20IS\x20NULL\x20OR\x20expired_at\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20AND\x20id\x20<>\x20NEW.id\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20)\x20THEN\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20RAISE\x20EXCEPTION\x20\x27A\x20live\x20job\x20with\x20key\x20%\x20already\x20exists.\x27,\x20NEW.key;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END\x20IF;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END\x20IF;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20RETURN\x20NEW;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20$$\x20LANGUAGE\x20plpgsql;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x5943f2['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TRIGGER\x20trg_enforce_live_job_uniqueness\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20BEFORE\x20INSERT\x20OR\x20UPDATE\x20ON\x20'+_0x45de1c+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOR\x20EACH\x20ROW\x20EXECUTE\x20PROCEDURE\x20'+_0x94b1f+'.enforce_live_job_uniqueness();\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20');const _0x34eec3=_0x45de1c+'_attributes';await _0x5943f2['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x34eec3+'\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20job_id\x20UUID\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20field\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20value\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20type\x20'+_0x94b1f+'.type_enum\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20PRIMARY\x20KEY\x20(job_id,\x20field),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(job_id)\x20REFERENCES\x20'+_0x45de1c+'\x20(id)\x20ON\x20DELETE\x20CASCADE\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20)\x20PARTITION\x20BY\x20HASH\x20(job_id);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x5943f2['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20DO\x20$$\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20BEGIN\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOR\x20i\x20IN\x200..7\x20LOOP\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20EXECUTE\x20format(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x27CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x34eec3+'_part_%s\x20PARTITION\x20OF\x20'+_0x34eec3+'\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOR\x20VALUES\x20WITH\x20(modulus\x208,\x20remainder\x20%s)\x27,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20i,\x20i\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END\x20LOOP;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END$$;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x5943f2['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x2e04ab['name']+'_attributes_type_field\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x34eec3+'\x20(type,\x20field);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x5943f2['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x2e04ab['name']+'_attributes_field\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x34eec3+'\x20(field);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20');break;case'list':await _0x5943f2['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x45de1c+'\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20key\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20index\x20BIGINT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20value\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20expiry\x20TIMESTAMP\x20WITH\x20TIME\x20ZONE,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20PRIMARY\x20KEY\x20(key,\x20index)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x5943f2['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x2e04ab['name']+'_key_expiry\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x45de1c+'\x20(key,\x20expiry);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20');break;case'sorted_set':await _0x5943f2['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x45de1c+'\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20key\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20member\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20score\x20DOUBLE\x20PRECISION\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20expiry\x20TIMESTAMP\x20WITH\x20TIME\x20ZONE,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20PRIMARY\x20KEY\x20(key,\x20member)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x5943f2['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x2e04ab['name']+'_key_score_member\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x45de1c+'\x20(key,\x20score,\x20member);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20');break;default:_0x5b8853['logger']['warn']('Unknown\x20table\x20type\x20for\x20'+_0x2e04ab['name']);break;}}await _0x5943f2['query']('COMMIT');}catch(_0x14be3c){_0x5b8853['logger']['error']('postgres-create-tables-error',{..._0x14be3c}),await _0x5943f2['query']('ROLLBACK');throw _0x14be3c;}},'getTableNames'(_0x148bfa){const _0x54414b=[];_0x54414b['push']('hotmesh_applications','hotmesh_connections');const _0x14fc4b=['throttles','roles','task_priorities','task_schedules','task_lists','events','jobs','stats_counted','stats_indexed','stats_ordered','versions','signal_patterns','signal_registry','symbols'];return _0x14fc4b['forEach'](_0x3e870b=>{_0x54414b['push'](_0x5b8853['storeClient']['safeName'](_0x148bfa)+'.'+_0x3e870b);}),_0x54414b;},'getTableDefinitions'(_0x3dc14e){const _0x37d76d=_0x5b8853['storeClient']['safeName'](_0x3dc14e),_0x56190f=[{'schema':'public','name':'hotmesh_applications','type':'hash'},{'schema':'public','name':'hotmesh_connections','type':'hash'},{'schema':_0x37d76d,'name':'throttles','type':'hash'},{'schema':_0x37d76d,'name':'roles','type':'string'},{'schema':_0x37d76d,'name':'task_schedules','type':'sorted_set'},{'schema':_0x37d76d,'name':'task_priorities','type':'sorted_set'},{'schema':_0x37d76d,'name':'task_lists','type':'list'},{'schema':_0x37d76d,'name':'events','type':'hash'},{'schema':_0x37d76d,'name':'jobs','type':'jobhash'},{'schema':_0x37d76d,'name':'stats_counted','type':'hash'},{'schema':_0x37d76d,'name':'stats_ordered','type':'sorted_set'},{'schema':_0x37d76d,'name':'stats_indexed','type':'list'},{'schema':_0x37d76d,'name':'versions','type':'hash'},{'schema':_0x37d76d,'name':'signal_patterns','type':'hash'},{'schema':_0x37d76d,'name':'symbols','type':'hash'},{'schema':_0x37d76d,'name':'signal_registry','type':'string'}];return _0x56190f;}});function _0x3ffa(){const _0x39986d=['3250869VzkyDp','7793tVndxw','4SNWMDZ','482766PRbunv','49UQaxZB','28104610QdQNmm','62vfSjVC','9789363rhStIs','1096265uivAgp','4843016fRQgFd'];_0x3ffa=function(){return _0x39986d;};return _0x3ffa();}exports['KVTables']=KVTables;
|
|
1
|
+
'use strict';function _0x3873(){const _0x19f7cf=['4wTUfUk','101930cwsOTI','2862HWibxv','21851LcAwZb','4808315bPgGSd','7242634hthgpi','5497488RlvNqe','32NJdsYt','5205832BfEwFZ','1819038lcmofp'];_0x3873=function(){return _0x19f7cf;};return _0x3873();}(function(_0x95c240,_0x4c8361){const _0x1793a5=_0x2fdc,_0x48c4d1=_0x95c240();while(!![]){try{const _0x5c777e=-parseInt(_0x1793a5(0x12f))/0x1*(parseInt(_0x1793a5(0x133))/0x2)+-parseInt(_0x1793a5(0x135))/0x3+parseInt(_0x1793a5(0x12c))/0x4*(-parseInt(_0x1793a5(0x130))/0x5)+parseInt(_0x1793a5(0x132))/0x6+-parseInt(_0x1793a5(0x131))/0x7+-parseInt(_0x1793a5(0x134))/0x8+parseInt(_0x1793a5(0x12e))/0x9*(parseInt(_0x1793a5(0x12d))/0xa);if(_0x5c777e===_0x4c8361)break;else _0x48c4d1['push'](_0x48c4d1['shift']());}catch(_0x5d80fc){_0x48c4d1['push'](_0x48c4d1['shift']());}}}(_0x3873,0x8766e));Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['KVTables']=void 0x0;function _0x2fdc(_0xa145cb,_0x29f945){const _0x387305=_0x3873();return _0x2fdc=function(_0x2fdc78,_0x47be9f){_0x2fdc78=_0x2fdc78-0x12c;let _0x48d62d=_0x387305[_0x2fdc78];return _0x48d62d;},_0x2fdc(_0xa145cb,_0x29f945);}const enums_1=require('../../../../modules/enums'),utils_1=require('../../../../modules/utils'),KVTables=_0x468900=>({async 'deploy'(_0x16d6fb){const _0x3466f7=_0x468900['pgClient'];let _0x54ca39,_0x1c811c=![];!(isNaN(_0x3466f7?.['totalCount'])&&isNaN(_0x3466f7?.['idleCount']))?(_0x54ca39=await _0x3466f7['connect'](),_0x1c811c=!![]):_0x54ca39=_0x3466f7;try{const _0x22c06c=this['getAdvisoryLockId'](_0x16d6fb),_0x4ee55a=await _0x54ca39['query']('SELECT\x20pg_try_advisory_lock($1)\x20AS\x20locked',[_0x22c06c]);if(_0x4ee55a['rows'][0x0]['locked']){await _0x54ca39['query']('BEGIN');const _0x28621c=await this['checkIfTablesExist'](_0x54ca39,_0x16d6fb);!_0x28621c&&await this['createTables'](_0x54ca39,_0x16d6fb),await _0x54ca39['query']('COMMIT'),await _0x54ca39['query']('SELECT\x20pg_advisory_unlock($1)',[_0x22c06c]);}else await this['waitForTablesCreation'](_0x54ca39,_0x22c06c,_0x16d6fb);}catch(_0x1648be){console['error'](_0x1648be),_0x468900['logger']['error']('Error\x20deploying\x20tables',{'error':_0x1648be});throw _0x1648be;}finally{_0x1c811c&&await _0x54ca39['release']();}},'getAdvisoryLockId'(_0x3467cc){return this['hashStringToInt'](_0x3467cc);},'hashStringToInt'(_0x264dd1){let _0x46ca8e=0x0;for(let _0x5b02eb=0x0;_0x5b02eb<_0x264dd1['length'];_0x5b02eb++){_0x46ca8e=(_0x46ca8e<<0x5)-_0x46ca8e+_0x264dd1['charCodeAt'](_0x5b02eb),_0x46ca8e|=0x0;}return Math['abs'](_0x46ca8e);},async 'waitForTablesCreation'(_0x34ba68,_0x5e86a0,_0xc812b3){let _0x2f5358=0x0;const _0x1f6f91=Math['round'](enums_1['HMSH_DEPLOYMENT_DELAY']/enums_1['HMSH_DEPLOYMENT_PAUSE']);while(_0x2f5358<_0x1f6f91){await(0x0,utils_1['sleepFor'])(enums_1['HMSH_DEPLOYMENT_PAUSE']);const _0x391911=await _0x34ba68['query']('SELECT\x20NOT\x20EXISTS\x20(SELECT\x201\x20FROM\x20pg_locks\x20WHERE\x20locktype\x20=\x20\x27advisory\x27\x20AND\x20objid\x20=\x20$1::bigint)\x20AS\x20unlocked',[_0x5e86a0]);if(_0x391911['rows'][0x0]['unlocked']){const _0x27bc6e=await this['checkIfTablesExist'](_0x34ba68,_0xc812b3);if(_0x27bc6e)return;}_0x2f5358++;}throw new Error('Timeout\x20waiting\x20for\x20table\x20creation');},async 'checkIfTablesExist'(_0x2b4709,_0xb35bf7){const _0x4263bd=this['getTableNames'](_0xb35bf7),_0x1b94ba=_0x4263bd['map'](_0x16bf01=>_0x2b4709['query']('SELECT\x20to_regclass(\x27'+_0x16bf01+'\x27)\x20AS\x20table')),_0x5d273e=await Promise['all'](_0x1b94ba);return _0x5d273e['every'](_0x153c1b=>_0x153c1b['rows'][0x0]['table']!==null);},async 'createTables'(_0x513c06,_0x2b06dd){try{await _0x513c06['query']('BEGIN');const _0x326bec=_0x468900['storeClient']['safeName'](_0x2b06dd);await _0x513c06['query']('CREATE\x20SCHEMA\x20IF\x20NOT\x20EXISTS\x20'+_0x326bec+';');const _0x8e3f17=this['getTableDefinitions'](_0x2b06dd);for(const _0x3ec736 of _0x8e3f17){const _0x27f2c8=_0x3ec736['schema']+'.'+_0x3ec736['name'];switch(_0x3ec736['type']){case'string':await _0x513c06['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x27f2c8+'\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20key\x20TEXT\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20value\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20expiry\x20TIMESTAMP\x20WITH\x20TIME\x20ZONE\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20');break;case'hash':await _0x513c06['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x27f2c8+'\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20key\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20field\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20value\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20expiry\x20TIMESTAMP\x20WITH\x20TIME\x20ZONE,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20PRIMARY\x20KEY\x20(key,\x20field)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20');break;case'jobhash':await _0x513c06['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20DO\x20$$\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20BEGIN\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20IF\x20NOT\x20EXISTS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x201\x20FROM\x20pg_type\x20t\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20JOIN\x20pg_namespace\x20n\x20ON\x20n.oid\x20=\x20t.typnamespace\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20t.typname\x20=\x20\x27type_enum\x27\x20AND\x20n.nspname\x20=\x20\x27'+_0x326bec+'\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20)\x20THEN\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TYPE\x20'+_0x326bec+'.type_enum\x20AS\x20ENUM\x20(\x27jmark\x27,\x20\x27hmark\x27,\x20\x27status\x27,\x20\x27jdata\x27,\x20\x27adata\x27,\x20\x27udata\x27,\x20\x27other\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END\x20IF;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END$$;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x513c06['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x27f2c8+'\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20id\x20UUID\x20DEFAULT\x20gen_random_uuid(),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20key\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20entity\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20status\x20INTEGER\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20created_at\x20TIMESTAMP\x20WITH\x20TIME\x20ZONE\x20DEFAULT\x20NOW(),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20updated_at\x20TIMESTAMP\x20WITH\x20TIME\x20ZONE\x20DEFAULT\x20NOW(),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20expired_at\x20TIMESTAMP\x20WITH\x20TIME\x20ZONE,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20is_live\x20BOOLEAN\x20DEFAULT\x20TRUE,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20PRIMARY\x20KEY\x20(id)\x20\x20--\x20Primary\x20key\x20on\x20id\x20which\x20is\x20also\x20our\x20partitioning\x20key\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20)\x20PARTITION\x20BY\x20HASH\x20(id);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x513c06['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20DO\x20$$\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20BEGIN\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOR\x20i\x20IN\x200..7\x20LOOP\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20EXECUTE\x20format(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x27CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x27f2c8+'_part_%s\x20PARTITION\x20OF\x20'+_0x27f2c8+'\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOR\x20VALUES\x20WITH\x20(modulus\x208,\x20remainder\x20%s)\x27,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20i,\x20i\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END\x20LOOP;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END$$;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x513c06['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x3ec736['name']+'_key_expired_at\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x27f2c8+'\x20(key,\x20expired_at)\x20INCLUDE\x20(is_live);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x513c06['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x3ec736['name']+'_entity_status\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x27f2c8+'\x20(entity,\x20status);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x513c06['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x3ec736['name']+'_expired_at\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x27f2c8+'\x20(expired_at);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x513c06['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20OR\x20REPLACE\x20FUNCTION\x20'+_0x326bec+'.update_is_live()\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20RETURNS\x20TRIGGER\x20AS\x20$$\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20BEGIN\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20NEW.is_live\x20:=\x20NEW.expired_at\x20IS\x20NULL\x20OR\x20NEW.expired_at\x20>\x20NOW();\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20RETURN\x20NEW;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20$$\x20LANGUAGE\x20plpgsql;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x513c06['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TRIGGER\x20trg_update_is_live\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20BEFORE\x20INSERT\x20OR\x20UPDATE\x20ON\x20'+_0x27f2c8+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOR\x20EACH\x20ROW\x20EXECUTE\x20PROCEDURE\x20'+_0x326bec+'.update_is_live();\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x513c06['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20OR\x20REPLACE\x20FUNCTION\x20'+_0x326bec+'.enforce_live_job_uniqueness()\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20RETURNS\x20TRIGGER\x20AS\x20$$\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20BEGIN\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20IF\x20(NEW.expired_at\x20IS\x20NULL\x20OR\x20NEW.expired_at\x20>\x20NOW())\x20THEN\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20PERFORM\x20pg_advisory_xact_lock(hashtextextended(NEW.key,\x200));\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20IF\x20EXISTS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x201\x20FROM\x20'+_0x27f2c8+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20NEW.key\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20AND\x20(expired_at\x20IS\x20NULL\x20OR\x20expired_at\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20AND\x20id\x20<>\x20NEW.id\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20)\x20THEN\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20RAISE\x20EXCEPTION\x20\x27A\x20live\x20job\x20with\x20key\x20%\x20already\x20exists.\x27,\x20NEW.key;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END\x20IF;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END\x20IF;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20RETURN\x20NEW;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20$$\x20LANGUAGE\x20plpgsql;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x513c06['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TRIGGER\x20trg_enforce_live_job_uniqueness\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20BEFORE\x20INSERT\x20OR\x20UPDATE\x20ON\x20'+_0x27f2c8+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOR\x20EACH\x20ROW\x20EXECUTE\x20PROCEDURE\x20'+_0x326bec+'.enforce_live_job_uniqueness();\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20');const _0x3c1b76=_0x27f2c8+'_attributes';await _0x513c06['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x3c1b76+'\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20job_id\x20UUID\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20field\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20value\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20type\x20'+_0x326bec+'.type_enum\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20PRIMARY\x20KEY\x20(job_id,\x20field),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(job_id)\x20REFERENCES\x20'+_0x27f2c8+'\x20(id)\x20ON\x20DELETE\x20CASCADE\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20)\x20PARTITION\x20BY\x20HASH\x20(job_id);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x513c06['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20DO\x20$$\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20BEGIN\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOR\x20i\x20IN\x200..7\x20LOOP\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20EXECUTE\x20format(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x27CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x3c1b76+'_part_%s\x20PARTITION\x20OF\x20'+_0x3c1b76+'\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOR\x20VALUES\x20WITH\x20(modulus\x208,\x20remainder\x20%s)\x27,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20i,\x20i\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END\x20LOOP;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END$$;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x513c06['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x3ec736['name']+'_attributes_type_field\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x3c1b76+'\x20(type,\x20field);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x513c06['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x3ec736['name']+'_attributes_field\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x3c1b76+'\x20(field);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20');break;case'list':await _0x513c06['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x27f2c8+'\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20key\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20index\x20BIGINT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20value\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20expiry\x20TIMESTAMP\x20WITH\x20TIME\x20ZONE,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20PRIMARY\x20KEY\x20(key,\x20index)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x513c06['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x3ec736['name']+'_key_expiry\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x27f2c8+'\x20(key,\x20expiry);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20');break;case'sorted_set':await _0x513c06['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x27f2c8+'\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20key\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20member\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20score\x20DOUBLE\x20PRECISION\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20expiry\x20TIMESTAMP\x20WITH\x20TIME\x20ZONE,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20PRIMARY\x20KEY\x20(key,\x20member)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x513c06['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x3ec736['name']+'_key_score_member\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x27f2c8+'\x20(key,\x20score,\x20member);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20');break;default:_0x468900['logger']['warn']('Unknown\x20table\x20type\x20for\x20'+_0x3ec736['name']);break;}}await _0x513c06['query']('COMMIT');}catch(_0x4c84bd){_0x468900['logger']['error']('postgres-create-tables-error',{..._0x4c84bd}),await _0x513c06['query']('ROLLBACK');throw _0x4c84bd;}},'getTableNames'(_0x4592b2){const _0x13d353=[];_0x13d353['push']('hotmesh_applications','hotmesh_connections');const _0x1b897e=['throttles','roles','task_priorities','task_schedules','task_lists','events','jobs','stats_counted','stats_indexed','stats_ordered','versions','signal_patterns','signal_registry','symbols'];return _0x1b897e['forEach'](_0x592749=>{_0x13d353['push'](_0x468900['storeClient']['safeName'](_0x4592b2)+'.'+_0x592749);}),_0x13d353;},'getTableDefinitions'(_0x56dc04){const _0x447dfc=_0x468900['storeClient']['safeName'](_0x56dc04),_0x289cea=[{'schema':'public','name':'hotmesh_applications','type':'hash'},{'schema':'public','name':'hotmesh_connections','type':'hash'},{'schema':_0x447dfc,'name':'throttles','type':'hash'},{'schema':_0x447dfc,'name':'roles','type':'string'},{'schema':_0x447dfc,'name':'task_schedules','type':'sorted_set'},{'schema':_0x447dfc,'name':'task_priorities','type':'sorted_set'},{'schema':_0x447dfc,'name':'task_lists','type':'list'},{'schema':_0x447dfc,'name':'events','type':'hash'},{'schema':_0x447dfc,'name':'jobs','type':'jobhash'},{'schema':_0x447dfc,'name':'stats_counted','type':'hash'},{'schema':_0x447dfc,'name':'stats_ordered','type':'sorted_set'},{'schema':_0x447dfc,'name':'stats_indexed','type':'list'},{'schema':_0x447dfc,'name':'versions','type':'hash'},{'schema':_0x447dfc,'name':'signal_patterns','type':'hash'},{'schema':_0x447dfc,'name':'symbols','type':'hash'},{'schema':_0x447dfc,'name':'signal_registry','type':'string'}];return _0x289cea;}});exports['KVTables']=KVTables;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';(function(
|
|
1
|
+
'use strict';function _0x2c25(_0x43b4f0,_0x54e215){const _0x563ade=_0x563a();return _0x2c25=function(_0x2c2597,_0x9fc10e){_0x2c2597=_0x2c2597-0xde;let _0x2c7b52=_0x563ade[_0x2c2597];return _0x2c7b52;},_0x2c25(_0x43b4f0,_0x54e215);}(function(_0x31b17b,_0x57e8a2){const _0x1581e6=_0x2c25,_0x23c76f=_0x31b17b();while(!![]){try{const _0xd99d2c=parseInt(_0x1581e6(0xe6))/0x1*(-parseInt(_0x1581e6(0xe1))/0x2)+-parseInt(_0x1581e6(0xe3))/0x3+parseInt(_0x1581e6(0xde))/0x4*(-parseInt(_0x1581e6(0xe4))/0x5)+parseInt(_0x1581e6(0xdf))/0x6*(parseInt(_0x1581e6(0xe8))/0x7)+-parseInt(_0x1581e6(0xe2))/0x8+parseInt(_0x1581e6(0xe9))/0x9*(-parseInt(_0x1581e6(0xe7))/0xa)+parseInt(_0x1581e6(0xe0))/0xb*(parseInt(_0x1581e6(0xe5))/0xc);if(_0xd99d2c===_0x57e8a2)break;else _0x23c76f['push'](_0x23c76f['shift']());}catch(_0x2cf37d){_0x23c76f['push'](_0x23c76f['shift']());}}}(_0x563a,0x777f5));var __importDefault=this&&this['__importDefault']||function(_0x549d34){return _0x549d34&&_0x549d34['__esModule']?_0x549d34:{'default':_0x549d34};};Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['KVTransaction']=void 0x0;const pg_format_1=__importDefault(require('pg-format'));function formatSqlCommand(_0x6d950c,_0x6d5f8b){const _0x3d2492=[],_0x1001a5=_0x6d950c['replace'](/\$(\d+)/g,(_0x3d4258,_0x408cc5)=>{const _0x2e5f02=parseInt(_0x408cc5,0xa)-0x1,_0xad4da2=_0x6d5f8b[_0x2e5f02];if(_0xad4da2===null||_0xad4da2===undefined)return'NULL';let _0x57544a;if(typeof _0xad4da2==='number')_0x57544a='%s';else{if(typeof _0xad4da2==='string')_0x57544a='%L';else typeof _0xad4da2==='boolean'?_0x57544a='%L':_0x57544a='%L';}return _0x3d2492['push'](_0xad4da2),_0x57544a;});return(0x0,pg_format_1['default'])(_0x1001a5,..._0x3d2492);}function _0x563a(){const _0x1afea2=['2dOGVDQ','5473560RZClKS','2915355iPrsSb','189775rbVnlx','12cPKqLZ','202991MiawCj','51070anvWOy','56AOVkzU','1557AaGIRb','88nvCmoO','256998NVCEdf','40967179MKlCbt'];_0x563a=function(){return _0x1afea2;};return _0x563a();}class KVTransaction{constructor(_0xeed5b4){this['kvsql']=_0xeed5b4,this['commands']=[];}['addCommand'](_0x3f990c,_0x1cc370,_0x5d337d,_0x1d1305){return this['commands']['push']({'sql':_0x3f990c,'params':_0x1cc370,'returnType':_0x5d337d,'transform':_0x1d1305}),this;}['set'](_0x1a19bf,_0x229e7c,_0x1228b0){const {sql:_0x3a7219,params:_0x233c63}=this['kvsql']['_set'](_0x1a19bf,_0x229e7c,_0x1228b0);return this['addCommand'](_0x3a7219,_0x233c63,'boolean');}['setnx'](_0xa3d618,_0x5b9e81){const {sql:_0x1475f9,params:_0x545786}=this['kvsql']['_set'](_0xa3d618,_0x5b9e81,{'nx':!![]});return this['addCommand'](_0x1475f9,_0x545786,'boolean');}['setnxex'](_0x485624,_0x260e5e,_0x5e5617){const {sql:_0x14bd03,params:_0x3487f3}=this['kvsql']['_set'](_0x485624,_0x260e5e,{'nx':!![],'ex':_0x5e5617});return this['addCommand'](_0x14bd03,_0x3487f3,'boolean');}['get'](_0xc24f8a){const {sql:_0x17de73,params:_0x12fe20}=this['kvsql']['_get'](_0xc24f8a);return this['addCommand'](_0x17de73,_0x12fe20,'string');}['del'](_0x3e602c){const {sql:_0x5ab896,params:_0x3ef0d7}=this['kvsql']['_del'](_0x3e602c);return this['addCommand'](_0x5ab896,_0x3ef0d7,'number');}['expire'](_0x2c8492,_0x2294e8){const {sql:_0x4b55be,params:_0x15dd97}=this['kvsql']['_expire'](_0x2c8492,_0x2294e8);return this['addCommand'](_0x4b55be,_0x15dd97,'boolean');}['hset'](_0x40f3ef,_0x2eef07,_0xfe2042){const {sql:_0x2fe684,params:_0x2e8e9b}=this['kvsql']['_hset'](_0x40f3ef,_0x2eef07,_0xfe2042);return this['addCommand'](_0x2fe684,_0x2e8e9b,'number');}['hget'](_0x50c632,_0x28c009){const {sql:_0x579d1d,params:_0x2d6e17}=this['kvsql']['_hget'](_0x50c632,_0x28c009);return this['addCommand'](_0x579d1d,_0x2d6e17,'string');}['hdel'](_0x46a0ff,_0x166dd6){const {sql:_0x474012,params:_0x178961}=this['kvsql']['_hdel'](_0x46a0ff,_0x166dd6);return this['addCommand'](_0x474012,_0x178961,'number');}['hmget'](_0x3b15a5,_0x47245e){const {sql:_0x45cd84,params:_0x4667fc}=this['kvsql']['_hmget'](_0x3b15a5,_0x47245e),_0x471c27=_0x1d426b=>{const _0x4483e9=new Map(_0x1d426b['map'](_0x582dc4=>[_0x582dc4['field'],_0x582dc4['value']]));return _0x47245e['map'](_0x557e64=>_0x4483e9['get'](_0x557e64)||null);};return this['addCommand'](_0x45cd84,_0x4667fc,'array',_0x471c27);}['hgetall'](_0x1aee1e){this['kvsql']['hgetall'](_0x1aee1e,this);const _0x31f608=_0x4cd5a1=>{const _0x4fd99f={};for(const _0x5d9d80 of _0x4cd5a1){_0x4fd99f[_0x5d9d80['field']]=_0x5d9d80['value'];}return _0x4fd99f;};return this;}['hincrbyfloat'](_0x370ecb,_0x57249c,_0x781baa){const {sql:_0x4029ec,params:_0x3ee2b1}=this['kvsql']['_hincrbyfloat'](_0x370ecb,_0x57249c,_0x781baa);return this['addCommand'](_0x4029ec,_0x3ee2b1,'number',_0x495707=>{try{return parseFloat(_0x495707[0x0]['value']);}catch(_0x53cf75){console['error']('hincrbyfloat\x20error',_0x53cf75,_0x4029ec,_0x3ee2b1,_0x495707);}});}['hscan'](_0x4dd6c4,_0x4a3d2d,_0x570d32=0xa){const {sql:_0x52c010,params:_0x14b305}=this['kvsql']['_hscan'](_0x4dd6c4,_0x4a3d2d,_0x570d32),_0x1d9d11=_0x2eaf7e=>{const _0x12fba1={};for(const _0x3c56ab of _0x2eaf7e){_0x12fba1[_0x3c56ab['field']]=_0x3c56ab['value'];}const _0x3fbcd3=_0x4a3d2d+_0x2eaf7e['length'];return{'cursor':_0x3fbcd3['toString'](),'items':_0x12fba1};};return this['addCommand'](_0x52c010,_0x14b305,'object',_0x1d9d11);}['lrange'](_0x348323,_0x155859,_0x17e615){const {sql:_0x297901,params:_0x41de40}=this['kvsql']['_lrange'](_0x348323,_0x155859,_0x17e615);return this['addCommand'](_0x297901,_0x41de40,'array',_0x2465ff=>_0x2465ff['map'](_0x31ef8a=>_0x31ef8a['value']));}['rpush'](_0x2cac85,_0x1b74dc){const {sql:_0x16f1d7,params:_0x59b467}=this['kvsql']['_rpush'](_0x2cac85,_0x1b74dc);return this['addCommand'](_0x16f1d7,_0x59b467,'number',_0x29c1d6=>_0x29c1d6[0x0]?.['count']||0x0);}['lpush'](_0x4c8c67,_0x3ee100){const {sql:_0x469b0c,params:_0x28612f}=this['kvsql']['_lpush'](_0x4c8c67,_0x3ee100);return this['addCommand'](_0x469b0c,_0x28612f,'number',_0x50670a=>_0x50670a[0x0]?.['count']||0x0);}['lpop'](_0x5859d4){const {sql:_0x41d207,params:_0x5b52a9}=this['kvsql']['_lpop'](_0x5859d4);return this['addCommand'](_0x41d207,_0x5b52a9,'string');}['lmove'](_0x16b34d,_0x446c39,_0x120824,_0x1194ef){const {sql:_0x446394,params:_0x2268c4}=this['kvsql']['_lmove'](_0x16b34d,_0x446c39,_0x120824,_0x1194ef);return this['addCommand'](_0x446394,_0x2268c4,'string');}['zadd'](_0x1ae6e1,_0x4eb8d8,_0x3f465b,_0x2a9b66){const {sql:_0x1e6b72,params:_0xbea156}=this['kvsql']['_zadd'](_0x1ae6e1,_0x4eb8d8,_0x3f465b,_0x2a9b66);return this['addCommand'](_0x1e6b72,_0xbea156,'number',_0x33a9f9=>_0x33a9f9[0x0]?.['count']||0x0);}['zrange'](_0x3d11fc,_0x3dbae5,_0x2e73e9){const {sql:_0x144d29,params:_0x156099}=this['kvsql']['_zrange'](_0x3d11fc,_0x3dbae5,_0x2e73e9);return this['addCommand'](_0x144d29,_0x156099,'array',_0x3851fc=>_0x3851fc['map'](_0x3e5202=>_0x3e5202['member']));}['zrangebyscore'](_0x9d2b15,_0x5b5cd4,_0x39e45f){const {sql:_0x3eb238,params:_0xe1818f}=this['kvsql']['_zrangebyscore'](_0x9d2b15,_0x5b5cd4,_0x39e45f);return this['addCommand'](_0x3eb238,_0xe1818f,'array',_0x444d1b=>_0x444d1b['map'](_0x10c6fd=>_0x10c6fd['member']));}['zrangebyscore_withscores'](_0x1e1382,_0x501b46,_0x32b904){const {sql:_0x532017,params:_0x495222}=this['kvsql']['_zrangebyscore_withscores'](_0x1e1382,_0x501b46,_0x32b904);return this['addCommand'](_0x532017,_0x495222,'array',_0x16bd34=>_0x16bd34['map'](_0x3d6b88=>({'member':_0x3d6b88['member'],'score':_0x3d6b88['score']})));}['zrem'](_0x42d7a8,_0x7b6e11){const {sql:_0x525102,params:_0x51a95d}=this['kvsql']['_zrem'](_0x42d7a8,_0x7b6e11);return this['addCommand'](_0x525102,_0x51a95d,'number',_0x16962c=>_0x16962c[0x0]?.['count']||0x0);}['zrank'](_0x1f7774,_0x56c1a2){const {sql:_0x517e01,params:_0xaaa0eb}=this['kvsql']['_zrank'](_0x1f7774,_0x56c1a2);return this['addCommand'](_0x517e01,_0xaaa0eb,'number',_0xdde9e9=>_0xdde9e9[0x0]?.['rank']!==undefined?parseInt(_0xdde9e9[0x0]['rank'],0xa)-0x1:null);}['scan'](_0x4619af,_0x1222ce=0xa){const {sql:_0x2202be,params:_0x3055da}=this['kvsql']['_scan'](_0x4619af,_0x1222ce),_0x350850=_0x507729=>{const _0x23ae9d=_0x507729['map'](_0x2c25f5=>_0x2c25f5['key']),_0x6e9a70=_0x4619af+_0x507729['length'];return{'cursor':_0x6e9a70,'keys':_0x23ae9d};};return this['addCommand'](_0x2202be,_0x3055da,'object',_0x350850);}['rename'](_0x4ca0e2,_0x1a800e){const {sql:_0x19d58a,params:_0x43e73e}=this['kvsql']['_rename'](_0x4ca0e2,_0x1a800e);return this['addCommand'](_0x19d58a,_0x43e73e,'void');}async['exec'](){const _0x22b23f=this['kvsql']['pgClient'];try{const _0x3b4c19=[],_0x4f8d32=['BEGIN'];for(const _0x517c76 of this['commands']){const _0x15a8a4=formatSqlCommand(_0x517c76['sql'],_0x517c76['params']);_0x4f8d32['push'](_0x15a8a4);}_0x4f8d32['push']('COMMIT;');const _0x5e0638=_0x4f8d32['join'](';\x0a'),_0xf08fff=await _0x22b23f['query'](_0x5e0638),_0x1307e1=Array['isArray'](_0xf08fff)?_0xf08fff:[_0xf08fff];_0x1307e1['shift'](),_0x1307e1['pop']();let _0x546f39=0x0;for(const _0x2cab16 of this['commands']){const _0x2ab393=_0x1307e1[_0x546f39++],_0x24dbef=_0x2ab393?.['rows']||[];let _0x36ee4d;if(_0x2cab16['transform'])_0x36ee4d=_0x2cab16['transform'](_0x24dbef);else switch(_0x2cab16['returnType']){case'string':_0x36ee4d=_0x24dbef[0x0]?.['value']||null;break;case'number':_0x36ee4d=_0x24dbef[0x0]?.['count']||0x0;break;case'boolean':_0x36ee4d=_0x24dbef[0x0]?.['success']??_0x24dbef['length']>0x0;break;case'array':_0x36ee4d=_0x24dbef['map'](_0x31ce9a=>_0x31ce9a['value']);break;case'object':_0x36ee4d=_0x24dbef[0x0]||{};break;default:_0x36ee4d=_0x24dbef;}_0x3b4c19['push'](_0x36ee4d);}return _0x3b4c19;}catch(_0x1a3ba3){await _0x22b23f['query']('ROLLBACK');throw _0x1a3ba3;}}}exports['KVTransaction']=KVTransaction;
|