Exponential expansion of reportloader_alpha
This commit is contained in:
parent
f6408e0188
commit
e63e7100f0
@ -317,7 +317,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
function reportloader_alpha(dfn, rpt_id, fn_map, omega) {
|
function reportloader_alpha(dfn, rpt_id, fn_map, omega) {
|
||||||
var dt_omega = strptime_vista(omega), cursor = Math.floor(strftime_vista(new Date())) + 0.235959999, interval = 86400000*3650, data = [], dt_end, hasmore = true;
|
var dt_omega = strptime_vista(omega), cursor = Math.floor(strftime_vista(new Date())) + 0.235959999, interval = 86400000*365*2, data = [], dt_end, hasmore = true;
|
||||||
async function fn(client, alpha) {
|
async function fn(client, alpha) {
|
||||||
var dt_alpha = strptime_vista(alpha);
|
var dt_alpha = strptime_vista(alpha);
|
||||||
if(alpha !== undefined) {
|
if(alpha !== undefined) {
|
||||||
@ -331,15 +331,18 @@
|
|||||||
if((data.length > 0) && ((dt_alpha > dt_end) || (alpha === undefined)) && ((res.length < 1) || (res[res.length - 1] !== data[data.length - 1]))) res.next = strftime_vista(res.dt_next = dt_end); // lookahead
|
if((data.length > 0) && ((dt_alpha > dt_end) || (alpha === undefined)) && ((res.length < 1) || (res[res.length - 1] !== data[data.length - 1]))) res.next = strftime_vista(res.dt_next = dt_end); // lookahead
|
||||||
else if(hasmore) {
|
else if(hasmore) {
|
||||||
var count = data.length;
|
var count = data.length;
|
||||||
|
while(interval <= 86400000*365*8) {
|
||||||
cursor = Math.floor(strftime_vista(new Date(strptime_vista(cursor) - interval)));
|
cursor = Math.floor(strftime_vista(new Date(strptime_vista(cursor) - interval)));
|
||||||
data = (await client.ORWRP_REPORT_TEXT(dfn, rpt_id, '', SZ_RANGE, '', cursor, -1)).map(fn_map).sort((a, b) => b.time - a.time);
|
data = (await client.ORWRP_REPORT_TEXT(dfn, rpt_id, '', SZ_RANGE, '', cursor, -1)).map(fn_map).sort((a, b) => b.time - a.time);
|
||||||
if(data.length > count) res.next = strftime_vista(res.dt_next = dt_end = data_endtime(data));
|
if(data.length > count) {
|
||||||
else {
|
res.next = strftime_vista(res.dt_next = dt_end = data_endtime(data));
|
||||||
|
return res;
|
||||||
|
} else interval *= 2;
|
||||||
|
}
|
||||||
data = (await client.ORWRP_REPORT_TEXT(dfn, rpt_id, '', SZ_RANGE, '', -1, -1)).map(fn_map).sort((a, b) => b.time - a.time);
|
data = (await client.ORWRP_REPORT_TEXT(dfn, rpt_id, '', SZ_RANGE, '', -1, -1)).map(fn_map).sort((a, b) => b.time - a.time);
|
||||||
cursor = Math.floor(res.next = strftime_vista(res.dt_next = dt_end = data_endtime(data)));
|
cursor = Math.floor(res.next = strftime_vista(res.dt_next = dt_end = data_endtime(data)));
|
||||||
hasmore = false;
|
hasmore = false;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
fn.omega = omega;
|
fn.omega = omega;
|
||||||
|
Loading…
Reference in New Issue
Block a user