TOraLoader speed diference between 6.25.2.15 and 6.50.0.39

Discussion of open issues, suggestions and bugs regarding ODAC (Oracle Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
odac9pro
Posts: 14
Joined: Wed 16 Apr 2014 11:01

TOraLoader speed diference between 6.25.2.15 and 6.50.0.39

Post by odac9pro » Wed 16 Apr 2014 11:25

We have two oldish versions of one of our applications, one using 6.25.2.15 and the other using 6.50.0.39, and we have noticed a large increase in the amount of time an import using TOraLoader takes between the 2 versions. In 6.25.2.15 the time is about a minute, whereas in 6.50.0.39 it takes nearly 10 minutes. (have also tested using the latest 9.2 version and that is also slow)
Was there some change that happened between 6.25.2.15 and 6.50.0.39 that would cause the slowdown, and is there a way of reverting to the earlier behaviour?
The only reference I can find to TOraLoader in the version history is "Added ability not to commit transaction in TOraLoader for DML mode" in version 6.50.0.35

AlexP
Devart Team
Posts: 5530
Joined: Tue 10 Aug 2010 11:35

Re: TOraLoader speed diference between 6.25.2.15 and 6.50.0.39

Post by AlexP » Thu 17 Apr 2014 11:01

Hello,

Please send a project demonstrating performance loss and the dump of the table used for testing to alexp*devart.com.

odac9pro
Posts: 14
Joined: Wed 16 Apr 2014 11:01

Re: TOraLoader speed diference between 6.25.2.15 and 6.50.0.39

Post by odac9pro » Tue 24 Nov 2015 11:16

Hi Alex, apologies for resurrecting such an old thread, but we are still having the issues described in my original post. We have been managing by keeping ODAC 6.25.2.15, under Delphi7, but we now need to move this application to Delphi XE5, with the latest ODAC 9. Is the email you mentioned still valid for me to send a small test program.

AlexP
Devart Team
Posts: 5530
Joined: Tue 10 Aug 2010 11:35

Re: TOraLoader speed diference between 6.25.2.15 and 6.50.0.39

Post by AlexP » Tue 24 Nov 2015 11:31

Yes, you can send your sample to alexp*devart*com or support*devart*com .

AlexP
Devart Team
Posts: 5530
Joined: Tue 10 Aug 2010 11:35

Re: TOraLoader speed diference between 6.25.2.15 and 6.50.0.39

Post by AlexP » Thu 26 Nov 2015 12:40

Yes, there was an explicit call of the Commit method added between these versions (6.25.2.15 and 6.50.0.39), that led to performance loss.
In the current version 9.6.20, to increase performance, set the TOraSession.Autocommit property to False;

odac9pro
Posts: 14
Joined: Wed 16 Apr 2014 11:01

Re: TOraLoader speed diference between 6.25.2.15 and 6.50.0.39

Post by odac9pro » Mon 30 Nov 2015 11:29

If I set AutoCommit to FALSE, won't this affect other parts of my application that are expecting it to be TRUE (ie OraQuery components that are linked to the OraSession) Or are you suggesting that I temporarily set it the FALSE during the loading operation, then reset it to TRUE. Or would it be better to create a separate OraSession just for the OraLoader component.

AlexP
Devart Team
Posts: 5530
Joined: Tue 10 Aug 2010 11:35

Re: TOraLoader speed diference between 6.25.2.15 and 6.50.0.39

Post by AlexP » Tue 01 Dec 2015 09:33

You can use the TDALoaderUtils.SetAutoCommit class method by passing your TOraLoader object to it as parameters:

Code: Select all

TDALoaderUtils.SetAutoCommit(OraLoader1, False);
This modification won't affect the other objects.

odac9pro
Posts: 14
Joined: Wed 16 Apr 2014 11:01

Re: TOraLoader speed diference between 6.25.2.15 and 6.50.0.39

Post by odac9pro » Tue 01 Dec 2015 10:41

I've tried that line, and it doesn't seem to make any difference, certainly not the speed increase that setting AutoCommit to FALSE on the TOraSession. I'm testing on 9.3.10 under Delphi7.

AlexP
Devart Team
Posts: 5530
Joined: Tue 10 Aug 2010 11:35

Re: TOraLoader speed diference between 6.25.2.15 and 6.50.0.39

Post by AlexP » Wed 23 Dec 2015 11:37

Indeed, this parameter doesn't affect performance anymore. You should change the OraSession option.

Post Reply