|
|
@@ -109,8 +109,11 @@ export class MariaDBImporter {
|
|
|
const count = res.rows[0]['Count'] as number;
|
|
|
let offset = 0;
|
|
|
let pageSize = Math.min(CHUNK_SIZE, count);
|
|
|
+ let measure: number[] = [];
|
|
|
+ let estimate = '-- Rows/s | EST --:--:--';
|
|
|
+ let prevTime = new Date().getTime();
|
|
|
while (offset + pageSize <= count) {
|
|
|
- Logger.info('[INFO]', `Importing ServerDataEntry (${offset}/${count}) ...`);
|
|
|
+ Logger.info('[INFO]', `Importing ServerDataEntry (${offset}/${count}) - ${estimate} ...`);
|
|
|
res = await this.oldDb.stmt('SELECT * FROM `ServerDataEntry` LIMIT ? OFFSET ?;', [pageSize, offset]);
|
|
|
|
|
|
if (!res.rows.length) break;
|
|
|
@@ -120,6 +123,16 @@ export class MariaDBImporter {
|
|
|
|
|
|
await this.newDb.query(sql, data);
|
|
|
|
|
|
+ measure.push((pageSize / (new Date().getTime() - prevTime)) * 1000);
|
|
|
+ if (measure.length > 10) measure.shift();
|
|
|
+ prevTime = new Date().getTime();
|
|
|
+
|
|
|
+ if (measure.length > 0) {
|
|
|
+ const rowsPerSec = measure.reduce((res, meas) => (res += meas), 0) / measure.length;
|
|
|
+ const estSecs = (count - offset) / rowsPerSec;
|
|
|
+ estimate = `${Math.round(rowsPerSec * 10) / 10} rows/s | EST ${moment(0).add(estSecs, 'seconds').format('HH:mm:ss')}`;
|
|
|
+ }
|
|
|
+
|
|
|
offset += pageSize;
|
|
|
pageSize = Math.min(pageSize, count - offset);
|
|
|
}
|
|
|
@@ -131,8 +144,11 @@ export class MariaDBImporter {
|
|
|
const count = res.rows[0]['Count'] as number;
|
|
|
let offset = 0;
|
|
|
let pageSize = Math.min(CHUNK_SIZE, count);
|
|
|
+ let measure: number[] = [];
|
|
|
+ let estimate = '-- Rows/s | EST --:--:--';
|
|
|
+ let prevTime = new Date().getTime();
|
|
|
while (offset + pageSize <= count) {
|
|
|
- Logger.info('[INFO]', `Importing ServerDataValue (${offset}/${count}) ...`);
|
|
|
+ Logger.info('[INFO]', `Importing ServerDataValue (${offset}/${count}) - ${estimate} ...`);
|
|
|
const res = await this.oldDb.stmt('SELECT * FROM `ServerDataValue` LIMIT ? OFFSET ?;', [pageSize, offset]);
|
|
|
|
|
|
if (!res.rows.length) break;
|
|
|
@@ -142,6 +158,16 @@ export class MariaDBImporter {
|
|
|
|
|
|
await this.newDb.query(sql, data);
|
|
|
|
|
|
+ measure.push((pageSize / (new Date().getTime() - prevTime)) * 1000);
|
|
|
+ if (measure.length > 10) measure.shift();
|
|
|
+ prevTime = new Date().getTime();
|
|
|
+
|
|
|
+ if (measure.length > 0) {
|
|
|
+ const rowsPerSec = measure.reduce((res, meas) => (res += meas), 0) / measure.length;
|
|
|
+ const estSecs = (count - offset) / rowsPerSec;
|
|
|
+ estimate = `${Math.round(rowsPerSec * 10) / 10} rows/s | EST ${moment(0).add(estSecs, 'seconds').format('HH:mm:ss')}`;
|
|
|
+ }
|
|
|
+
|
|
|
offset += pageSize;
|
|
|
pageSize = Math.min(pageSize, count - offset);
|
|
|
}
|
|
|
@@ -180,8 +206,11 @@ export class MariaDBImporter {
|
|
|
const count = res.rows[0]['Count'] as number;
|
|
|
let offset = 0;
|
|
|
let pageSize = Math.min(CHUNK_SIZE, count);
|
|
|
+ let measure: number[] = [];
|
|
|
+ let estimate = '-- Rows/s | EST --:--:--';
|
|
|
+ let prevTime = new Date().getTime();
|
|
|
while (offset + pageSize <= count) {
|
|
|
- Logger.info('[INFO]', `Importing HealthCheckDataEntry (${offset}/${count}) ...`);
|
|
|
+ Logger.info('[INFO]', `Importing HealthCheckDataEntry (${offset}/${count}) - ${estimate} ...`);
|
|
|
const res = await this.oldDb.stmt('SELECT * FROM `HealthCheckDataEntry` LIMIT ? OFFSET ?;', [pageSize, offset]);
|
|
|
|
|
|
if (!res.rows.length) break;
|
|
|
@@ -194,6 +223,16 @@ export class MariaDBImporter {
|
|
|
|
|
|
await this.newDb.query(sql, data);
|
|
|
|
|
|
+ measure.push((pageSize / (new Date().getTime() - prevTime)) * 1000);
|
|
|
+ if (measure.length > 10) measure.shift();
|
|
|
+ prevTime = new Date().getTime();
|
|
|
+
|
|
|
+ if (measure.length > 0) {
|
|
|
+ const rowsPerSec = measure.reduce((res, meas) => (res += meas), 0) / measure.length;
|
|
|
+ const estSecs = (count - offset) / rowsPerSec;
|
|
|
+ estimate = `${Math.round(rowsPerSec * 10) / 10} rows/s | EST ${moment(0).add(estSecs, 'seconds').format('HH:mm:ss')}`;
|
|
|
+ }
|
|
|
+
|
|
|
offset += pageSize;
|
|
|
pageSize = Math.min(pageSize, count - offset);
|
|
|
}
|