tablesSchema() { const query = this.informationSchemaQuery(); const reduceCb = (result, i) => { let schema = (result[i.table_schema] || {}); const tables = (schema[i.table_name] || []); tables.push({ name: i.column_name, type: i.data_type, attributes: i.key_type ? ['primaryKey'] : [] }); tables.sort(); schema[i.table_name] = tables; schema = sortByKeys(schema); result[i.table_schema] = schema; return sortByKeys(result); }; return this.query(query).then(data => reduce(reduceCb, {}, data)); }
async tablesSchema() { const data = await this.query(` select tc.owner "table_schema" , tc.table_name "table_name" , tc.column_name "column_name" , tc.data_type "data_type" , c.constraint_type "key_type" from all_tab_columns tc left join all_cons_columns cc on (tc.owner, tc.table_name, tc.column_name) in ((cc.owner, cc.table_name, cc.column_name)) left join all_constraints c on (tc.owner, tc.table_name, cc.constraint_name) in ((c.owner, c.table_name, c.constraint_name)) and c.constraint_type in ('P','U') where tc.owner = user `); return reduce(reduceCb, {}, data); }
// const batchByBatch = (batch) => batchUpsert(client, db, collection, op, batch); const sequenceBatches = ({client, collection, batchSize=10000}, items) => reduce( (p, batch) => p.then(() => execBatchOp(client, collection, op, batch)), Promise.resolve(), splitEvery(batchSize, items) )
R.curry((fn, keyCol, valCol, table) => R.pipe( R.groupWith(R.eqBy(R.omit([keyCol, valCol]))), R.map((rowGroup) => R.reduce( R.mergeWith(fn), R.omit([keyCol, valCol], rowGroup[0]), rowGroup.map((row) => ({ [row[keyCol]]: row[valCol] })) )), )(table))
// filter :: Object -> Object var filterObjIndexed = function filterObjIndexed(f, x) { return (0, _ramda.compose)((0, _ramda.reduce)(function (acc, k) { acc[k] = x[k];return acc; }, {}), (0, _ramda.filter)(function (k) { return f(x[k], k, x); }), _ramda.keys)(x); }
function durationCounter(features, isCucumber2) { R.map(function (feature) { var duration = R.compose(R.reduce(function (accumulator, current) { return accumulator + current; }, 0), R.flatten(), R.map(function (step) { return step.result.duration ? step.result.duration : 0; }), R.flatten(), R.map(function (element) { return element.steps; }))(feature.elements); if (Duration.isMinuteOrMore(duration, isCucumber2)) { // If the test ran for more than a minute, also display minutes. feature.duration = Duration.formatDurationInMinutesAndSeconds(duration, isCucumber2); } else if (Duration.isMinuteOrLess(duration, isCucumber2)) { // If the test ran for less than a minute, display only seconds. feature.duration = Duration.formatDurationInSeconds(duration, isCucumber2); } })(features); }
/* Miner */ this.server.addMethod('getMiningTask', (params, callback) => { const requestId = this.lastRequestId++ this.log('#' + requestId + ' Rcvd getMiningTask, nonce=' + params.nonce + ', hps=' + params.hps) storage.trigger('minerReqTask') if ((params.nonce !== undefined) && (params.hps !== undefined)) { storage.session.stat.hpsList[params.nonce] = params.hps storage.session.stat.hps = helper.countToStr(R.reduce((a, b) => a + b, 0, R.values(storage.session.stat.hpsList))) } if (storage.miningTask && storage.miningTask.active && !storage.session.forkProcessor) { this.log('#' + requestId + ' Sent {green-fg}active=1{/green-fg}') callback(null, storage.miningTask) } else { this.log('#' + requestId + ' Sent {red-fg}active=0{/red-fg}') callback(null, { active: 0 }) } })
memoize((a, b) => pipe( map(getParts), padShortArray, apply( zipWith( (a, b) => a === b ? 0 : a > b ? 1 : -1 ) ), reduce( (result, comparison) => result === 0 ? comparison : result, 0 ) )([a, b]) )
this.itemSize = R.reduce((acc, field) => { field.start = start start += field.size
const execBatchOp = (client, collection, op, items) => reduce(op, initBulkOp(client, collection), items).execute()
]), vals), R.reduce(R.merge, {}, R.map(R.converge(R.objOf, [ R.prop('property'),
const allAmount = senders ? R.reduce((acc, sender) => acc + walletData.balances[sender], 0, senders) : walletData.allAmount if (allAmount < toSend) { callback({type: 'error', message: 'Not enough micoins'})
function bindCollFn(coll) { var toAll = (result, fnName) => { result[fnName] = coll[fnName].bind(coll) return result; }; return R.reduce(toAll, {})(FNAMES) }
// filter :: Object -> Object var filterObjIndexed = function filterObjIndexed(f, x) { return (0, _ramda.compose)((0, _ramda.reduce)(function (acc, k) { acc[k] = x[k];return acc; }, {}), (0, _ramda.filter)(function (k) { return f(x[k], k, x); }), _ramda.keys)(x); }
function durationCounter (features, isCucumber2) { R.map(feature => { let duration = R.compose( R.reduce((accumulator, current) => accumulator + current, 0), R.flatten(), R.map(step => step.result.duration ? step.result.duration : 0), R.flatten(), R.map(element => element.steps) )(feature.elements) if (Duration.isMinuteOrMore(duration, isCucumber2)) { // If the test ran for more than a minute, also display minutes. feature.duration = Duration.formatDurationInMinutesAndSeconds(duration, isCucumber2) } else if (Duration.isMinuteOrLess(duration, isCucumber2)) { // If the test ran for less than a minute, display only seconds. feature.duration = Duration.formatDurationInSeconds(duration, isCucumber2) } })(features) }