Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Mailing Lists -> Oracle-L -> RE: How to find out the original SQL resulted the ERROR message?

RE: How to find out the original SQL resulted the ERROR message?

From: Goulet, Dick <DGoulet_at_vicr.com>
Date: Wed, 5 Oct 2005 09:56:20 -0400
Message-ID: <4001DEAF7DF9BD498B58B45051FBEA6502D43EAE@25exch1.vicorpower.vicr.com>


You've found the statement that errored out in the alert log. The reason is one of two things that you now need to figure out. The first is the infamous commit across a cursor problem which can be found from a review of the application code. The other is a resource issue that you may or may not be able to solve. The query in question start out life with a particular SCN. Over the time of it's execution data under it was changed and those changes committed. Now normally your UNDO or ROLLBACK segments will retain the changes so that Oracle can reconstruct what those rows looked like for this query. The problem is that those undo or rollback segments are no longer available. Now commits across a cursor do this because you yourself have released the data and according to the ANSI Sql standard you should close & reopen the cursor. The other half of it is either a lack of undo or rollback space on your database or a query that just takes way too long to run.


From: oracle-l-bounce_at_freelists.org
[mailto:oracle-l-bounce_at_freelists.org] On Behalf Of zhu chao Sent: Wednesday, October 05, 2005 7:00 AM To: Oracle-L
Subject: Re: How to find out the original SQL resulted the ERROR message?

Sorry, pressed enter before finish the email.  

Sometimes we see some error message in alert, saying some SQL report ORA-1555. For example, the following SQL is logged in alert. Obviously it is not from normal application. I am wondering how I can find out the original SQL, so I contact with developer for this.  

Another SQL like:
ARC1: Completed archiving log 4 thread 1 sequence 9781 Tue Oct 4 22:07:31 2005
ORA-01555 caused by SQL statement below (SCN: 0x0000.e3a53f18): Tue Oct 4 22:07:31 2005
SELECT /*+ Q109000 NO_EXPAND ROWID(A1) */ A1.ROWID FROM
"BES1"."EXCEPTION" PX_GRANULE(0, BLOCK_RANGE, DYNAMIC) A1 WHERE
A1."CONSUMER_ID"='KenanToSiteProcessor' AND A1."CREATION_DATE">=TO_DATE('2005-09-29 00:00:00', 'yyyy-mm-dd hh24:mi:ss')
AND A1."CREATION_DATE"<=:B1 AND A1."EXCEPTION_STATUS"=3 AND A1."EXCEPTION_REASON" LIKE '3501 DATA_SOURCE_DOWN%' Tue Oct 4 22:12:34 2005
This is the spawned from some PQ query. If PQ process has exit, or not running any more, can we still find out the original SQL?  

Thanks  

On 10/5/05, zhu chao <zhuchao_at_gmail.com> wrote:

        Hi, All,

	ORA-01555 caused by SQL statement below (SCN: 0x0314.01fa70b6):
	Mon Oct  3 18:52:31 2005
	SELECT /*+NESTED_TABLE_GET_REFS+*/

"FDBK_USER"."TRANSACT_RECORD".* FROM "FDBK_USER"."TRANSACT_RECORD"
where trx_type=1          
	-- 
	Regards
	Zhu Chao
	www.cnoug.org <http://www.cnoug.org/> 
	 




-- 
Regards
Zhu Chao
www.cnoug.org


--
http://www.freelists.org/webpage/oracle-l
Received on Wed Oct 05 2005 - 09:00:19 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US