Idea #6830
Updated by Tom Clegg about 8 years ago
In certain use cases (notably keep-balance) it is necessary to retrieve a collection's manifest_text, but not necessary for the locators in the manifest to have valid permission signatures. Currently there is no way for a client to communicate whether signatures are needed, so they are always provided. Therefore, in cases where they aren't needed, much time (as well as memory and network traffic) is wasted by the API server generating signatures that will never be used.
In the case of keep-balance, this wasted time can dominate the runtime of the entire rebalance operation.
Proposed fix:
* API: Add a response field called "plain_manifest_text" which is unselected by default in both "get" and "index" APIs.
* API: Ensure the signatures are not included in the response *or computed at all* when a request selects plain_manifest_text and does not select manifest_text.
* keep-balance: select the plain_manifest_text field instead of manifest_text.