Page 1 of 1

AV when querying RAW and CLOB

Posted: Wed 15 Aug 2012 16:21
by jdorlon
I think this is related to the problem I posted yesterday, but when I query a RAW and CLOB in the same query, with Unicode enabled, and RawAsString = true, an AV is thrown. No TDataSource or TDBGrid needed.

Code: Select all

  OraCall.OCIUnicode := true;
  OraSession1.Options.UseUnicode := True;
  OraSession1.Connected := true;
  SmartQuery1.SQL.clear;
  SmartQuery1.sql.add('select s.saddr, a.sql_fulltext');
  SmartQuery1.sql.add('from v$session s, v$sqlarea a');
  SmartQuery1.sql.add('where rownum = 1');
  SmartQuery1.Options.RawAsString := true;
  SmartQuery1.Active := true;
Error is "Project1.exe raised exception class $C0000005 with message "access violation at ....: read of address ....."

Here is the call stack from Delphi. I would have sent the one from Eurekalog, but it doesn't seem right in this case.

Code: Select all

:0449d015 orageneric11.kollalfn + 0x23
:61ad0ed5 ; C:\Oracle\product\11.2.0\client_1\BIN\oracommon11.dll
:61ad4c42 ; C:\Oracle\product\11.2.0\client_1\BIN\oracommon11.dll
:61ab0971 ; C:\Oracle\product\11.2.0\client_1\BIN\oracommon11.dll
:61aada75 ; C:\Oracle\product\11.2.0\client_1\BIN\oracommon11.dll
:04d256b0 oran11.nioqwa + 0x30
:62dd17b5 ; C:\Oracle\product\11.2.0\client_1\BIN\OraClient11.Dll
:62dc07bc OraClient11.upirtrc + 0x44
:62d47404 OraClient11.kpurcsc + 0x5a
:62d06176 ; C:\Oracle\product\11.2.0\client_1\BIN\OraClient11.Dll
:62d059a5 ; C:\Oracle\product\11.2.0\client_1\BIN\OraClient11.Dll
:62c2a8dd OraClient11.OCIStmtFetch + 0x1d
:10078088 oci.OCIStmtFetch + 0x38
OraClasses.TOCICommand.InternalFetch8(???,???,0)
:006acf7e TOCICommand.InternalFetch8 + $4A
OraClasses.TOCICommand.InternalFetch(???,2,0)
:006ad192 TOCICommand.InternalFetch + $6E
OraClasses.TOCIRecordSet.FetchArray(False)
:006b930c TOCIRecordSet.FetchArray + $7D0
OraClasses.TOCIRecordSet.Fetch(???)
:006b79a7 TOCIRecordSet.Fetch + $123
CRAccess.TCRRecordSet.GetNextRecord(???)
:005fb4f4 TCRRecordSet.GetNextRecord + $2C
:0056ddb2 TDataSet.GetNextRecord + $7E
:0056dc83 TDataSet.UpdateBufferCount + $7B

Re: AV when querying RAW and CLOB

Posted: Thu 16 Aug 2012 07:29
by AlexP
hello,

I can't reproduce the problem.
Please specify the exact versions of the Oracle client and server.

Re: AV when querying RAW and CLOB

Posted: Thu 16 Aug 2012 13:47
by jdorlon
I built a table of versions where it happens and where it doesn't. I think the server needs to be 64 bit. Oracle server version doesn't matter. The only Oracle client version I tested was 11.2.0.1.

http://forums.devart.com/viewtopic.php? ... 702#p83643

Re: AV when querying RAW and CLOB

Posted: Fri 17 Aug 2012 12:18
by AlexP
hello,

Thank you for the information.
We've reproduced both problems.
We will notify you as soon as we have any results.

Re: AV when querying RAW and CLOB

Posted: Tue 21 Aug 2012 11:33
by AlexP
Hello,

We have fixed the problem, this fix will be included in the next version of the product.