Fix memory leak by not stacking data in the scan accumulator.

Also handle going from zero to initial graph data on dashboard.
fixes #273
This commit is contained in:
softsimon 2021-01-12 00:15:52 +07:00
parent ab8cb033e6
commit 4694a31f55
No known key found for this signature in database
GPG Key ID: 488D7DCFB5A430D7

View File

@ -164,18 +164,18 @@ export class DashboardComponent implements OnInit {
}), }),
scan((acc, [block]) => { scan((acc, [block]) => {
acc.unshift(block); acc.unshift(block);
acc = acc.slice(0, 6);
return acc; return acc;
}, []), }, []),
map((blocks) => blocks.slice(0, 6)),
); );
this.transactions$ = this.stateService.transactions$ this.transactions$ = this.stateService.transactions$
.pipe( .pipe(
scan((acc, tx) => { scan((acc, tx) => {
acc.unshift(tx); acc.unshift(tx);
acc = acc.slice(0, 6);
return acc; return acc;
}, []), }, []),
map((txs) => txs.slice(0, 6)),
); );
this.mempoolStats$ = this.stateService.connectionState$.pipe( this.mempoolStats$ = this.stateService.connectionState$.pipe(
@ -187,7 +187,7 @@ export class DashboardComponent implements OnInit {
.pipe( .pipe(
scan((acc, stats) => { scan((acc, stats) => {
acc.unshift(stats); acc.unshift(stats);
acc = acc.slice(0, acc.length - 1); acc = acc.slice(0, 120);
return acc; return acc;
}, mempoolStats) }, mempoolStats)
), ),