ssis包中的Progress SQL错误:缓冲区对于生成的记录来说太小了

时间:2018-03-05 10:52:42

标签: ssis etl openedge progress-db

我有一个ssis包,它使用SQL command从Progress数据库中获取数据。每次执行查询时,都会抛出此特定错误:

  

错误[HY000] [DataDirect] [ODBC进度OpenEdge线程协议驱动程序] [OPENEDGE] SQL中的内部错误-1(缓冲区太小,无法生成记录)来自子系统RECORD SERVICES函数recPutLONG从sts_srtt_t调用::: add_row on( ttbl#4,len / maxlen / reqlen = 33/32/33)for。保存日志以获取进度技术支持。

我正在运行以下查询:

Select max(ROWID) as maxRowID from TableA
GROUP BY ColumnA,ColumnB,ColumnC,ColumnD

1 个答案:

答案 0 :(得分:0)

我有同样的错误。 将启动参数-SQLTempStorePageSize-SQLTempStoreBuff分别更改为243000之后,问题就解决了。 我认为,对于您来说,值必须更改为4020000

您可以找到更多信息here。那篇文章中的参数名称与我的数据库中的名称有些不同,这取决于使用的是Progress-version女巫。