Compare commits

...

3 Commits

Author SHA1 Message Date
Bishal Prasad 8f35dac68e
streamToBuffer logging 2023-03-23 22:26:57 +05:30
Bishal Prasad 938b484130
add more logs 2023-03-23 16:59:47 +05:30
Bishal Prasad eff27e646c
Add paralleExecute index to logs 2023-03-23 10:23:51 +05:30
1 changed files with 12 additions and 1 deletions

13
dist/restore/index.js vendored
View File

@ -28332,6 +28332,7 @@ class Batch {
}
this.concurrency = concurrency;
this.emitter = new events.EventEmitter();
this.index = 0;
}
/**
* Add a operation into queue.
@ -28385,6 +28386,8 @@ class Batch {
*
*/
parallelExecute() {
const local_index = this.index++;
console.log(`parallelExecute ${local_index} Active count: ${this.actives} Completed count: ${this.completed} total: ${this.operations.length}`);
if (this.state === BatchStates.Error) {
return;
}
@ -28395,6 +28398,7 @@ class Batch {
while (this.actives < this.concurrency) {
const operation = this.nextOperation();
if (operation) {
console.log(`parallelExecute ${local_index} starting execution of operation ${this.offset}. Active count: ${this.actives}`);
operation();
}
else {
@ -28833,15 +28837,21 @@ async function streamToBuffer(stream, buffer, offset, end, encoding) {
let pos = 0; // Position in stream
const count = end - offset; // Total amount of data needed in stream
return new Promise((resolve, reject) => {
const timeout = setTimeout(() => reject(new Error(`The operation cannot be completed in timeout.`)), REQUEST_TIMEOUT);
const timeout = setTimeout(() => {
console.log("Timeout triggered.");
return reject(new Error(`The operation cannot be completed in timeout.`));
}, REQUEST_TIMEOUT);
stream.on("readable", () => {
console.log("Entering readable");
if (pos >= count) {
clearTimeout(timeout);
console.log("Leaving readable");
resolve();
return;
}
let chunk = stream.read();
if (!chunk) {
console.log("Leaving readable");
return;
}
if (typeof chunk === "string") {
@ -28851,6 +28861,7 @@ async function streamToBuffer(stream, buffer, offset, end, encoding) {
const chunkLength = pos + chunk.length > count ? count - pos : chunk.length;
buffer.fill(chunk.slice(0, chunkLength), offset + pos, offset + pos + chunkLength);
pos += chunkLength;
console.log("Leaving readable");
});
stream.on("end", () => {
clearTimeout(timeout);