Issue Details (XML | Word | Printable)

Key: CORE-1535
Type: New Feature New Feature
Status: Open Open
Priority: Major Major
Assignee: Unassigned
Reporter: Kovalenko Dmitry
Votes: 1
Watchers: 1

If you were logged in you would be able to see more operations.
Firebird Core

Improve isc_blob_info [+ isc_info_blob_char_length]

Created: 25/Oct/07 02:05 AM   Updated: 31/Oct/07 01:47 AM
Component/s: None
Affects Version/s: 2.1 Beta 2, 2.1 RC1, 2.1.0, 3.0 RC2
Fix Version/s: None

 Description  « Hide
Target: optimization of Firebird work as MSSQL linked server

MSSQL get BLOB text data in two steps:
- Get count of characters
- Get text

Currently, for multi-byte BLOB text (UNICODE_FSS / UTF8), we can't calculate count of characters without load of all BLOB on client side.

I think, this operation can be maked on server side.

For this we can define new command isc_info_blob_char_length for IB API function isc_blob_info

First time isc_info_blob_char_length must simple calculate character count (with minimum optimization for single-byte code page)

In future you can change ODS and store prepared char length of text BLOB

I hope, you implement this feature in FB 2.1, because (i think) this do not required very hard work. And their effect - very very large.

 All   Comments   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Adriano dos Santos Fernandes added a comment - 30/Oct/07 08:44 PM
You can use CHAR_LENGTH SQL function with blobs.

Kovalenko Dmitry added a comment - 31/Oct/07 01:47 AM
And instead of isc_info_blob_total_length I can use OCTET_LENGTH?

Incorrect answer.

Using any SQL - 3 call of server (execute,fetch,close) as minimum

Using of isc_info_blob_xxx - one (?) call only