Print Thread
large number of fields gives ORA-03113
#48942 04/28/14 08:55 AM
Joined: Jul 2002
Posts: 71
R
Member
OP Offline
Member
R
Joined: Jul 2002
Posts: 71
Hi

Is there a maximum number of fields for Oracle9?

I have a large query returning 196 fields from a complex query using several union all into a TOraclewwDataSet.
Everything runs fine.
But when I add 5 extra (string and date) fields the query returns an ORA-03113 End of Communication Channel-error on Oracle9, and the connection to the database is lost.
It works fine on Oracle10 and Oracle11.
If the query is executed in PL/SQLDeveloper on the Oracle9-database, it works fine.
We use Delphi XE2 and DOA ??

So: Is there some sort of maximum number of fields for Oracle9?


Last edited by Ruudbern; 04/28/14 08:57 AM.
Re: large number of fields gives ORA-03113
Ruudbern #48943 04/28/14 10:31 AM
Joined: Aug 1999
Posts: 22,207
Member
Offline
Member
Joined: Aug 1999
Posts: 22,207
ORA-03113 usually means that the Oracle Server process for the current session has crashed. Can you check if a user trace dump file exist on the database server that corresponds to this ORA-03113 error? Usually you will see an ORA-00600 error here, with some error codes that may help us find the cause of the problem. If it does, can you send it to me?



Marco Kalter
Allround Automations
Re: large number of fields gives ORA-03113
Marco Kalter #48946 04/28/14 02:27 PM
Joined: Jul 2002
Posts: 71
R
Member
OP Offline
Member
R
Joined: Jul 2002
Posts: 71
Hi Marco,

we made a trace file. In the trace file we see the sql and the beginning of the parsing of the fields. After 14 fields the trace files stops. There is no error in the trace. No changes were made in the first 18 fields.

The strange things is that the application crashed with a ora error but its not in the trace file.

kind regards

Ruud

Re: large number of fields gives ORA-03113
Ruudbern #48967 05/06/14 08:51 AM
Joined: Jul 2002
Posts: 71
R
Member
OP Offline
Member
R
Joined: Jul 2002
Posts: 71
Hi Marco,

we kind off found a workaround. The faulting query schematic was:

SELECT lin.*
,tot.*
,someextrafields
,:variablename extrastringfield
FROM (SELECT fields
FROM TABLES
UNION ALL
SELECT fields
FROM TABLES) lin
,(SELECT * from TABLE WHERE ses=1) tot
WHERE lin.trn=tot.trn
ORDER BY ORDERFIELDS;

if we move the variable to the Union parts it works:

SELECT lin.*
,tot.*
,someextrafields
FROM (SELECT fields
,:variablename extrastringfield
FROM TABLES
UNION ALL
SELECT fields
,:variablename extrastringfield
FROM TABLES) lin
,(SELECT * from TABLE WHERE ses=1) tot
WHERE lin.trn=tot.trn
ORDER BY ORDERFIELDS;


It works but we don't understand why it works.
Do you? Its a normal string variable that gets its value in both situations.

kind regards

Ruud




Re: large number of fields gives ORA-03113
Ruudbern #48973 05/07/14 09:46 AM
Joined: Aug 1999
Posts: 22,207
Member
Offline
Member
Joined: Aug 1999
Posts: 22,207
Unfortunately there is usually not much logic to ORA-03113 errors.


Marco Kalter
Allround Automations

Moderated by  support 

Link Copied to Clipboard
Powered by UBB.threads™ PHP Forum Software 7.7.4
(Release build 20200307)
Responsive Width:

PHP: 7.1.33 Page Time: 0.152s Queries: 15 (0.066s) Memory: 2.5138 MB (Peak: 3.0380 MB) Data Comp: Off Server Time: 2024-05-02 07:09:26 UTC
Valid HTML 5 and Valid CSS