Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Re: Context - max cursors exceeded
Hi,
think you've got some major problems. See what docs says:
ORA-00600 internal error code, arguments: [num], [?], [?], [?], [?], [?]
Cause:
This is a catchall internal error message for Oracle program exceptions. It indicates that a process has met a low-level, unexpected condition.
Various causes of this message include:
time-outs
file corruption
failed data checks in memory
hardware, memory, or I/O errors
incorrectly restored files
The first argument is the internal message number. Other arguments are various numbers, names, and character strings. See "Calling Customer Support" for more information. The numbers may change meanings between different versions of the Oracle Server. Action: Report this error to customer support after gathering the following information: events that led up to the error the operations that were attempted that led to the error the conditions of the operating system and database at the time of the error any unusual circumstances that occurred before receiving the ORA-00600 message contents of any trace files generated by the error the relevant portions of the Alert file NOTE: The cause of this message may manifest itself as different errors at different times. Be aware of the history of errors that occurred before this internal error.
ORA-00604 error occurred at recursive SQL level num
Cause:
An error occurred while processing a recursive SQL statement. A recursive SQL statement is one that applies to internal dictionary tables.
Action:
If the situation described in the next message on the stack can be corrected, do so; otherwise, contact customer support.
Take a look at your trace fiels to get more info!
On Tue, 07 Apr 1998 22:53:40 GMT, graham_at_pncl.co.uk (Graham Potts) wrote:
>Hi,
>I'm just trying out Oracle Context to see if it will work for our
>requirements. The Oracle version is 7.3.2 running on Solaris 2.5.
>
>I am trying to write a batch program using Pro*C which opens a cursor
>on one table and reads a string from each record. For each record
>found it opens another cursor which uses the 'contains' context clause
>to read the primary key of all records in the text table which match
>the filter string read from the first table.
>
>It goes something like:
>
>declare first cursor as select filter from firsttable;
>declare second as select pk from texttable where
>contains(textcol,:filter,1)>0;
>
>open first;
>fetch first into :filter;
>
>while (sqlca.sqlcode==SQL_SUCCESS)
> {
> fetch first into :filter;
> open second;
> fetch second into :pk;
> while (sqlca.sqlcode==SQL_SUCCESS)
> {
> read from texttable using PK to get required data and write to
>file;
> fetch second into :pk;
> }
> close second;
> fetch first into :filter;
> }
>close first;
>
>After about 130 iterations of the outer loop my context server falls
>over. The log file shows it to have exceeded the maximum cursor level.
>I usually also get an error 604 when opening the second cursor in my
>Proc*C program.
>
>A possibly linked issue is that I get an Oracle 600 error when
>exitting from SQLPLUS if I have enabled text mode and executed at
>least one text query.
>
>Can anyone offer any help?
>
>Many thanks,
>Graham Potts
>
--
Regards
Matthias Gresz :-)
GreMa_at_T-online.de Received on Wed Apr 08 1998 - 07:11:31 CDT
![]() |
![]() |