Skip to content

Fix GetObjectDirectorySize with transactions

Sami Hiltunen requested to merge smh-fix-tx-object-dir-size into master

GetObjectDirectorySize is currently failing in QA tests. This is due to the validation applied on the object directory path sent. The object directory must either exist in the repository, or in +gitaly/tmp/quarantine-<repo-specific-id>.

TransactionManager quarantines the transactions by pointing the object directory to a quarantine directory contained in the transaction's temporary directory. This fails the existing checks.

This commit adds support for this by adding an additional check and accepting paths that end in '/quarantine' after validating the object directory points somewhere in the storage. This allows the transaction manager created quarantine directories to pass the validation.

Closes #5889 (closed)

Merge request reports