## Issue
In Sidecar issue [#1485](https://github.com/paritytech/substrate-api-sidecar/issues/1485), it was mentioned [here](https://github.com/paritytech/substrate-api-sidecar/issues/1485#issuecomment-2551441564) that:
- a possible regression hapenned
- `v19.0.2` works as expected
- `v19.3.1` fails after 20hours
Reviewing the differences between those versions might help us identify the root cause of this regression.
## Important Changes between versions
I have reviewed the changes from `v19.0.2` and `v19.3.1` (listed below from newest to oldest) and categorised the changes:
- with a βsign -> for the ones that could potentially affect the performance
- with a β sign -> the ones that shoulnd't affect
- with a π sign -> the ones that potentially need further investigation
Please note that the below categorisation is based on my personal judgement.
## Diffs
### [v19.3.1](https://github.com/paritytech/substrate-api-sidecar/releases/tag/v19.3.1)
Below the important changes introduced in `v19.3.1` compared to previous version `v19.3.0`:
- [pjs-api](https://github.com/paritytech/substrate-api-sidecar/pull/1546/files) from [14.1.1](https://github.com/polkadot-js/api/releases/tag/v14.1.1) to [14.2.3](https://github.com/polkadot-js/api/releases/tag/v14.2.3)
- [update LRUcache to not keep thread](https://github.com/polkadot-js/api/pull/6013/files): β π
- [Increase RPC-CORE default cache capacity](https://github.com/polkadot-js/api/pull/6016/files): β π
- [pjs-api](https://github.com/paritytech/substrate-api-sidecar/pull/1547/files) from [14.2.3](https://github.com/polkadot-js/api/releases/tag/v14.2.3) to [14.3.1](https://github.com/polkadot-js/api/releases/tag/v14.3.1): should not affect β
---
### [v19.3.0](https://github.com/paritytech/substrate-api-sidecar/releases/tag/v19.3.0)
Below the important changes introduced in `v19.3.0` compared to previous version `v19.2.2`:
- [improve performance with new PJS version](https://github.com/paritytech/substrate-api-sidecar/pull/1520/files): β π
- [pjs-api](https://github.com/paritytech/substrate-api-sidecar/pull/1515/files) from [13.2.1](https://github.com/polkadot-js/api/releases/tag/v13.2.1) to [14.0.1](https://github.com/polkadot-js/api/releases/tag/v14.0.1): should not affect β
- [pjs-api](https://github.com/paritytech/substrate-api-sidecar/pull/1522/files) from [14.0.1](https://github.com/polkadot-js/api/releases/tag/v14.0.1) to [14.1.1](https://github.com/polkadot-js/api/releases/tag/v14.1.1)
- [Add LRU TTL cache](https://github.com/polkadot-js/api/pull/5997): β π
---
### [v19.2.2](https://github.com/paritytech/substrate-api-sidecar/releases/tag/v19.2.2)
Below the important changes introduced in `v19.2.2` compared to previous version `v19.2.1`:
- [fix for express v5 - access router in getRoutes](https://github.com/paritytech/substrate-api-sidecar/pull/1510/files): should not affect β π
---
### [v19.2.1](https://github.com/paritytech/substrate-api-sidecar/releases/tag/v19.2.1)
Below the important changes introduced in `v19.2.1` compared to previous version `v19.2.0`:
- [express update to v5](https://github.com/paritytech/substrate-api-sidecar/pull/1502/files): βπ
- [update substrate dev](https://github.com/paritytech/substrate-api-sidecar/pull/1500/files): should not affect β
---
### [v19.2.0](https://github.com/paritytech/substrate-api-sidecar/releases/tag/v19.2.0)
Below the important changes introduced in `v19.2.0` compared to previous version `v19.1.0`:
- [add loki functionality](https://github.com/paritytech/substrate-api-sidecar/pull/1479): should not affect β
- [inject metrics registry in route controllers](https://github.com/paritytech/substrate-api-sidecar/pull/1477/files):
- metrics can be disabled - should not affect β
- code added in Blocks related endpoints β
- [moves LRUcache to Controller](https://github.com/paritytech/substrate-api-sidecar/pull/1489/files): Blocks related codeβ
- [improve perf in Blocks - dep injection](https://github.com/paritytech/substrate-api-sidecar/pull/1483/files): Blocks related codeβ
- [pjs-api](https://github.com/paritytech/substrate-api-sidecar/pull/1496/files) update from [v12.3.1](https://github.com/polkadot-js/api/releases/tag/v12.3.1) to [v13.1.1](https://github.com/polkadot-js/api/releases/tag/v13.1.1): should not affect β
- [pjs-api](https://github.com/paritytech/substrate-api-sidecar/pull/1496/files) update from [v13.1.1](https://github.com/polkadot-js/api/releases/tag/v13.1.1) to [v13.2.1](https://github.com/polkadot-js/api/releases/tag/v13.2.1): should not affect β
---
### [v19.1.0](https://github.com/paritytech/substrate-api-sidecar/releases/tag/v19.1.0)
Below the important changes introduced in `v19.1.0` compared to previous version `v19.0.2`:
- [route based metrics](https://github.com/paritytech/substrate-api-sidecar/pull/1465/files): should not affect β
- [pjs-api](https://github.com/paritytech/substrate-api-sidecar/pull/1473/files) update from [v12.0.1](https://github.com/polkadot-js/api/releases/tag/v12.0.1) to [v12.3.1](https://github.com/polkadot-js/api/releases/tag/v12.3.1)
- Changes: types updates and other changes that should not affect β
- [util-crypto](https://github.com/polkadot-js/common) update from [v12.6.2](https://github.com/polkadot-js/common/releases/tag/v12.6.2) to [v13.0.2](https://github.com/polkadot-js/common/releases/tag/v13.0.2): changes that should not affect β
---
### [v19.0.2](https://github.com/paritytech/substrate-api-sidecar/releases/tag/v19.0.2) : works fine β