Skip to content

frontend-grpc expects/modifies archiveReportURL provided by the client

Problem to solve

The original gRPC based frontend-grpc was assuming that the Archive request will generate the archiveId. As a result, the archiveReportURL that sent from the storage system could not include the required the archiveId. Thus the final archiveReportURL is built on in the frontend-grpc:

archiveRequest.archiveReportURL = request->md().transport().report_url() + "?archiveid=" + std::to_string(archiveFileId);

Since commit 13b43466 have introduced a Create step, the storage system is able to fully build the archiveReportURL on it's side and let frontend-grpc to use the provided report URL as-is.

Stakeholders

By dropping the assumptions of how archiveReportURL is formatted the frontend-grpc will become more storage system agnostic and can be used for both dCache and EOS.