The eviction operation is performed at the gfal level. Currently, it is only available for XRootd transfers and it is done in an implicit manner via the Gfal2 XRootd TPC function. FTS cannot take a decision on whether after a transfer the source file should be evicted or not.
This issue proposes to make the eviction an explicit Storage Endpoint configuration. With this proposal, FTS can be configured to take a decision on when to evict a file based on the SE involved in the copy.
The following is proposed:
- Modify the SE configuration table to allow an additional parameter: Enable Eviction
- Provide a way to configure this setting via the REST Config interface
- Before doing the transfer, FTS will read the SE configuration options and pass the eviction flag to the fts_url_copy process
- The URL copy process adjusts the appropriate Gfal2 parameter
- Modify Gfal2 to allow enabling/disabling XRootd source file eviction (envisioned in gfalt_params)