Google AppEngine архивира, отчитайки ApiTemporaryUnavailableError

Когато се опитвате да направите резервно копие на хранилището за данни от страницата за администриране на DataStore, архивирането се проваля с грешка и за целите на blobstore и cloud store:

Callstack за облачно хранилище:

ApplicationError: 1 Traceback (последното последно извикване): Файл „/base/data/home/runtimes/python/python_lib/versions/1/google/appengine/ext/datastore_admin/backup_handler.py“, ред 642, в _ProcessPostRequest 10) Файл „/base/data/home/runtimes/python/python_lib/versions/1/google/appengine/ext/datastore_admin/backup_handler.py“, ред 492, в _perform_backup gs_bucket_name = validate_and_canonicalize_gs_bucket(gs_bucket_name) Файл „/base/data/ home/runtimes/python/python_lib/versions/1/google/appengine/ext/datastore_admin/backup_handler.py", ред 1803, в validate_and_canonicalize_gs_bucket verify_bucket_writable(bucket_name) Файл "/base/data/home/runtimes/python/python_lib/versions /1/google/appengine/ext/datastore_admin/backup_handler.py", ред 1763, в verify_bucket_writable test_file = files.open(files.gs.create(file_name), 'a', exclusive_lock=True) Файл "/base/data /home/runtimes/python/python_lib/versions/1/google/appengine/api/files/gs.py", ред 331, в create return files._create(_GS_FILESYSTEM, filename=filename, params=params) File "/base /data/home/runtimes/python/python_lib/versions/1/google/appengine/api/files/file.py", ред 650, в _create _make_call('Създаване', заявка, отговор) Файл "/base/data/ home/runtimes/python/python_lib/versions/1/google/appengine/api/files/file.py", ред 255, в _make_call _raise_app_error(e) файл "/base/data/home/runtimes/python/python_lib/versions /1/google/appengine/api/files/file.py", ред 183, в _raise_app_error повишава ApiTemporaryUnavailableError(e) ApiTemporaryUnavailableError: ApplicationError: 1

Стек за извиквания за хранилище на петна:

ApplicationError: 1 Traceback (последното последно извикване): Файл "/base/data/home/runtimes/python/python_lib/versions/1/google/appengine/ext/webapp/_webapp25.py", ред 716, в call handler.post(*groups) Файл "/base/data/home/runtimes/python/python_lib/versions/1/google/appengine/ext/mapreduce/base_handler.py", ред 147, в самото публикуване .handle() Файл "/base/data/home/runtimes/python/python_lib/versions/1/google/appengine/ext/mapreduce/handlers.py", ред 1391, в състояние на манипулатор) Файл "/base/data/ home/runtimes/python/python_lib/versions/1/google/appengine/ext/mapreduce/handlers.py", ред 1539, в _schedule_shards mr_state.writer_state) Файл "/base/data/home/runtimes/python/python_lib/versions /1/google/appengine/ext/mapreduce/output_writers.py", ред 726, в create acl=acl) Файл "/base/data/home/runtimes/python/python_lib/versions/1/google/appengine/ext/ mapreduce/output_writers.py", ред 640, в _create_file връщане files.blobstore.create(mime_type, име на файл) Файл "/base/data/home/runtimes/python/python_lib/versions/1/google/appengine/api/files/ blobstore.py", ред 75, в създаване на върнати файлове._create(_BLOBSTORE_FILESYSTEM, params=params) Файл "/base/data/home/runtimes/python/python_lib/versions/1/google/appengine/api/files/file. py", ред 650, в _create _make_call('Създаване', заявка, отговор) Файл "/base/data/home/runtimes/python/python_lib/versions/1/google/appengine/api/files/file.py", ред 255, в _make_call _raise_app_error(e) Файл "/base/data/home/runtimes/python/python_lib/versions/1/google/appengine/api/files/file.py", ред 183, в _raise_app_error повдига ApiTemporaryUnavailableError(e ) ApiTemporaryUnavailableError: ApplicationError: 1

Изглежда има проблем с основния API за файлове, който е извън нашия контрол. Някой да се е сблъсквал с това и да има решение или заобиколно решение?


person epsmarkh    schedule 30.09.2014    source източник


Отговори (1)


Мисля, че това може да е свързано с факта, че API за файлове е остарял.

Имах същата грешка, опитвайки се да прокарам тръбопровод на mapreduce към blobstore (както има George-Bogdan). Реших най-накрая да направя превключването, което избягвах (превключване към GCS клиента библиотека). След като завърших превключването, тестовете ми бяха убедителни, това работи правилно.

Изглежда, че това е преходен проблем от страна на Google. Но тъй като API за файлове е остарял, се чувствам по-сигурен, като използвам библиотеката, която всъщност предлагат да използвам сега

(отговорът е копиран от моя собствен отговор на друг въпрос)

person Patrice    schedule 30.09.2014