Информация

Последние записи

Теги


Блоги


Записи из всех блогов с тегом: ssis


out of memory while reading tuples при импорте из PostgreSQL

Блог: Cruel SQL
Импортировал давеча SSIS-ом в меру увесистую (несколько миллионов записей) таблицу на SQL Server из PostgreSQL. Скачал официальный бесплатный ODBC-драйвер ( http://www.postgresql.org/ftp/odbc/versions/ ), пульнул DataFlow.

И всё бы пучком, но на небольших выборках.
А вот забрать всю таблицу разом не получалось. Вместо данных вылезала ошибка из сабжа.
Погуглил. Ну ладно, может, лениво погуглил, но, кроме каких-то невнятных кувырков с импортированием данных по кускам и рекламы коммерческих OLEDB-шных провайдеров, ничего не нашёл. Пришлось действовать методом тыка.

В общем, коллеги, если у вас вдруг вскочит аналогичный прыщ по работе, то вот рецепт.
В ConnectionString-е находим свойство useserversideprepare=0 и проставляем там единичку вместо нуля. Ошибка out of memory возникает на уровне ODBC-шного драйвера при подготовке данных на стороне клиента и, соответственно, исчезает при виде этой самой единички.

Ну и да, если импорт запускается по расписанию, нужно в свойствах jobstep-а проставить выполнение в 32-битной среде, иначе валится с мутной ошибкой о невозможности подключения.
автор: Алексей Дружинин добавлено: 17 май 17 просмотры: 1832, комментарии: 0



Еще одна ошибка сборщика данных (Data Collector-а).

Эта ошибка применима для MS SQL Server 2012, и тянется с SP2 CU6, после установки CU6 на CU5 SP2, перестает работать сбор данных Query Statistics. Помнится, мы даже кейс в Майкрософте открывали, но решения они не предоставили, сообщив, что это текущий баг, предложив вариант решения, который мы уже на тот момент сделали. Я бы забыл про него, так как уже вышел SP3 для MS SQL Server, но тут снова эта ошибка повторилась после установки SP3 на MS SQL Server2012.


Итак, после установки SP3 на MS SQL Server 2012 перестает работать сбор данных Query Statistics, при этом в журнале ошибки:
«SSIS Error Code DTS_E_PRIMEOUTPUTFAILED.  The PrimeOutput method on ODS - Get snapshot of dm_exec_requests returned error code 0xC020902A.  The component returned a failure code when the pipeline engine called PrimeOutput(). The meaning of the failure code is defined by the component, but the error is fatal and the pipeline stopped executing.  There may be error messages posted before this with more information about the failure.»«"RFS - Read current cache with dm_exec_requests" failed validation and returned validation status "VS_NEEDSNEWMETADATA".»
Решение, как и в прошлый раз, скопировать пакеты с другого сервера с версией до обновления.

Для начала, я скопировал пакет с MS SQL Server 2012 SP2 CU5, но ошибка осталась, затем проверил работу на тестовом сервере, где версия была SP3 CU1, там сборщик данных работал, поэтому решил скопировать пакеты с данного сервера. Так что возможно вам дос...
читать дальше...
автор: dbasimple добавлено: 26 фев 16 просмотры: 1666, комментарии: 1