Обновить время X-Delete-After в существующем файле OpenStack Swift?

Я использую OpenStack Swift в качестве кэша и использую X-Delete-After, чтобы убедиться, что старые данные удалены.

Как я могу обновить или удалить значение X-Delete-After для существующего файла (без его повторной загрузки)?


person David Wolever    schedule 01.05.2017    source источник


Ответы (1)


Общий ответ заключается в том, чтобы POST обновить метаданные (включая новое значение для x-delete-after) к объекту. Помните, что вам нужно POST все содержимое метаданных объекта, а не только ту часть, которую вы хотите обновить.

Если у вас включена «быстрая публикация» (параметр конфигурации прокси post_as_copy=False и значение по умолчанию), то метаданные будут обновляться без копирования содержимого файла на стороне сервера.

Если у вас не включена быстрая публикация, она работает так же, но на стороне сервера она в конечном итоге будет выполнять КОПИЮ. Это внутреннее состояние кластера, и данные объекта не отправляются клиенту.

person John Dickinson    schedule 01.05.2017
comment
Приятно узнать о post_as_copy, спасибо! Кроме того, есть ли способ обновить только одну часть метаданных? Две поездки туда и обратно не идеальны. - person David Wolever; 01.05.2017