Limit number of staging requests allowed on EOSCTA
Situation
As shown in https://gitlab.cern.ch/cta/operations/-/issues/1286, it is possible for a misbehaved client to do many staging requests on the same file, without any pushback on the CTA side.
This can end up in scenarios where 1000's of staging requests IDs exist for a single file, which ends up bloating the EOSCTA logs as well as the quarkDB namespace.
Task
Do not allow the number of staging requests on a single file to grow uncontrollably.
Action
- Add a limit to the number of staging request IDs on a single file. After this number has been reached, the staging request should fail with an appropriate error.
- Allow this number to be configurable (by default should be a small value, such as
32
).