Oracle log error?
ORA-00604: error occurred at recursive SQL level 1
ORA-01555: snapshot too old: rollback segment number 9 with name "_SYSSMU9$" too small
Thu Nov 15 16:31:59 2007
Memory Notification: Library Cache Object loaded into SGA
Heap size 5188K exceeds notification threshold (2048K)
KGL object name :SELECT /*+ ALL_ROWS */ COUNT(*) FROM ALL_POLICIES V WHERE V.OBJECT_OWNER = :B3 AND V.OBJECT_NAME = :B2 AND (POLICY_NAME LIKE '%xdbrls%' OR POLICY_NAME LIKE '%$xd_%') AND V.FUNCTION = :B1
Thu Nov 15 16:33:35 2007
that error is related with the oracle parameter ''_kgl_large_heap_warning_threshold "?
Message was edited by:
user607008
that error is related with the oracle parameter
''_kgl_large_heap_warning_threshold "?
Please see Oracle Metalink Document: Memory Notification: Library Cache Object Loaded Into Sga Doc ID: Note:330239.1 for an overview.
ORA-01555
http://forums.oracle.com/forums/thread.jspa?messageID=783730򿕲
Adith
Similar Messages
-
ORACLE LOG ERRORS - Bug in oracle??
Hi,
we are using oracle log errors to capture oversized err records for varchar2 type fields. Sql is something like:
INSERT INTO abc (col1,col2) VALUES ('asdsass','weqwewqee') LOG ERRORS INTO abc_err('1') REJECT LIMIT UNLIMITED;
But, data captured in abc table is trimmed data. Right spaces present in source are being trimmed by oracle while capturing this error table. I have the following queries:
-Has anyone else experienced this type of behavior?
-Is it a bug in oracle log errors functionallity??
-Is there any workaround to use oracle log errors functionality to catch untrimmed data?
thanks,
Edited by: user7036480 on Dec 11, 2008 4:22 PMuser7036480 wrote:
-Has anyone else experienced this type of behavior? Yes, described in that issue while "log errors into g_logtest_err(1) reject limit 1" (is it you?)
-Is it a bug in oracle log errors functionallity?? Raise a SR to know.
-Is there any workaround to use oracle log errors functionality to catch untrimmed data?No.
Nicolas. -
Does Oracle log errors for me?
Hi All,
Quick question here:
I am receiving the following error upon insert:
Code: ORA-00904: invalid column name in DB Manager function: ExecuteSQL
Does the database log which table had the wrong insert? This is happening in code that I don't have easy access to and would like to know of any logging feature that oracle may provide.
Thanks,
RickSo here is a question:
I have been logging a few sessions. I have pasted what is in v$session here:
SID SERIAL#
1 1
2 1
3 1
4 1
5 1
6 1
7 18761
8 18761
9 18761
10 18761
11 5712
16 29258
using tom's guide (http://asktom.oracle.com/pls/ask/f?p=4950:8:5737465255169454238::NO::F4950_P8_DISPLAYID,F4950_P8_CRITERIA:330817260752) i turned on the logging
I keep getting stuff like this though:
STAT #2 id=1 cnt=0 pid=0 pos=0 obj=0 op='SORT ORDER BY '
STAT #2 id=2 cnt=0 pid=1 pos=1 obj=0 op='FILTER '
STAT #2 id=3 cnt=2 pid=2 pos=1 obj=0 op='NESTED LOOPS '
STAT #2 id=4 cnt=4 pid=3 pos=1 obj=0 op='NESTED LOOPS '
STAT #2 id=5 cnt=4 pid=4 pos=1 obj=22 op='TABLE ACCESS BY INDEX ROWID USER$ '
STAT #2 id=6 cnt=4 pid=5 pos=1 obj=41 op='INDEX UNIQUE SCAN '
STAT #2 id=7 cnt=4 pid=4 pos=2 obj=18 op='TABLE ACCESS BY INDEX ROWID OBJ$ '
STAT #2 id=8 cnt=4 pid=7 pos=1 obj=33 op='INDEX UNIQUE SCAN '
STAT #2 id=35 cnt=2 pid=3 pos=2 obj=63 op='TABLE ACCESS BY INDEX ROWID ARGUMENT$ '
STAT #2 id=36 cnt=2 pid=35 pos=1 obj=108 op='INDEX RANGE SCAN '
STAT #2 id=38 cnt=0 pid=2 pos=3 obj=0 op='NESTED LOOPS '
STAT #2 id=39 cnt=0 pid=38 pos=1 obj=0 op='FIXED TABLE FULL X$KZSRO '
STAT #2 id=40 cnt=0 pid=38 pos=2 obj=82 op='TABLE ACCESS BY INDEX ROWID OBJAUTH$ '
STAT #2 id=41 cnt=0 pid=40 pos=1 obj=101 op='INDEX RANGE SCAN '
STAT #2 id=37 cnt=0 pid=2 pos=2 obj=0 op='FIXED TABLE FULL X$KZSPR '
STAT #2 id=9 cnt=4 pid=8 pos=1 obj=0 op='FILTER '
STAT #2 id=10 cnt=4 pid=9 pos=1 obj=0 op='NESTED LOOPS '
STAT #2 id=11 cnt=4 pid=10 pos=1 obj=22 op='TABLE ACCESS BY INDEX ROWID USER$ '
STAT #2 id=12 cnt=4 pid=11 pos=1 obj=41 op='INDEX UNIQUE SCAN '
STAT #2 id=13 cnt=4 pid=10 pos=2 obj=18 op='TABLE ACCESS BY INDEX ROWID OBJ$ '
STAT #2 id=14 cnt=6 pid=13 pos=1 obj=34 op='INDEX RANGE SCAN '
STAT #2 id=34 cnt=0 pid=9 pos=17 obj=0 op='FIXED TABLE FULL X$KZSPR '
STAT #2 id=33 cnt=0 pid=9 pos=16 obj=0 op='FIXED TABLE FULL X$KZSPR '
STAT #2 id=32 cnt=0 pid=9 pos=15 obj=0 op='FIXED TABLE FULL X$KZSPR '
STAT #2 id=31 cnt=0 pid=9 pos=14 obj=0 op='FIXED TABLE FULL X$KZSPR '
STAT #2 id=30 cnt=0 pid=9 pos=13 obj=0 op='FIXED TABLE FULL X$KZSPR '
STAT #2 id=29 cnt=0 pid=9 pos=12 obj=0 op='FIXED TABLE FULL X$KZSPR '
STAT #2 id=28 cnt=0 pid=9 pos=11 obj=0 op='FIXED TABLE FULL X$KZSPR '
STAT #2 id=27 cnt=0 pid=9 pos=10 obj=0 op='FIXED TABLE FULL X$KZSPR '
STAT #2 id=26 cnt=0 pid=9 pos=9 obj=0 op='FIXED TABLE FULL X$KZSPR '
STAT #2 id=25 cnt=0 pid=9 pos=8 obj=0 op='FIXED TABLE FULL X$KZSPR '
STAT #2 id=24 cnt=0 pid=9 pos=7 obj=0 op='FIXED TABLE FULL X$KZSPR '
STAT #2 id=23 cnt=0 pid=9 pos=6 obj=0 op='FIXED TABLE FULL X$KZSPR '
STAT #2 id=22 cnt=0 pid=9 pos=5 obj=0 op='FIXED TABLE FULL X$KZSPR '
STAT #2 id=21 cnt=2 pid=9 pos=4 obj=0 op='FIXED TABLE FULL X$KZSPR '
STAT #2 id=17 cnt=2 pid=9 pos=3 obj=0 op='NESTED LOOPS '
STAT #2 id=18 cnt=54 pid=17 pos=1 obj=0 op='FIXED TABLE FULL X$KZSRO '
STAT #2 id=19 cnt=52 pid=17 pos=2 obj=82 op='TABLE ACCESS BY INDEX ROWID OBJAUTH$ '
STAT #2 id=20 cnt=52 pid=19 pos=1 obj=101 op='INDEX RANGE SCAN '
STAT #2 id=15 cnt=0 pid=9 pos=2 obj=19 op='TABLE ACCESS BY INDEX ROWID IND$ '
STAT #2 id=16 cnt=0 pid=15 pos=1 obj=36 op='INDEX UNIQUE SCAN '
How do I know what session my VB6 app is grabbing? Especially if it's starting and ending transactions?
Is there a way to LOG ALL requests out to a file? -
Oracle 9.2i - Log Errors in a Merge Statement
Hi all,
I want to log errors in a merge statement in way to allow the statement to finish without rollback. I see that in Oracle 10g2 it is possible with "LOG ERRORS INTO err$_dest ('MERGE') REJECT LIMIT UNLIMITED;" instruction but, apparently, it's not possible in Oracle 9.2i.
Is there another way to solve this problem?Depending on what type of errors you expect, you may be helped by deferring your constraints: unique, foreign key and check constraints can be deferred; that means they are only enforced when you commit.
You could defer all constraints, perform the bulk insert and then instead of committing you first try to set all constraints to immediate. If this fails, there are errors. If it does not, you can commit.
To find the exact errors, you can try to switch all deferred constraints back to immediate one by one. The ones that succeed are not violated by your transaction, oinly the ones that fail to switch to immediate are not met by your transaction.
For the violated constraints, you can find the offending records by simply selecting them. For example if the check constraint states Col X + Col Y < 10000 you will find the offending records by selecting all records where not (Col X + Col Y < 10000 ). Unfortunately we have no better mechanism than this for finding the records that are in violation of the rules.
best regards
Lucas -
Does oracle log general errors
Dear experts,
I am using Oracle 11.2.0.3. I am researching on random ORA-00900: invalid SQL statement error that we are seeing in production. Does oracle log such errors in alert.log or any tables? If not can we configure to log such errors?
Thanks.Dont understand.... you are seeing ORA-00900 in production but don't know where to search this error? where do you see it?It is being logged from application in event log which I do not have access to. I wanted to check if oracle also logs such error some where.
SQL Banner : SQL*Plus: Release 11.2.0.1.0 Production on Wed Nov 28 12:12:25 2012
SQL :
SELECT
overload,
DECODE (
position,
0,
'RETURN_VALUE',
NVL (argument_name, CHR (0))
) AS name,
DECODE (
in_out,
'IN', 1,
'IN/OUT', 3,
'OUT', DECODE (argument_name, NULL, 6, 2),
1
) AS direction,
DECODE (
data_type,
'BFILE', 101,
'BLOB', 102,
'BYTE', 103,
'CHAR', 104,
'CLOB', 105,
'DATE', 106,
'DECIMAL', 107,
'DOUBLE', 108,
'INT16', 111,
'INT32', 112,
'INT64', 113,
'INTERVAL DAY TO SECOND', 114,
'INTERVAL YEAR TO MONTH', 115,
'LONG', 109,
'LONG RAW', 110,
'NCHAR', 117,
'NCLOB', 116,
'NVARCHAR2', 119,
'RAW', 120,
'REF CURSOR', 121,
'SINGLE', 122,
'TIMESTAMP', 123,
'TIMESTAMP WITH LOCAL TIME ZONE', 124,
'TIMESTAMP WITH TIME ZONE', 125,
'VARCHAR2', 126,
'XMLTYPE', 127,
'NUMBER', 107,
126
) AS oracleType,
DECODE (
data_type,
'BLOB', 0,
'CHAR', 0,
'CLOB', 0,
'LONG RAW', 0,
'NCHAR', 0,
'NCLOB', 0,
'NVARCHAR2', 0,
'RAW', 0,
'VARCHAR2', 2048,
0
) AS length,
NVL (data_precision, 255) AS precision,
NVL (data_scale, 255) AS scale
FROM
all_arguments
WHERE
data_level = 0
AND data_type IS NOT NULL
AND owner = :schemaName
AND package_name = :packageName
AND object_name = :methodName
ORDER BY
overload, position
******************** EXCEPTION PROPERTIES ********************
Errors: Oracle.DataAccess.Client.OracleErrorCollection
Source: Oracle Data Provider for .NET
Number: 900
ErrorCode: -2147467259
Data: System.Collections.ListDictionaryInternal
TargetSite: Void HandleErrorHelper(Int32, Oracle.DataAccess.Client.OracleConnection, IntPtr, Oracle.DataAccess.Client.OpoSqlValCtx*, System.Object, System.String, Boolean)
Edited by: spur230 on Nov 28, 2012 12:13 PM -
Hi all,
I am learning this new feature. I am having two tables
CREATE TABLE source_tab (col1 number, col2 varchar2(5))
CREATE TABLE taget_tab(col1 number, col2 varchar2(4))
taget_tab.col2 length is one character less compared with source_tab.col2
INSERT INTO source_tab VALUES (1,'AAA');
INSERT INTO source_tab VALUES (2,'BBB');
INSERT INTO source_tab VALUES (3,'CCCCC');
INSERT INTO source_tab VALUES (4,'ddd');
Now, I want to insert data from source table to target table. As data shows, source_tab.col1 with col1=3 will throw error, as its col2
size is more than the target table, but i want to continue with the execution and log the this value(3) in log table(logtmp) by using LOG ERRORS
feature of 10Gr2.
I have created log table like this manually
create table logtmp
ORA_ERR_NUMBER$ NUMBER ,
ORA_ERR_MESG$ VARCHAR2(2000),
ORA_ERR_ROWID$ ROWID,
ORA_ERR_OPTYP$ VARCHAR2(2),
ORA_ERR_TAG$ VARCHAR2(2000),
col1 number
Is this possible, if so, please give me the idea.
Thanks in advance.
Thanks,
PalSee the following example.
/* Table creation */
CREATE TABLE source_tab (col1 number, col2 varchar2(5));
CREATE TABLE target_tab(col1 number, col2 varchar2(4));
execute DBMS_ERRLOG.create_error_log (dml_table_name => 'TARGET_TAB', err_log_table_name => 'LOGTMP');
desc logtmp;
INSERT INTO source_tab VALUES (1,'AAA');
INSERT INTO source_tab VALUES (2,'BBB');
INSERT INTO source_tab VALUES (3,'CCCCC');
INSERT INTO source_tab VALUES (4,'ddd');
commit;
/* Insert that runs into errors */
insert into target_tab
select * from source_tab
log errors into LOGTMP reject limit unlimited;
select * from logtmp;
/* cleanup */
drop table source_tab;
drop table target_tab;
drop table logtmp;Consider to run this step by step.
And here is the relevant output from it.
desc logtmp
Name Null Typ
ORA_ERR_NUMBER$ NUMBER
ORA_ERR_MESG$ VARCHAR2(2000)
ORA_ERR_ROWID$ UROWID()
ORA_ERR_OPTYP$ VARCHAR2(2)
ORA_ERR_TAG$ VARCHAR2(2000)
COL1 VARCHAR2(4000)
COL2 VARCHAR2(4000)
ORA_ERR_NUMBER$ ORA_ERR_MESG$ COL1 COL2
12899 ORA-12899: Wert zu groß für Spalte "SCHEMA"."TARGET_TAB"."COL2" (aktuell: 5, maximal: 4) 3 CCCCCEdited by: Sven W. on Sep 27, 2012 1:32 PM -
ERROR: ORACLE prepare error: ORA-00936: missing expression
Hello,
I am required to run "pass-through" Oracle SQL, to extract data from tables into SAS for processing and manipulation. My code (attached) reads and writes (executes) but with zero records to test first. I cannot get past the Prepare Error.
The query is very much like other queries that seem to work, but I cannot get past this prepare error. I have no other access to individauls with adequate knowledge of PL SQL, and as a last stop hoped others in the forum could quickly spot the source of errror.
Thanks very much in advance for any assistance.
Jeff
1 ;*';*";*/;quit;run;
2 OPTIONS PAGENO=MIN;
3 %LET _CLIENTTASKLABEL=%NRBQUOTE(rx_biplr_v3_2);
4 %LET _EGTASKLABEL=%NRBQUOTE(rx_biplr_v3_2);
5 %LET _CLIENTPROJECTNAME=%NRBQUOTE();
6 %LET _SASPROGRAMFILE=;
7
8 ODS _ALL_ CLOSE;
NOTE: Some of your options or statements may not be supported with the Activex or Java series of devices. Graph defaults for these
drivers may be different from other SAS/GRAPH device drivers. For further information, please contact Technical Support.
9 OPTIONS DEV=ACTIVEX;
10 FILENAME EGHTML TEMP;
NOTE: Writing HTML(EGHTML) Body file: EGHTML
11 ODS HTML(ID=EGHTML) FILE=EGHTML ENCODING='utf-8' STYLE=EGDefault
11 ! STYLESHEET=(URL="file:///C:/Program%20Files/SAS/Shared%20Files/BIClientStyles/EGDefault.css")
11 ! ATTRIBUTES=("CODEBASE"="http://www2.sas.com/codebase/graph/v91/sasgraph.exe") NOGTITLE NOGFOOTNOTE GPATH=&sasworklocation
11 ! ;
12
13 %gaccessible;
14 /********************************************************/
15 * RX_BIPLR_V3.SAS ;
16 /********************************************************/
17
18 dm 'log;clear;out;clear';
19 options linesize =120;
20 Option obs=0 NoReplace;
21
22 ****************************************************************************************;
23 *Date Programmer Reviewed By WHAT WAS DONE;
24 *----- -------------- ------------ -----------------------------------------;
25 *2005 David Boyd Program creation for test population;
26 *;
27 *02/06/2006 Ivon Jones Modified to include total population;
28 *;
29 *07/20/2006 Ivon Jones Identified data elements for exclusion;
30 * or inclusion for consolidation with ;
31 * Robin's report;
32 *;
33 *08/18/2006 Ivon Jones Updated the Specific Therapeutic Classes;
34 * 10-2009 J Shaf - modified to extract actual or potential Bipolar Dx from UBH and Medical Claims;
35 ****************************************************************************************;
36
37
38
39 *%let allclmorgn = ('M','A') ; /* all claims origin code */
40 %let begdate='01SEP2009'd;
41 %let enddate='30SEP2009'd;
42 %let q = %str(%') ;
43
44
45 data _null_ ;
46 call symput('fdos',put(intnx('month',"&begdate"d,-27,'beginning'), date9.) ) ;
47 call symput('ldos',put(intnx('month',"&enddate"d,-0,'ending'), date9.) ) ;
48 run ;
NOTE: DATA statement used (Total process time):
real time 0.00 seconds
2 The SAS System 11:44 Friday, October 30, 2009
cpu time 0.01 seconds
49
50
51
52 **************************************************************;
53 * ??Use the data _null_ step to create a macro variable for the ;
54 * year and month based on the ldos macro variable in the data ;
55 * step above?? ;
56 **************************************************************;
57
58
59 data _null_ ;
60 if month("&ldos"d) < 10
61 then call symput('yr_mo',compress(year("&ldos"d) || '0' || month("&ldos"d) ) ) ;
62 else call symput('yr_mo',compress(year("&ldos"d) || month("&ldos"d) ) ) ;
63 run ;
NOTE: Numeric values have been converted to character values at the places given by: (Line):(Column).
61:39 61:64 62:39 62:57
NOTE: DATA statement used (Total process time):
real time 0.00 seconds
cpu time 0.00 seconds
64
65 *%put &biplr_dx;
66 %put &begdate ;
'01SEP2009'd
67 %put &enddate ;
'30SEP2009'd
68 %put &fdos ;
01JUN2007
69 %put &ldos ;
30SEP2009
70 %put &q ;
71
72
73 libname biplr'/home/jshafi01/projects/adhoc/biplr_dprsn/data';
NOTE: Libref BIPLR was successfully assigned as follows:
Engine: V9
Physical Name: /home/jshafi01/projects/adhoc/biplr_dprsn/data
74 libname rosdwp oracle user="&oracle_user." pass="&oracle_pass." buffsize=32767 path='rosdwp';
NOTE: Libref ROSDWP was successfully assigned as follows:
Engine: ORACLE
Physical Name: rosdwp
75
76 data work.biplr_up_v1;
77 attrib mbr_id length=$26;
78 set biplr.biplr_ubh_med_v1;
79 run;
NOTE: There were 0 observations read from the data set BIPLR.BIPLR_UBH_MED_V1.
NOTE: The data set WORK.BIPLR_UP_V1 has 0 observations and 1 variables.
NOTE: DATA statement used (Total process time):
real time 0.01 seconds
3 The SAS System 11:44 Friday, October 30, 2009
cpu time 0.00 seconds
80
81 proc contents;
82 run;
NOTE: PROCEDURE CONTENTS used (Total process time):
real time 0.03 seconds
cpu time 0.03 seconds
83
84 proc datasets
85 library = rosdwp nolist;
86 delete biplr_up_v1;
87 quit;
NOTE: Deleting ROSDWP.BIPLR_UP_V1 (memtype=DATA).
NOTE: PROCEDURE DATASETS used (Total process time):
real time 3.74 seconds
cpu time 0.03 seconds
88
89 proc datasets
90 library=work nolist;
91 copy out = rosdwp move;
92 select biplr_up_v1 ;
93 quit;
NOTE: Moving WORK.BIPLR_UP_V1 to ROSDWP.BIPLR_UP_V1 (memtype=DATA).
NOTE: SAS variable labels, formats, and lengths are not written to DBMS tables.
NOTE: There were 0 observations read from the data set WORK.BIPLR_UP_V1.
NOTE: The data set ROSDWP.BIPLR_UP_V1 has 0 observations and 1 variables.
NOTE: PROCEDURE DATASETS used (Total process time):
real time 0.32 seconds
cpu time 0.04 seconds
94
95
96
97 *****************************************************************************;
98
99 *execute(commit) by rosdwp
100 ******************************************************************************;
101
102
103 proc SQL noprint ;
104 connect to oracle as rosdwp (user="&oracle_user." password="&oracle_pass" buffsize=32767 path='rosdwp'
104 ! preserve_comments);
105 execute(alter session set nls_date_format = 'ddmonyyyy') by rosdwp;
106 CREATE table biplr_rx as
107 SELECT
108 mrb_id,
109 pcp_spc,
110 rx_date,
4 The SAS System 11:44 Friday, October 30, 2009
111 brand,
112 generic,
113 ahfs_cd,
114 ahfs_dsc,
115 lbl,
116 strngth,
117 unt,
118 spc_tx_cls_cd,
119 spc_tx_cls_dsc,
120 gcn,
121 rx_num,
122 rx_ingrd,
123 rx_paid,
124 rx_cnt,
125 rx_qty,
126 rx_day
127 FROM connection to rosdwp
128 (SELECT
129 mid.UNIQ_MBR_ID as mrb_id,
130 pd.PRVDR_SPCLTY_DESC as pcp_spc,
131 pcf.LAST_SRVC_DT as rx_date,
132 dd.BRAND_NAME as brand,
133 dd.GNRC_NAME as generic,
134 dd.AHFS_THRPTC_CLS_CD as ahfs_cd,
135 dd.AHFS_THRPTC_CLS_DESC as ahfs_dsc,
136 dd.LABEL_NAME as lbl,
137 dd.STRNGTH_NUM as strngth,
138 dd.STRNGTH_UNIT_DESC as unt,
139 dd.SPECF_THRPTC_CLS_CD as spc_tx_cls_cd,
140 dd.SPECF_THRPTC_CLS_DESC as spc_tx_cls_dsc,
141 dd.GCN_NUM as gcn,
142 pcf.PRSCRPTN_NUM as rx_num,
143 SUM(pcf.INGRDNT_AMT) as rx_ingrd,
144 SUM(pcf.PD_AMT) as rx_paid,
145 SUM(pcf.UNIT_SRVC_CNT) as rx_cnt,
146 SUM(pcf.DSPNSD_QTY) as rx_qty,
147 SUM(pcf.DAY_SUPLY_CNT) as rx_day
148 FROM
149 PHRMCY_CLM_FACT pcf,
150 MBR_ID_DMNSN mid,
151 DRUG_DMNSN dd,
152 PRVDR_DMNSN pd,
153 biplr_up_v1
154 WHERE
155 (
156 (biplr_up_v1.mbr_id = MBR_ID_DMNSN.UNIQ_MBR_ID) And
157 (PHRMCY_CLM_FACT.FINL_CLM_KEY = PHRMCY_FINL_CLM_DMNSN.FINL_CLM_KEY) AND
158 (PHRMCY_CLM_FACT.MBR_KEY = MBR_ID_DMNSN.MBR_KEY) And
159 (PHRMCY_CLM_FACT.BNFT_KEY = MBR_BNFT_DMNSN.BNFT_KEY) And
160 (PHRMCY_CLM_FACT.DRUG_KEY = DRUG_DMNSN.DRUG_KEY) And
161 (PHRMCY_FINL_CLM_DMNSN.CLM_ORGN_CD IN ('M','A')) AND
162 (PHRMCY_CLM_FACT.LAST_SRVC_DT BETWEEN between &q.&fdos.&q and &q.&ldos.&q)
163 )
164 Group By
165 mid.UNIQ_MBR_ID ,
166 pd.PRVDR_SPCLTY_DESC ,
167 pcf.LAST_SRVC_DT ,
168 dd.BRAND_NAME ,
5 The SAS System 11:44 Friday, October 30, 2009
169 dd.GNRC_NAME ,
170 dd.AHFS_THRPTC_CLS_CD ,
171 dd.AHFS_THRPTC_CLS_DESC ,
172 dd.LABEL_NAME ,
173 dd.STRNGTH_NUM ,
174 dd.STRNGTH_UNIT_DESC ,
175 dd.SPECF_THRPTC_CLS_CD ,
176 dd.SPECF_THRPTC_CLS_DESC ,
177 dd.GCN_NUM ,
178 pcf.PRSCRPTN_NUM
179 );
ERROR: ORACLE prepare error: ORA-00936: missing expression. SQL statement: SELECT mid.UNIQ_MBR_ID as mrb_id,
pd.PRVDR_SPCLTY_DESC as pcp_spc, pcf.LAST_SRVC_DT as rx_date, dd.BRAND_NAME as brand, dd.GNRC_NAME as generic,
dd.AHFS_THRPTC_CLS_CD as ahfs_cd, dd.AHFS_THRPTC_CLS_DESC as ahfs_dsc, dd.LABEL_NAME as lbl, dd.STRNGTH_NUM as
strngth, dd.STRNGTH_UNIT_DESC as unt, dd.SPECF_THRPTC_CLS_CD as spc_tx_cls_cd, dd.SPECF_THRPTC_CLS_DESC as
spc_tx_cls_dsc, dd.GCN_NUM as gcn, pcf.PRSCRPTN_NUM as rx_num, SUM(pcf.INGRDNT_AMT) as rx_ingrd, SUM(pcf.PD_AMT)
as rx_paid, SUM(pcf.UNIT_SRVC_CNT) as rx_cnt, SUM(pcf.DSPNSD_QTY) as rx_qty, SUM(pcf.DAY_SUPLY_CNT) as rx_day
FROM PHRMCY_CLM_FACT pcf, MBR_ID_DMNSN mid, DRUG_DMNSN dd, PRVDR_DMNSN pd, biplr_up_v1 WHERE (
(biplr_up_v1.mbr_id = MBR_ID_DMNSN.UNIQ_MBR_ID) And (PHRMCY_CLM_FACT.FINL_CLM_KEY =
PHRMCY_FINL_CLM_DMNSN.FINL_CLM_KEY) AND (PHRMCY_CLM_FACT.MBR_KEY = MBR_ID_DMNSN.MBR_KEY) And
(PHRMCY_CLM_FACT.BNFT_KEY = MBR_BNFT_DMNSN.BNFT_KEY) And (PHRMCY_CLM_FACT.DRUG_KEY = DRUG_DMNSN.DRUG_KEY) And
(PHRMCY_FINL_CLM_DMNSN.CLM_ORGN_CD IN ('M','A')) AND (PHRMCY_CLM_FACT.LAST_SRVC_DT BETWEEN between '01JUN2007'
and '30SEP2009') ) Group By mid.UNIQ_MBR_ID , pd.PRVDR_SPCLTY_DESC , pcf.LAST_SRVC_DT , dd.BRAND_NAME ,
dd.GNRC_NAME , dd.AHFS_THRPTC_CLS_CD , dd.AHFS_THRPTC_CLS_DESC , dd.LABEL_NAME , dd.STRNGTH_NUM ,
dd.STRNGTH_UNIT_DESC , dd.SPECF_THRPTC_CLS_CD , dd.SPECF_THRPTC_CLS_DESC , dd.GCN_NUM , pcf.PRSCRPTN_NUM.
NOTE: PROC SQL set option NOEXEC and will continue to check the syntax of statements.
180 execute (drop table biplr_up_v1) by rosdwp;
NOTE: Statement not executed due to NOEXEC option.
181 disconnect from rosdwp;
NOTE: Statement not executed due to NOEXEC option.
182 quit;
NOTE: The SAS System stopped processing this step because of errors.
NOTE: PROCEDURE SQL used (Total process time):
real time 0.14 seconds
cpu time 0.03 seconds
183
184Hello Again ,
Wish Oracle was a bit more informative. Am using a SAS Institute Product called Enterprise Guide. A "hot fix" was installed to address an issue that the product appears unable to save the latest version of edited code changes (hence " BETWEEN between" remaining even after a prior edit). In any case, with the change, am now receiving this error:
" ERROR: ORACLE prepare error: ORA-00904: "PHRMCY_CLM_FACT"."LAST_SRVC_DT": invalid identifier". (Log file appears below)
-The error remains, regardless of whether one uses "pass through" code to pass the date range to Oracle (which looks ok from the log output below I believe), or if I hard code the date range into the PL SQL query itself.
-The Prepare error always appears at end of the inner SELECT.
-The Prepare error remains, with or without the GROUP BY clause.
Is there anything else here I am missing? Someone suggested a reserve word - but from other ANSI SQL versions, I do not see that is the case. I have consulted SAS Tech Support and SAS List Serve at University of GA. but nothing definitive from these sources. Have requested facility to be able to run Oracle directly, outside this SAS Institute product - in process.
Any suggestions are greatly appreciated. Thanks to everyone very much.
Jeff
14 /********************************************************/
15 * RX_BIPLR_V3.SAS ;
16 /********************************************************/
17
18 dm 'log;clear;out;clear';
19 options linesize =120;
20 Option obs=0 NoReplace;
21
22 ****************************************************************************************;
23 *Date Programmer Reviewed By WHAT WAS DONE;
24 *----- -------------- ------------ -----------------------------------------;
25 *2005 D. Boyd Program creation for test population;
26 *;
27 *02/06/2006 I. Jones Modified to include total population;
28 *;
29 *07/20/2006 I. Jones Identified data elements for exclusion;
30 * or inclusion for consolidation with ;
31 * Robin's report;
32 *;
33 *08/18/2006 I Jones Updated the Specific Therapeutic Classes;
34 * 10-2009 J Shaf - modified to extract actual or potential Bipolar Dx from UBH and Medical Claims;
35 ****************************************************************************************;
36
37
38
39 *%let allclmorgn = ('M','A') ; /* all claims origin code */
40 %let begdate='01SEP2009'd;
41 %let enddate='30SEP2009'd;
42 %let q = %str(%') ;
43
44
45 data null ;
46 call symput('fdos',put(intnx('month',"&begdate"d,-27,'beginning'), date9.) ) ;
47 call symput('ldos',put(intnx('month',"&enddate"d,-0,'ending'), date9.) ) ;
48 run ;
2 The SAS System 12:46 Monday, November 2, 2009
NOTE: DATA statement used (Total process time):
real time 0.00 seconds
cpu time 0.00 seconds
49
50
51
52 **************************************************************;
53 * ??Use the data null step to create a macro variable for the ;
54 * year and month based on the ldos macro variable in the data ;
55 * step above?? ;
56 **************************************************************;
57
58
59 data null ;
60 if month("&ldos"d) < 10
61 then call symput('yr_mo',compress(year("&ldos"d) || '0' || month("&ldos"d) ) ) ;
62 else call symput('yr_mo',compress(year("&ldos"d) || month("&ldos"d) ) ) ;
63 run ;
NOTE: Numeric values have been converted to character values at the places given by: (Line):(Column).
61:39 61:64 62:39 62:57
NOTE: DATA statement used (Total process time):
real time 0.00 seconds
cpu time 0.01 seconds
64
65 *%put &biplr_dx;
66 %put &begdate ;
'01SEP2009'd
67 %put &enddate ;
'30SEP2009'd
68 %put &fdos ;
01JUN2007
69 %put &ldos ;
30SEP2009
70 %put &q ;
71
72
73 libname biplr'/home/jshafi01/projects/adhoc/biplr_dprsn/data';
NOTE: Libref BIPLR was successfully assigned as follows:
Engine: V9
Physical Name: /home/jshafi01/projects/adhoc/biplr_dprsn/data
74 libname rosdwp oracle user="&oracle_user." pass="&oracle_pass." buffsize=32767 path='rosdwp';
NOTE: Libref ROSDWP was successfully assigned as follows:
Engine: ORACLE
Physical Name: rosdwp
75
76 data work.biplr_up_v1;
77 attrib mbr_id length=$26;
78 set biplr.biplr_ubh_med_v1;
79 run;
NOTE: There were 0 observations read from the data set BIPLR.BIPLR_UBH_MED_V1.
NOTE: The data set WORK.BIPLR_UP_V1 has 0 observations and 1 variables.
NOTE: DATA statement used (Total process time):
real time 0.00 seconds
cpu time 0.01 seconds
80
81 proc contents;
82 run;
NOTE: PROCEDURE CONTENTS used (Total process time):
real time 0.02 seconds
cpu time 0.02 seconds
83
84 proc datasets
85 library = rosdwp nolist;
86 delete biplr_up_v1;
87 quit;
NOTE: Deleting ROSDWP.BIPLR_UP_V1 (memtype=DATA).
NOTE: PROCEDURE DATASETS used (Total process time):
real time 0.61 seconds
cpu time 0.01 seconds
88
89 proc datasets
90 library=work nolist;
91 copy out = rosdwp move;
92 select biplr_up_v1 ;
93 quit;
NOTE: Moving WORK.BIPLR_UP_V1 to ROSDWP.BIPLR_UP_V1 (memtype=DATA).
NOTE: SAS variable labels, formats, and lengths are not written to DBMS tables.
NOTE: There were 0 observations read from the data set WORK.BIPLR_UP_V1.
NOTE: The data set ROSDWP.BIPLR_UP_V1 has 0 observations and 1 variables.
NOTE: PROCEDURE DATASETS used (Total process time):
real time 0.15 seconds
cpu time 0.04 seconds
94
95
96
97 *****************************************************************************;
98
99 *execute(commit) by rosdwp
100 ******************************************************************************;
101
102
103 proc SQL noprint ;
104 connect to oracle as rosdwp (user="&oracle_user." password="&oracle_pass" buffsize=32767 path='rosdwp'
104 ! preserve_comments);
105 execute(alter session set nls_date_format = 'ddmonyyyy') by rosdwp;
106 CREATE table biplr_rx as
107 SELECT
108 mrb_id,
109 uniq_mbr_id,
110 pcp_spc,
111 rx_date,
112 brand,
113 generic,
114 ahfs_cd,
115 ahfs_dsc,
116 lbl,
117 strngth,
118 unt,
119 spc_tx_cls_cd,
120 spc_tx_cls_dsc,
121 gcn,
122 rx_num,
123 rx_ingrd,
124 rx_paid,
125 rx_cnt,
126 rx_qty,
127 rx_day
128 FROM connection to rosdwp
129 (SELECT
130 mid.UNIQ_MBR_ID as uniq_mrb_id,
131 blpr.mrb_id.mbr_id,
132 pd.PRVDR_SPCLTY_DESC as pcp_spc,
133 pcf.LAST_SRVC_DT as rx_date,
134 dd.BRAND_NAME as brand,
135 dd.GNRC_NAME as generic,
136 dd.AHFS_THRPTC_CLS_CD as ahfs_cd,
137 dd.AHFS_THRPTC_CLS_DESC as ahfs_dsc,
138 dd.LABEL_NAME as lbl,
139 dd.STRNGTH_NUM as strngth,
140 dd.STRNGTH_UNIT_DESC as unt,
141 dd.SPECF_THRPTC_CLS_CD as spc_tx_cls_cd,
142 dd.SPECF_THRPTC_CLS_DESC as spc_tx_cls_dsc,
143 dd.GCN_NUM as gcn,
144 pcf.PRSCRPTN_NUM as rx_num,
145 SUM(pcf.INGRDNT_AMT) as rx_ingrd,
146 SUM(pcf.PD_AMT) as rx_paid,
147 SUM(pcf.UNIT_SRVC_CNT) as rx_cnt,
148 SUM(pcf.DSPNSD_QTY) as rx_qty,
149 SUM(pcf.DAY_SUPLY_CNT) as rx_day
150 FROM
151 PHRMCY_CLM_FACT pcf,
152 MBR_ID_DMNSN mid,
153 DRUG_DMNSN dd,
154 PRVDR_DMNSN pd,
155 BIPLR_UP_V1 blpr
156 WHERE
157 (BIPLR_UP_V1.mbr_id = MBR_ID_DMNSN.UNIQ_MBR_ID) And
158 (PHRMCY_CLM_FACT.FINL_CLM_KEY = PHRMCY_FINL_CLM_DMNSN.FINL_CLM_KEY) AND
159 (PHRMCY_CLM_FACT.MBR_KEY = MBR_ID_DMNSN.MBR_KEY) And
160 (PHRMCY_CLM_FACT.BNFT_KEY = MBR_BNFT_DMNSN.BNFT_KEY) And
161 (PHRMCY_CLM_FACT.DRUG_KEY = DRUG_DMNSN.DRUG_KEY) And
162 (PHRMCY_FINL_CLM_DMNSN.CLM_ORGN_CD IN ('M','A')) AND
163 (PHRMCY_CLM_FACT.LAST_SRVC_DT BETWEEN &q.&fdos.&q and &q.&ldos.&q)
164 );
ERROR: ORACLE prepare error: ORA-00904: "PHRMCY_CLM_FACT"."LAST_SRVC_DT": invalid identifier. SQL statement: SELECT
mid.UNIQ_MBR_ID as uniq_mrb_id, blpr.mrb_id.mbr_id, pd.PRVDR_SPCLTY_DESC as pcp_spc, pcf.LAST_SRVC_DT as
rx_date, dd.BRAND_NAME as brand, dd.GNRC_NAME as generic, dd.AHFS_THRPTC_CLS_CD as ahfs_cd,
dd.AHFS_THRPTC_CLS_DESC as ahfs_dsc, dd.LABEL_NAME as lbl, dd.STRNGTH_NUM as strngth, dd.STRNGTH_UNIT_DESC as
unt, dd.SPECF_THRPTC_CLS_CD as spc_tx_cls_cd, dd.SPECF_THRPTC_CLS_DESC as spc_tx_cls_dsc, dd.GCN_NUM as gcn,
pcf.PRSCRPTN_NUM as rx_num, SUM(pcf.INGRDNT_AMT) as rx_ingrd, SUM(pcf.PD_AMT) as rx_paid, SUM(pcf.UNIT_SRVC_CNT)
as rx_cnt, SUM(pcf.DSPNSD_QTY) as rx_qty, SUM(pcf.DAY_SUPLY_CNT) as rx_day FROM PHRMCY_CLM_FACT pcf,
MBR_ID_DMNSN mid, DRUG_DMNSN dd, PRVDR_DMNSN pd, BIPLR_UP_V1 blpr WHERE (BIPLR_UP_V1.mbr_id =
MBR_ID_DMNSN.UNIQ_MBR_ID) And (PHRMCY_CLM_FACT.FINL_CLM_KEY = PHRMCY_FINL_CLM_DMNSN.FINL_CLM_KEY) AND
(PHRMCY_CLM_FACT.MBR_KEY = MBR_ID_DMNSN.MBR_KEY) And (PHRMCY_CLM_FACT.BNFT_KEY = MBR_BNFT_DMNSN.BNFT_KEY) And
(PHRMCY_CLM_FACT.DRUG_KEY = DRUG_DMNSN.DRUG_KEY) And (PHRMCY_FINL_CLM_DMNSN.CLM_ORGN_CD IN ('M','A')) AND
(PHRMCY_CLM_FACT.LAST_SRVC_DT BETWEEN '01JUN2007' and '30SEP2009').
NOTE: PROC SQL set option NOEXEC and will continue to check the syntax of statements.
165 execute (drop table biplr_up_v1) by rosdwp;
NOTE: Statement not executed due to NOEXEC option.
166 disconnect from rosdwp;
NOTE: Statement not executed due to NOEXEC option.
167 quit;
NOTE: The SAS System stopped processing this step because of errors.
NOTE: PROCEDURE SQL used (Total process time):
real time 0.24 seconds
cpu time 0.02 seconds
168
Edited by: user12142482 on Nov 2, 2009 4:02 PM -
LOG ERRORS failing to capture 2291 errors on UPDATE statement
We are running Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options
We have often successfully used the error logging clause when performing batch inserts to the database. However, we now have a situation where an UPDATE statement is failing and rolling back upon encountering a foreign-key referential constraint [ORA-02291]. It is successfully recording Check constraint errors [ORA-02290]. The foreign keys are not deferred, and they have nothing to do with any unique constraints or indices on the table that is the target of the UPDATE statement. The Error-logging table was created by using the DBMS_ERRLOG package. We recreated it to make sure that we had not introduced column format errors. The same problem occurs. The UPDATE statement is attempting to update approximately 12000 rows. Any help in understanding this problem would be appreciated.
Here is the error statement
ORA-02291: integrity constraint (OIFS.FRAME_FK07) violated - parent key not found
Here is the problem statement and its surrounding PLSQL block:
BEGIN <<update_records>>
UPDATE frame f
SET (company_name,
address1_line,
address2_line,
address1_city,
address1_state,
address1_zip,
contact1_name,
contact1_phone_number,
update_date,
update_user,
-- comments,
facility_name,
facility_type,
doing_business_as,
contact1_phone_ext,
contact1_fax,
contact1_email,
contact2_name,
contact2_phone_number,
contact2_phone_ext,
contact2_fax,
contact2_email,
source_survey,
source_status,
address2_city,
address2_state,
address2_zip,
facility_location_number,
attention_line,
company_official,
facility_irs_code
) =
(SELECT company_name,
address1_line,
address2_line,
address1_city,
address1_state,
address1_zip,
contact1_name,
contact1_phone_number,
SYSDATE,
user_in,
facility_name,
facility_type,
doing_business_as,
contact1_phone_ext,
contact1_fax,
contact1_email,
contact2_name,
contact2_phone_number,
contact2_phone_ext,
contact2_fax,
contact2_email,
source_survey,
source_status,
address2_city,
address2_state,
address2_zip,
facility_location_number,
attention_line,
company_official,
facility_irs_code
FROM oifs.respondent r
WHERE r.cin = f.cin
WHERE f.cin IN
(SELECT cin
FROM
(SELECT cin,
company_name,
address1_line,
address2_line,
address1_city,
address1_state,
address1_zip,
contact1_name,
contact1_phone_number,
facility_name,
facility_type,
doing_business_as,
contact1_phone_ext,
contact1_fax,
contact1_email,
contact2_name,
contact2_phone_number,
contact2_phone_ext,
contact2_fax,
contact2_email,
source_survey,
source_status,
address2_city,
address2_state,
address2_zip,
facility_location_number,
attention_line,
company_official,
facility_irs_code
FROM oifs.respondent
MINUS
SELECT cin,
company_name,
address1_line,
address2_line,
address1_city,
address1_state,
address1_zip,
contact1_name,
contact1_phone_number,
facility_name,
facility_type,
doing_business_as,
contact1_phone_ext,
contact1_fax,
contact1_email,
contact2_name,
contact2_phone_number,
contact2_phone_ext,
contact2_fax,
contact2_email,
source_survey,
source_status,
address2_city,
address2_state,
address2_zip,
facility_location_number,
attention_line,
company_official,
facility_irs_code
FROM oifs.frame
LOG ERRORS INTO oifs.frame_load_errors
(job_num || ' ' || TO_CHAR(SYSDATE, 'YYYYMMDD HH24:MI:SS') || ' update')
REJECT LIMIT UNLIMITED;
EXCEPTION
WHEN OTHERS THEN
ohub.err_pkg.record_and_continue(msg_in => 'problem in updating FRAME rows');
RAISE;
END update_records;Thank you for your help. It pointed me in the right direction, which was to temporarily disable the triggers. The ORA-02291 errors were then properly captured in the error-logging-table.
The problem did not appear to be related to the trigger. The problem that was captured in my PLSQL error-handler but not the error-logging-table was an ORA-02291, which was specific to the original table. The trigger-driven processing did not seem to generate any errors (I have PLSQL error-handling logic in there as well).
I was aware of Tom Kyte's statement, and I knew triggers were dicey when I decided to use them. It seemed the best way to try to ensure database integrity when regular Foreign-Key and Check constraints did not suffice. I am now paying the price for that decision. -
I am getting this error through Oracle Enterprise Manager for my Production RAc database
It has been working fine for ages. Its just suddenly started doing this.
The archiving is hung? Please can someone help explain what I need to do to resolve or if already ersolved. I'll know if its resolved as new archiving will be written in 1 days time otherwise it complain again when it tries to write to the archiving???
SEVERITY
critical
CATEGORY
Archiver Hung Alert Log Error
TIME
11-Sep-2008 23:02:43
ALERT LOG STACK
ORA-16038: log 3 sequence# 1351 cannot be archived
ORA-19504: failed to create file ""
ORA-00312: online log 3 thread 2: '/u02/logs/gbprod01/redo03a.log'
ORA-00312: online log 3 thread 2: '/u02/logs/gbprod01/redo03b.log'
Trace File: /opt/app/oracle/admin/gbprod01/udump/gbprod012_ora_21265.trc
ALERT TRIGGERED
11-Sep-2008 23:14:15
The disk where the archiving would be written has plenty of space and full write access.
$>df -kh /u03
/dev/sdd 300G 186G 115G 62% /u03
$>ls -ltr /u03/arch/gbprod01
drwxr-xr-x 1 oracle oinstall 131072 Jun 12 2007 gbprod011
Please can someone help as to what I need to do or whether it has resolved itself.
FYI
SQL> archive log list
Database log mode Archive Mode
Automatic archival Enabled
Archive destination /u03/arch/ddprod01/ddprod011
Oldest online log sequence 1326
Next log sequence to archive 1327
Current log sequence 1327
SQL> select * from v$log;
GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS
FIRST_CHANGE# FIRST_TIME
1 1 1327 52428800 2 NO CURRENT
7883970584 11.09.2008 23:02:38
2 1 1326 52428800 2 YES INACTIVE
7883951113 11.09.2008 22:00:40
3 2 1351 52428800 2 YES INACTIVE
7883967749 11.09.2008 23:00:35
GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS
FIRST_CHANGE# FIRST_TIME
4 2 1352 52428800 2 NO CURRENT
7883970586 11.09.2008 23:02:38
I'm also getting this in the trac file however this has been happening since the 7th of Sept and the problem has happened today. So this may be another issue.
LGWR: Archivelog for thread 1 sequence 1261 will NOT be compressed
*** 2008-07-31 17:14:16.863
*** 2008-09-11 23:02:38.163
LGWR: Archivelog for thread 1 sequence 1327 will NOT be compressed
Thank you in addvance.
TalhaHad enough space in directory though it was complaining about not able to write to the location log. So we tried copying a large file in the same location which worked.
So then we did a few
SQL>alter system switch logfile;
Which forced a log switch and subsequently put the redo in archive logs.
We have an archive log as of today after the log switches in the archive log location where it was previously complaining.
Hence problem resolved. Maybe it just complained in OEM temporerily, and it remains there as an error message though resolved. Need to remove error from OEM manually.
Thank You for all your suggestions anyway.
Safi -
Help in regarding alert log error...referring to standby
Database: Single Instance, 10.2.0.3
OS: Redhat Linux 5
I checkd on my standby if logs are applied or not by the following command.
SQL> SELECT SEQUENCE#,APPLIED FROM V$ARCHIVED_LOG
ORDER BY SEQUENCE#;
The result is "YES" for all corresponding logs.
Below is my alert log error.
LNS1 started with pid=46, OS id=27318
Tue Oct 4 03:03:04 2011
Thread 1 advanced to log sequence 32284
Current log# 3 seq# 32284 mem# 0: /u01/oradata/PROD/redo_PROD_03a.log
Current log# 3 seq# 32284 mem# 1: /u02/oradata/PROD/redo_PROD_03b.log
Tue Oct 4 03:03:05 2011
LNS: Standby redo logfile selected for thread 1 sequence 32284 for destination LOG_ARCHIVE_DEST_2 Tue Oct 4 03:03:06 2011
ARCt: Attempting destination LOG_ARCHIVE_DEST_2 network reconnect (3135)
ARCt: Destination LOG_ARCHIVE_DEST_2 network reconnect abandoned Tue Oct 4 03:03:06 2011 Errors in file /u01/app/oracle/admin/PROD/bdump/prod_arct_16306.trc:
ORA-03135: connection lost contact
FAL[server, ARCt]: Error 3135 creating remote archivelog file 'STNBY'
FAL[server, ARCt]: FAL archive failed, see trace file.
Tue Oct 4 03:03:06 2011
Errors in file /u01/app/oracle/admin/PROD/bdump/prod_arct_16306.trc:
ORA-16055: FAL request rejected
ARCH: FAL archive failed. Archiver continuing Tue Oct 4 03:03:06 2011 ORACLE Instance PROD - Archival Error. Archiver continuing.
Correspoing trace files is below:
Dump file /u01/app/oracle/admin/PROD/bdump/prod_arct_16306.trc
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Production
With the Partitioning, OLAP and Data Mining options
ORACLE_HOME = /u01/app/oracle/product/10.2.0
System name: Linux
Node name: prod-db.aamu.edu
Release: 2.6.9-78.0.17.ELsmp
Version: #1 SMP Thu Mar 5 04:52:17 EST 2009
Machine: i686
Instance name: PROD
Redo thread mounted by this instance: 1
Oracle process number: 45
Unix process pid: 16306, image: [email protected] (ARCt)
*** SERVICE NAME:(SYS$BACKGROUND) 2011-10-02 10:28:10.027
*** SESSION ID:(2005.1) 2011-10-02 10:28:10.027
*** 2011-10-02 10:28:10.027 2549 kcrf.c
tkcrf_clear_srl: Started clearing Standby Redo Logs
*** 2011-10-02 10:28:10.481 2855 kcrf.c
tkcrf_clear_srl: Completed clearing Standby Redo Logs
*** 2011-10-03 03:02:54.982
Redo shipping client performing standby login
*** 2011-10-03 03:02:55.218 65190 kcrr.c
Logged on to standby successfully
Client logon and security negotiation successful!
*** 2011-10-04 03:03:06.584
Error 3135 creating standby archive log file at host 'STNBY'
*** 2011-10-04 03:03:06.584 61283 kcrr.c
ARCt: Attempting destination LOG_ARCHIVE_DEST_2 network reconnect (3135)
*** 2011-10-04 03:03:06.584 61283 kcrr.c
ARCt: Destination LOG_ARCHIVE_DEST_2 network reconnect abandoned
ORA-03135: connection lost contact
*** 2011-10-04 03:03:06.591 59526 kcrr.c
kcrrfail: dest:2 err:3135 force:0 blast:1
Error 1041 detaching RFS from standby instance at host 'STNBY'
kcrrwkx: unknown error:3135
ORA-16055: FAL request rejected
ARCH: Connecting to console port...
ARCH: Connecting to console port...
Can someone explain what they mean?
Thank you soo much.Hello;
I might look at the SQLNET.ORA file on both servers
Try setting these :
SQLNET.INBOUND_CONNECT_TIMEOUT=120
SQLNET.SEND_TIMEOUT = 300
SQLNET.RECV_TIMEOUT = 300
Make sure you restart the LISTENERS.
I'd look at this first :
ORA - 03135 : connection lost contact while shipping from Primary Server to Standby server [ID 739522.1]
I once work with an SE who we called "The human firewall". It was always the firewall until proven otherwise.
And then this :
Troubleshooting ORA-3135 Connection Lost Contact [ID 787354.1]
Have you looked at this ?
Database Hanging during Archival [ID 1142856.1]
Best Regards
mseberg -
EM12CR3 - Alert Log Errors page - empty
What controls the content shown in Oracle Database->Logs->Alert Log Errors ?
The page shows empty - but if we look in the actual alert log we can clearly see ORA-0600 errors showing there. In fact if we do the more generic show alert log, search and look for Errors, it shows up there just fine.
Oct 10, 2013 3:04:21 PM UTC
ERROR
8
https://oem03cnc.rim.net:7803/em/console/database/instance/adrAlertLogContent?target=edwp_edwp7&type=oracle_databasehttps://oem03cnct:7803/em/console/database/instance/adrAlertLogContent?target=edwp_edwp7&type=oracle_databasehttps://oem03cnc:7803/em/console/database/instance/adrAlertLogContent?target=edwp_edwp7&type=oracle_database
ami_comp
dbgripsto_sweep_staged_obj:15736:70631439
Sweep [inc2][672054]: completed
Oct 10, 2013 3:04:21 PM UTC
ERROR
8
https://oem03cnc.rim.net:7803/em/console/database/instance/adrAlertLogContent?target=edwp_edwp7&type=oracle_databasehttps://oem03cnct:7803/em/console/database/instance/adrAlertLogContent?target=edwp_edwp7&type=oracle_databasehttps://oem03cnc:7803/em/console/database/instance/adrAlertLogContent?target=edwp_edwp7&type=oracle_database
ami_comp
dbgripsto_sweep_staged_obj:15736:70631439
Sweep [inc][672054]: completed
Thoughts?This alert should show up ..
<msg time='2013-11-02T23:37:18.436+00:00' org_id='oracle' comp_id='rdbms'
msg_id='684699380' type='INCIDENT_ERROR' group='Generic Internal Error'
level='1' host_id='edwp07' host_addr='10.65.65.189'
prob_key='ORA 600 [kghstack_free1]' upstream_comp='' downstream_comp='KGH'
ecid='' errid='714327' detail_path='/u01/app/oracle/diag/rdbms/edwp/edwp7/trace/edwp7_bmr0_52817.trc'>
<txt>Errors in file /u01/app/oracle/diag/rdbms/edwp/edwp7/trace/edwp7_bmr0_52817.trc (incident=714327):
ORA-00600: internal error code, arguments: [kghstack_free1], [iobuf_krbabrAddBlock], [], [], [], [], [], [], [], [], [], []
</txt>
</msg> -
FINANTIAL DOCUMENTS MISSING --- ORACLE LOGS FULL
Hi Experts,
9 documents are missing and when they were saved the system showed the message "update has been stopped". This was because of the Oracle LOGS (full).
When Oracle problem was solved the documents were not found in SM13 to recovered.
Any clue?
On the other hand If a have finantial documents in QAS how can I put it on PRD?
Regards.Hi,
Schedule your backups according to the full backup time.
Do a test of full backup and fine the time that it takes to complete the full backup. You can include "plus archivelog" if you want your archive logs to be backed up along with the full backup. This is most preferred as this makes restoration easy too.
If your full backup takes, say, 4 hrs to complete and if you schedule your full backup at 00 00 hrs on your scheduler, then schedule the archive backups after 04 00 hrs. This will solve your problems with missing archive backups.
>> "But from RMAN specialist I heard that this may cause problems with full backup. During full backup also archive logs are backed up (at the start and end) so there might be a problem with accessing the file that is used by another process. And this may cause problem with full backup - which we want to avoid especially."
This will throw out errors if your input to full backup consists "delete input" for your archived logs, else the process will not have any problem and succeed.
Also when one or more of backups run concurrently, "ORA-00230: operation disallowed: snapshot control file enqueue unavailable" error may occur but this is rare case.
Thank you!! -
Is this possible with LOG ERRORS?
I have a procedure which does a bulk insert/update operation using MERGE (running on Oracle 10gR2). We want to silently log any failed inserts/updates but not rollback the entire batch no matter how many inserts fail. So I am logging the exceptions via LOG ERRORS REJECT LIMIT UNLIMITED. This works fine actually.
The one other aspect is the procedure is being called from Java and although we want any and all good data to be committed, regardless of how many rows have bad data, we still want to notify the Java front end that not all records were inserted properly. Even something such as '150 rows were not processed.' So I am wondering if there is anyway to still run the entire batch, log the errors, but still raise an error from the stored procedure.
Here is the working code:
CREATE TABLE merge_table
t_id NUMBER(9,0),
t_desc VARCHAR2(100) NOT NULL
CREATE OR REPLACE TYPE merge_type IS OBJECT
type_id NUMBER(9,0),
type_desc VARCHAR2(100)
CREATE OR REPLACE TYPE merge_list IS TABLE OF merge_type;
-- Create Error Log.
BEGIN
DBMS_ERRLOG.CREATE_ERROR_LOG(
dml_table_name => 'MERGE_TABLE',
err_log_table_name => 'MERGE_TABLE_ERROR_LOG',
END;
CREATE OR REPLACE PROCEDURE my_merge_proc_bulk(p_records IN merge_list)
AS
BEGIN
MERGE INTO merge_table MT
USING
SELECT
type_id,
type_desc
FROM TABLE(p_records)
) R
ON
MT.t_id = R.type_id
WHEN MATCHED THEN UPDATE
SET
MT.t_desc = R.type_desc
WHEN NOT MATCHED THEN INSERT
MT.t_id,
MT.t_desc
VALUES
R.type_id,
R.type_desc
LOG ERRORS INTO MERGE_TABLE_ERROR_LOG ('MERGE') REJECT LIMIT UNLIMITED;
COMMIT;
END;
-- test script to execute procedure
DECLARE
l_list merge_list := merge_list();
l_size NUMBER;
l_start_time NUMBER;
l_end_time NUMBER;
BEGIN
l_size := 10000;
DBMS_OUTPUT.PUT_LINE('Row size: ' || l_size || CHR(10));
l_list.EXTEND(l_size);
-- Create some test data.
FOR i IN 1 .. l_size
LOOP
l_list(i) := merge_type(i,'desc ' || TO_CHAR(i));
END LOOP;
EXECUTE IMMEDIATE 'TRUNCATE TABLE MERGE_TABLE';
EXECUTE IMMEDIATE 'TRUNCATE TABLE MERGE_TABLE_ERROR_LOG';
-- Modify some records to simulate bad data/nulls not allowed for desc field
l_list(10).type_desc := NULL;
l_list(11).type_desc := NULL;
l_list(12).type_desc := NULL;
l_list(13).type_desc := NULL;
l_list(14).type_desc := NULL;
l_start_time := DBMS_UTILITY.GET_TIME;
my_merge_proc_bulk(p_records => l_list);
l_end_time := DBMS_UTILITY.GET_TIME;
DBMS_OUTPUT.PUT_LINE('Bulk time: ' || TO_CHAR((l_end_time - l_start_time)/100) || ' sec. ' || CHR(10));
END;
/I tried this at the end of the procedure, but it does not work, probably because I am not using SAVE EXCEPTIONS:
IF (SQL%BULK_EXCEPTIONS.COUNT > 0) THEN
RAISE_APPLICATION_ERROR(-20105, SQL%BULK_EXCEPTIONS.COUNT || ' rows failed for the batch.' );
END IF;Also the one thing we would like to have is the datetime logged for each failure in the ERROR_LOG table. We may be running several different batches over night. Is this possible to manipulate the table to add this?
Name Null? Type
ORA_ERR_NUMBER$ NUMBER
ORA_ERR_MESG$ VARCHAR2(2000)
ORA_ERR_ROWID$ ROWID
ORA_ERR_OPTYP$ VARCHAR2(2)
ORA_ERR_TAG$ VARCHAR2(2000)
CHANNEL_ID VARCHAR2(4000)
CHANNEL_DESC VARCHAR2(4000)
CHANNEL_CLASS VARCHAR2(4000)Edited by: donovan7800 on Feb 16, 2012 1:14 PM
Edited by: donovan7800 on Feb 16, 2012 1:17 PMAh yes I remember. The guy needing the TABLE(p_records).
Re: Merge possible from nested table?
>
I tried this at the end of the procedure, but it does not work, probably because I am not using SAVE EXCEPTIONS:
IF (SQL%BULK_EXCEPTIONS.COUNT > 0) THEN
RAISE_APPLICATION_ERROR(-20105, SQL%BULK_EXCEPTIONS.COUNT || ' rows failed for the batch.' );
END IF;
>
Correct - you need to use SAVE EXCEPTIONS.
I know there is the FORALL command, but I figured there was a way to do this with MERGE since the procedure does an update if a match is found instead
But you can use MERGE with FORALL and add the SAVE EXCEPTIONS to handle your problem.
I still have a question as to what the source of the PL/SQL table provided by the parameter Is this table being prepared in another PL/SQL procedure, in Java, or how? Are you confident that the number of rows in the table will be small enough to avoid a memory issue?
If in PL/SQL you could pass a ref cursor and then in this proc use a LOOP with a 'BULK COLLECT into' with a LIMIT clause to do the processing. -
Oracle Internal Error????
Hi,
I am getting the following error in PL/SQL procedure in which i have used XMLDB.
ERROR:
ORA-21500: internal error code, arguments: [%s], [%s], [%s], [%s], [%s], [%s],
[%s], [%s]
What does that mean? more importantly how do resolve this error?21500, 00000, "internal error code, arguments: [%s], [%s], [%s], [%s], [%s], [%s], [%s], [%s]"
// *Cause: This is the generic error number for the OCI
// environment (client-side) internal errors. This indicates
// that the OCI environment has encountered an exceptional
// condition.
// *Action: Report as a bug - the first argument is the internal error number.I find it a tad weird that you get this error from a PL/SQL procedure? Are you sure it is that procedure that is throwing the exception?
From the error message description it sounds like the error should come from your local OCI (Oracle Call Interface) client driver.
How are you executing the procedure? From Java, Pro*C, something else? Have you tested the procedure call using SQL*Plus?
If this is a server-side error (despite what the error message details above say), there should be a record of this error (as with all internal Oracle server errors) in the alert log of that instance.
Have you checked the alert log? Is there an error? What does it say? (please post the error details here)
Has a trace file been generated? (the alert log will list that too) If so, have you edited the trace file and looked at the header in the file? It often contains useful data, such as the SQL that caused the error dump.
PS. Why did you post the problem here? An internal Oracle error has very little do with the SQL and PL/SQL languages, which are the subject matter of this forum. Posting this problem in the Database-General forum would have been more appropriate. -
Hi All,
I was trying to convert the sybase log function to oracle, was able to complie the below code. However the results are not mathcing, could any one plz help me in correcting this
log error
example from my code is as below( I am using oracle 11g db) on sqldeveloper and toad.
Sybase = ytd_alpha = ((power(convert(float,10), sum(log10(w_acct/100+1)))-1)*100
-(power(convert(float,10),sum(log10(w_bogie/100+1)))-1)*100)*100
Oracle =((power(cast(10 as number),sum(log(10,w_acct/100+1)))-1)*100
-(power(cast(10 as number),sum(log(10,w_bogie/100+1)))-1)*100)*100
--Oracle results
select ((power(cast(10 as number),sum(log(10,753/100+1)))-1)*100
-(power(cast(10 as number),sum(log(10,508/100+1)))-1)*100)*100 from dual;
=24500
--Sybase results
select ((power(convert(float,10), sum(log10(753/100+1)))-1)*100
-(power(convert(float,10),sum(log10(508/100+1)))-1)*100)*100
=20000I need to get the sybase result 20000, using oracle matching available functions.
plz dont get confuse with the lengthy calculation, I just c/p from my env.
I suspect it is log function causing the difference as Power is directly availabe in both syb & ora.
Edited by: NeilCSE on Sep 21, 2011 12:37 PM
Edited by: NeilCSE on Sep 21, 2011 12:42 PMWithout wading too deeply through it, I beleive Oracle is correct, and Sybase is converting to int for at least some of the operations.
In Sybase:
1> select log10(753/100+1)
2> /
0.903090
(1 row affected)In Oracle
SQL> select log(10,753/100+1) from dual;
LOG(10,753/100+1)
.930949031Back to Sybase with an explicit cast to float:
1> select log10(convert(float, 753)/100+1)
2> /
0.930949
(1 row affected)The int return from the log10 impacts the rest of the calculations. Taking it a step further, and stripping out the uneccessary sum in both, and the cast to number in the Oracle version:
Sybase as posted
1> select power(convert(float,10), sum(log10(753/100+1)))-1
2> /
7.000000
(1 row affected)Oracle:
SQL> select power(10,log(10,753/100+1))-1
2 from dual;
POWER(10,LOG(10,753/100+1))-1
7.53Sybase again with cast to float:
1> select power(convert(float,10), sum(log10(convert(float,753)/100+1)))-1
2> /
7.530000As a side note, the Sybase and Oracle databases are on different LPARs of a single physical server, so no funny stuff with different O/S or CPU designs :-)
John
Maybe you are looking for
-
Hi, We have recently moved our production servers and since the move have been experiencing an intermittent (but frequent) error when processing our OLAP cube. The error messages presented are: "Error: The following error occurred during a file opera
-
My PM 7.0 began crashing about a year ago on my Win 7 machine.
There seemed to be no definable reason, and it was only occasionally, so I wasn't too bothered. But now I can't work for more than 15-20 minutes before it will either freeze, or crash the program completely. Even after I've just cleaned the Registry,
-
Home Sharing: Apps are not shown
Hello, I have 2 Macs at home and I use home sharing with iTunes 9.1.1. I enabled Home Sharing: Musics, films,... are shown. But: - Apps are not shown in the list - No 'Import' or 'Settings' button is shown in the bottom-right corner of iTunes (as des
-
I recently upgraded to a faster processor including SSD for a scratch disc. Although I have 32gig of ram with CS5 running on Windows 7 and it never uses a scratch. I thought I could save an hour a week with waiting for liquify to do it's thing but a
-
BEA Guardian Support for WLS 10
I am running Weblogic Server 10 and was wondering if Guardian supports it. I read in one FAQ that Guardian supports WLS 8.1 and up, but cannot get it to work with 10. I tried to manually deploy the Agent to my local server, but I do not see a support