Получение ошибки: «Ошибка CURLerror (curl_easy_perform ()) - code = 2 msg = 'Ошибка инициализации'." - PullRequest
0 голосов
/ 21 октября 2019

(Отправка следующей строки вопросов и ответов, так как она может быть полезна для других, получающих аналогичные сообщения об ошибках ...)


Вопрос, заданный "M":

У меня 64-разрядный драйвер ODBC для Windows 7. При использовании Attunity Replicate я пытаюсь прочитать 1TB данных из Snowflake, после примерно 5 часов работы выдает ошибку ниже:

Результат загрузки рабочей ошибки: Ошибка рабочего: [Snowflake] [Snowflake] (4)

REST-запрос для URL https://sfc -va-ds1-2-customer-stage.s3.amazonaws.com / ogn3-s-vass2706 / results / 018ef7de-01c5-8ec1-0000-2ab10047f27a_0/ main / data_1_5_225? x-amz-алгоритм-клиент-шифрования на стороне сервера = AES256 & кодирование содержимого ответа = gzip & AWSAccessKeyId = AKIAJP5BI3JZEVKDRXDQ & Expires = 1568894118 & подпись = код MoTOQPf5ZiBj6_J_RF_RX_Rj0_F_L_WR_F_L_C_F_L_C_F_L_C_F_L_C_F_L_C_F_L_C_F_L_C_W_C_L_C_L_C_L_C_L_C_L_C_W_C_L_C_L_C_L_C_W_T_L_C_L_C_E_S_F_L_W_T_L_C_H_S_S_F_WR_0_0msg = 'Ошибка инициализации'.

Примечание. Эта ошибка возникает после запуска в течение примерно 5 часов после запуска задания.

1 Ответ

0 голосов
/ 21 октября 2019

Ответ "КМ" № 1:

1) Эта проблема возникает периодически или постоянно?

2) Эта проблема возникает с небольшим набором данных?

3) Какую версию Snowflake ODBC вы используете? Можете ли вы использовать последнюю версию драйвера ODBC 2.19.14 и сообщить нам ее поведение?

4) Используете ли вы прокси в своей сети?

5) Пожалуйста, запустите приведенное ниже утверждение из Snowflake WebGUI или из терминала SnowSQL, чтобы получить список конечных точек, которые должны быть внесены в белый список в брандмауэре / сети. (поделитесь информацией о конечной точке с вашей сетевой командой)

 SELECT SYSTEM$WHITELIST();

ИЛИ (если вы хотите немного более читаемый вывод):

select t.value:type::varchar as type, t.value:host::varchar as host, t.value:port as port from table(flatten(input => parse_json(system$whitelist()))) as t;

Примечание: для правильной работы Snowflake необходимоиметь возможность доступа к набору адресов HTTP / HTTPS. Если ваша политика сервера запрещает доступ к большинству или всем внешним IP-адресам и веб-сайтам, вы должны включить эти адреса в белый список, чтобы разрешить нормальную работу службы.

Все взаимодействие со Snowflake происходит через порт 443. Однако проверки сертификатов CRL и OCSPпередаются через порт 80. Сетевой администратор вашей организации должен открыть брандмауэр для трафика через порты 443 и 80.


"M" Последующий ответ № 1:

Пожалуйста, найдите мой ответ ниже на ваши вопросы:

1) Это неустойчивая проблема. Не всегда происходит сбой.

2) Проблема не возникает с небольшим набором данных. Для больших наборов данных задание выполняется в течение 11-12 часов, а затем происходит сбой с указанной ошибкой.

3) Мы используем версию драйвера ODBC: 2.19.09.00. Мы проверим более высокую версию.

4) Нет. Мы не используем прокси в сети.

5) ОК.

Я проверю и внесу в белый список всеIP-адрес Snowflake в нашей сети, установите последнюю версию драйвера ODBC и снова запустите задание. Я буду держать вас в курсе о результате.


"M" Последующий ответ № 2:

Я обновилДрайвер ODBC до последней версии 2.19.14.

Теперь на работающем задании происходит сбой после запуска в течение 24 часов с другой ошибкой.

Сообщение об ошибке:

Ошибка при загрузке результата: Ошибка работника: [Снежинка] [Снежинка] (4)

Запрос REST для URL https://sfc -va-ds1-2-customer-stage.s3.amazonaws.com / ogn3-s-vass2706 / результаты / 018f030a-0164-1b0c-0000-2ab1004b8b96_0 / Главный / data_5_6_219? х-AMZ-серверный-шифрования-клиент-алгоритм = AES256 & отклика Content-Encoding = GZIP & AWSAccessKeyId = AKIAJP5BI3JZEVKDRXDQ & Истекает = 1569308247 & Подпись= 2DSCUhY7DU56cpq6jo31rU5LKRw% 3D не удалось: CURLerror (ошибка curl_easy_perform ()) - code = 28 msg = 'Тайм-аут достигнут ".

Не могли бы вы посоветовать по этому поводу?


KM Response # 2:

1) Какая у вас операционная система?

2) Эта проблема возникает с маленьким или большим набором данных?

3) Можете ли вы попытаться очистить некоторое место в расположении TEMP на примере сервера для Windows, это будет C: \Windows \ Temp и C: \ Users \\ AppData \ Local \ Temp \ и для linux /tmp.

4) Можете ли вы убедиться, что URL https://sfc -va-ds1-2-customer-stage.s3.amazonaws.com занесен в белый список.

5) попробуйте команду для проверки подключения.

curl -v -k https://sfc -va-ds1-2-customer-stage.s3.amazonaws.com


"M" Последующий ответ № 3:

1) Операционная система: Windows Server 2012 R2.

2) Эта проблема возникает только с большим набором данных, особенно когда задание выполняется в течение 24 часов.

3) Готово. Очистить пространство.

4) URL-адрес занесен в белый список.

5) В оболочке Windows Power эта команда выдает ошибку:

Invoke-WebRequest: параметр не можетнайдено, что соответствует имени параметра 'k'.

В строке: 1 символ: 9

+ curl -v -k https://sfc-va-ds1-2-customer-stage.s3.amazonaws.com

+     ~~

  + CategoryInfo     : InvalidArgument: (:) [Invoke-WebRequest], ParameterBindingException

  + FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.PowerShell.Commands.InvokeWebRequestCommand

Ответ KM # 3:

Используйте команду CURL для проверки возможности подключения к Snowflake. (Убедитесь, что на машине установлен curl. Если нет, то вы можете скачать curl от стороннего производителя, например https://curl.haxx.se/download.html)

curl -v -k https://sfc -va-ds1-2-customer-stage.s3.amazonaws.com

Иногда эта проблема может возникать, если в расположении TEMP осталось мало места. Вы можете попробовать запустить задание и отслеживать пространство% TEMP%. .

Я не уверен, как работает инструмент Attunity, но некоторые инструменты ETL, такие как Informatica ETL, создают временный файл на сервере и используют расположение% TEMP%.


Последующий ответ "M" № 4:

Используя команду curl, теперь она может успешно подключиться. Сейчас я запусту задание и буду отслеживать% TEMP% location.


Любые другие идеи, рекомендации или возможные обходные пути?

...