Ask a question?
  • Contact Us
  • Support Case System
  • Support Forum

What Does Disable RowsetSizeLimit Do?

The OpenLink Scrollable Cursor Library (SCR) by default enforces a maximum cursor row-set size of 100 on any query. This is because the larger the row-set size the more memory the SCR will require to manage this, which could begin to unnecessarily impede performance as the system resources run low. Hence the need for this restriction as general no one should ever have the need to manipulate more data than can be viewed on their screen (ie a row-set). Thus if the an application makes SQLStmtOption(SQL_ROWSET_SIZE, value) where the value is greater than 100 our driver will return SQL_SUCCESS_WITH_INFO at which point a well written application which check SQLError and receive an "Option value changed" message at which point it should call SQLGetStmtOption(SQL_ROWSET_SIZE, &value) to see what it has actually been set to, which would be 100.

Some applications, for example Power Builder, ignored the SQL_SUCCESS_WITH_INFO response and assumed the value they requested resulting in errors when they attempted to scroll past the end of the row-set (100 rows) our driver returned. To enable such applications to work with our driver we thus introduced the Disable Rowset Size Limit option which if set removes our imposed restriction and trusts the application to set the row-set size to a reasonable value.