Большой запрос не найден - PullRequest
1 голос
/ 20 марта 2020

Я пытаюсь переместить старый код, который использовал более старый гем google-api-client, в Idiomati c Ruby client google-cloud- ruby.

Процесс простой Задание запроса, которое сохраняет результаты в другой таблице. В более раннем геме я использовал конфигурацию, подобную этой:

config= {
    "jobReference": {
      "projectId": GOOGLE_PROJECT,
      'location'=> 'europe-west2'
     },
    'configuration'=> {
        'query'=> {
            'allowLargeResults' => true,
            'createDisposition' => 'CREATE_IF_NEEDED',
            'writeDisposition' => 'WRITE_TRUNCATE',
            'query' => sql,
            'destinationTable'=> {
                'projectId'=> GOOGLE_PROJECT,
                'datasetId'=> 'my_dataset',
                'tableId'=> table,
                'location'=> 'europe-west2'
            }
        }
    },
}

Следуя документации для новой библиотеки, я запускаю ее как базовый c тест (sql определен в другом месте)

bigquery = Google::Cloud::Bigquery.new

dataset = bigquery.dataset('my_dataset')

puts(dataset.location)

puts("1")

job = bigquery.query_job(sql, table: dataset.table(table), write: 'truncate', create: 'needed')

puts("2")

job.wait_until_done!

puts("3")

job.done?

Это доходит до пут 2, сбой на job.wait_until_done! с ошибкой Google::Cloud::NotFoundError: notFound: Not found: Job my_project:job_hApg5h0NQQb4Xbv7Sr3zzIXm5RWF

Если я "ставлю" job.job_id, я вижу тот же идентификатор, что и говоря, что не могу найти. Я попытался запустить это в наборах данных в нескольких регионах и в одном месте и все еще та же ошибка. В конечном счете, мне нужно, чтобы это работало только в регионе «Европа-Запад2».

Может кто-нибудь помочь и / или указать мне рабочий пример? Заранее спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...