Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5f03ad5597 | ||
|
|
1efa3f055d | ||
|
|
8ccf11278b | ||
|
|
8a9e7ab4c3 | ||
|
|
c0fa7c0c51 | ||
|
|
022dfd4709 | ||
|
|
71e08aacc3 | ||
|
|
337eca87f2 |
@@ -112,7 +112,7 @@ class FileDecompressor {
|
||||
|
||||
async unZip(filename, outputDir) {
|
||||
const zip = new ZipStreamer();
|
||||
return await await zip.unpack(filename, outputDir);
|
||||
return await zip.unpack(filename, outputDir);
|
||||
}
|
||||
|
||||
unBz2(filename, outputDir) {
|
||||
|
||||
@@ -97,8 +97,7 @@ class ReaderWorker {
|
||||
wState.finish({path: `/tmp/${finishFilename}`});
|
||||
|
||||
} catch (e) {
|
||||
if (this.config.branch == 'development')
|
||||
console.error(e);
|
||||
log(LM_ERR, e.stack);
|
||||
wState.set({state: 'error', error: (errMes ? errMes : e.message)});
|
||||
} finally {
|
||||
//clean
|
||||
@@ -137,7 +136,6 @@ class ReaderWorker {
|
||||
|
||||
async periodicCleanDir(dir, maxSize, timeout) {
|
||||
try {
|
||||
log(`Start clean dir: ${dir}, maxSize=${maxSize}`);
|
||||
const list = await fs.readdir(dir);
|
||||
|
||||
let size = 0;
|
||||
@@ -149,21 +147,20 @@ class ReaderWorker {
|
||||
files.push({name, stat});
|
||||
}
|
||||
}
|
||||
log(`found ${files.length} files in dir ${dir}`);
|
||||
log(`clean dir ${dir}, maxSize=${maxSize}, found ${files.length} files`);
|
||||
|
||||
files.sort((a, b) => a.stat.mtimeMs - b.stat.mtimeMs);
|
||||
|
||||
let i = 0;
|
||||
while (i < files.length && size > maxSize) {
|
||||
const file = files[i];
|
||||
log(`rm ${dir}/${file.name}`);
|
||||
await fs.remove(`${dir}/${file.name}`);
|
||||
size -= file.stat.size;
|
||||
i++;
|
||||
}
|
||||
log(`removed ${i} files`);
|
||||
} catch(e) {
|
||||
log(LM_ERR, e.message);
|
||||
log(LM_ERR, e.stack);
|
||||
} finally {
|
||||
setTimeout(() => {
|
||||
this.periodicCleanDir(dir, maxSize, timeout);
|
||||
|
||||
@@ -57,6 +57,8 @@ class ZipStreamer {
|
||||
entryCallback = (entryCallback ? entryCallback : () => {});
|
||||
const unzip = new unzipStream({file: zipFile});
|
||||
|
||||
unzip.on('error', reject);
|
||||
|
||||
let files = [];
|
||||
unzip.on('extract', (en) => {
|
||||
const entry = {path: en.name, size: en.size, compressedSize: en.compressedSize};
|
||||
|
||||
Reference in New Issue
Block a user