Oracle Slow performance in direct mode with clob

Discussion of open issues, suggestions and bugs regarding UniDAC (Universal Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
cointec
Posts: 50
Joined: Fri 11 Dec 2015 11:02

Oracle Slow performance in direct mode with clob

Post by cointec » Wed 05 Apr 2017 18:20

Oracle 12c
UniDac 6.4.16

I have a table with two clob, and some varchar fields. The clob does not contain a big amount of data, simply some text lines.
The table has 540 records.

I'm connecting to a database and executing select * from table. The time to return all records are near 15 seconds. If I execute the same query, and I exclude the clob fields, the time to load all record is less than one second.
If I connect with SQLDeveloper, for example, and I run the query, the time to load all records is less than one second.
Is there any way to improve performance loading blobs?

Thanks

cointec
Posts: 50
Joined: Fri 11 Dec 2015 11:02

Re: Oracle Slow performance in direct mode with clob

Post by cointec » Thu 06 Apr 2017 15:07

It seems I have solved the issue.
I have set this parameters in Specific Options, with an unidirectional query that is used to load records.

Code: Select all

SpecificOptions.Values['CacheLobs']       := 'False';
SpecificOptions.Values['DeferredLobRead'] := 'False';
SpecificOptions.Values['PrefetchLobSize'] := inttostr(16384);
I have used

Code: Select all

PrefetchLobSize
, but is not documented in the version I use, 6.4.16.
Thank you for your support.

MaximG
Devart Team
Posts: 1822
Joined: Mon 06 Jul 2015 11:34

Re: Oracle Slow performance in direct mode with clob

Post by MaximG » Fri 07 Apr 2017 06:56

We are glad that the problem was resolved. Thank you for the comment. The opinion of each client is very important for us. We will try to make the description of specificity of working with BLOB fields in our documentation more complete and clear.

Post Reply