Questions of syntax for message ORA-01555
My DBA has delivered the following message. I understand the cause of the message ORA-01555. My questions are about the additional content in the message.Imply the request of 8907 seconds time the failing query worked for so long?
The 'GATHER_STATS_JOB met mistakes' States that the gather_stats_job was running when the error occurred?
Has been the cause of the error message GATHER_STATS_JOB (not the root cause of the problem, but rather the ongoing process of execution when the error occurred)?
ORA-01555 caused by the following SQL statement (SQL ID: fn1ccz80nx7g4, duration of application s = 8907, SNA: 0x0000.18f89957):
/* SQL Analyze(124,1) */ select /*+ full(t) no_parallel(t) no_parallel_index(t) dbms_stats cursor_sharing_exact use_weak_name_resl dynamic_sampling(0) no_monitoring */to_char(count("MUNI_STAGING_DATE")),to_char(substrb(dump(min("MUNI_STAGING_DATE"),16,0,32),1,120)),to_char(substrb(dump(max("MUNI_STAGING_DATE"),16,0,32),1,120)),to_char(count("PRICING_REC_ID")),to_char(substrb(dump(min("PRICING_REC_ID") ,16,0,32),1,120)),to_char(substrb(dump(max("PRICING_REC_ID"),16,0,32),1,120)),to_char(count("DATE_OF_INSERT")),to_char(substrb(dump(min("DATE_OF_INSERT"),16,0,32),1,120)),to_char(substrb(dump(max("DATE_OF_INSERT"),16,0,32),1,120)),to_char(count("DATE_OF_UPDATE")),to_char(substrb(dump(min("DATE_OF_UPDATE"),16,0,32),1,120)),to_char(substrb(dump(max("DATE_OF_UPDATE") ,16,0,32),1,120)),to_char(count("INTERNAL_ISSUE_ID")),to_char(substrb(dump(min("INTERNAL_ISSUE_ID"),16,0,32),1,120)),to_char(substrb(dump(max("INTERNAL_ISSUE_ID"),16,0,32),1,120)),to_char(count("PRICING_DATE")),to_char(
substrb (dump (min ("PRICING_DATE"), 16
Met GATHER_STATS_JOB of errors. Check the trace file.
Errors in the /u02/oracle/diag/FIAPPE/diag/rdbms/fiappe/FIAPPE1/trace/FIAPPE1_j000_16866.trc file:
ORA-20011: approximate NDV failed: ORA-01555: snapshot too old: rollback segment number 12 with the name ' _SYSSMU12_1268237196$ ' too small
Published by: 846797 on March 23, 2011 11:40
Details of the message from the database pl and OS versions.
846797 wrote:
My DBA has delivered the following message. I understand the cause of the message ORA-01555. My questions are about the additional content in the message.Imply the request of 8907 seconds time the failing query worked for so long?
Fix. About 2 hours and a half.
The 'GATHER_STATS_JOB met mistakes' States that the gather_stats_job was running when the error occurred?
Fix.
Has been the cause of the error message GATHER_STATS_JOB (not the root cause of the problem, but rather the ongoing process of execution when the error occurred)?
Fix.
>
ORA-01555 caused by the following SQL statement (SQL ID: fn1ccz80nx7g4, duration of application s = 8907, SNA: 0x0000.18f89957):
/* SQL Analyze(124,1) */ select /*+ full(t) no_parallel(t) no_parallel_index(t) dbms_stats cursor_sharing_exact use_weak_name_resl dynamic_sampling(0) no_monitoring */to_char(count("MUNI_STAGING_DATE")),to_char(substrb(dump(min("MUNI_STAGING_DATE"),16,0,32),1,120)),to_char(substrb(dump(max("MUNI_STAGING_DATE"),16,0,32),1,120)),to_char(count("PRICING_REC_ID")),to_char(substrb(dump(min("PRICING_REC_ID") ,16,0,32),1,120)),to_char(substrb(dump(max("PRICING_REC_ID"),16,0,32),1,120)),to_char(count("DATE_OF_INSERT")),to_char(substrb(dump(min("DATE_OF_INSERT"),16,0,32),1,120)),to_char(substrb(dump(max("DATE_OF_INSERT"),16,0,32),1,120)),to_char(count("DATE_OF_UPDATE")),to_char(substrb(dump(min("DATE_OF_UPDATE"),16,0,32),1,120)),to_char(substrb(dump(max("DATE_OF_UPDATE") ,16,0,32),1,120)),to_char(count("INTERNAL_ISSUE_ID")),to_char(substrb(dump(min("INTERNAL_ISSUE_ID"),16,0,32),1,120)),to_char(substrb(dump(max("INTERNAL_ISSUE_ID"),16,0,32),1,120)),to_char(count("PRICING_DATE")),to_char(
substrb (dump (min ("PRICING_DATE"), 16
Met GATHER_STATS_JOB of errors. Check the trace file.
Errors in the /u02/oracle/diag/FIAPPE/diag/rdbms/fiappe/FIAPPE1/trace/FIAPPE1_j000_16866.trc file:
ORA-20011: approximate NDV failed: ORA-01555: snapshot too old: rollback segment number 12 with the name ' _SYSSMU12_1268237196$ ' too smallPublished by: 846797 on March 23, 2011 11:40
HTH
Srini
Tags: Database
Similar Questions
-
Question of syntax for the Desktop - generator model for Word - BI Publisher
Hello
Anyone have experience to add reports using the Publsiher BI for Word template generator?
Practical question I have: how to implement logic such as: If < field_name > is not null, then, write "Hello" end if
If anyone gave me some useful links, I'd be very happy.
Thank youPL check the "Oracle XML Publisher Report Designer Guide" at http://docs.oracle.com/cd/B40089_10/current/html/docset.html
HTH
Srini -
ORA-01555 - Tuning for the UNDO tablespace.
Dear DBA Kings/Queens,
I often "ORA-01555 snapshot too old error" due to the special delete statement. Which removes the lines about 50 000 all day as a batch. Eventhough, I reduced to 50 000 to 10 000 and 1000. No luck.
Can someone tell me how to set UNDO tablespace.
-----------------------------------------------------------------------------
Oracle9i Enterprise Edition Release 9.2.0.7.0 - 64 bit Production
PL/SQL Release 9.2.0.7.0 - Production
CORE 9.2.0.7.0; Production
AMT for Solaris: release 9.2.0.7.0 - Production
NLSRTL Version 9.2.0.7.0 - Production
-----------------------------------------------------------------------------
SQL > show Cancel parameter
VALUE OF TYPE NAME
------------------------------------ ----------- ------------------------------
UNDO_MANAGEMENT string AUTO
UNDO_RETENTION integer 10800
undo_suppress_errors Boolean TRUE
undo_tablespace string UNDOTBS1
-----------------------------------------------------------------------------
Size in GB:
TOTAL USED FREE USED_PCNT NOM_TABLESPACE
------------------------------ ---------- ---------- ---------- ----------
UNDOTBS1 13.5; 1.34; 12.17; 9.89Which removes the lines about 50 000 all day as a batch
Has often committed?
-do not commit frequently.-Increase the setting "undo_retention.
-reduce the duration of operation (plan use of execution to check your query)... perhaps may create index. Or to commit all the 5000 rows
-For collecting statistics on the table
Edited by: Surachart Opun (HunterX) July 23, 2009 12:04 AM
-
Using syntax for the 'If' statement in the query?
Hi, I work at the end before the PS 9.2 via the request handler and need help
What I want to do, it's a field of expression to create
another field of expression that I can use to group on. Maybe the query like
expressions based on expressions...? Maybe because I'm on an Oracle database, I need to use Decode? If so, how can I use decode?Details:
The field I created Gets the length of the employee in
service and it works very wellMONTHS_BETWEEN (SYSDATE, A.SERVICE_DT) / 12
It works as a character or a numeric field.
This is the problem... The next field, I would like that the query is one that goes like this...
IF ((MONTHS_BETWEEN(SYSDATE,A.SERVICE_DT)/12))
< = 4.99, "minus 5"ELSE IF ((MONTHS_BETWEEN(SYSDATE,A.SERVICE_DT)/12)) > = 5 AND
((MONTHS_BETWEEN(SYSYDATE,A.SERVICE_DT)/12)) < = 9.99, "5 to 9".ELSE IF ((MONTHS_BETWEEN(SYSDATE,A.SERVICE_DT)/12)) > = 10 AND
((MONTHS_BETWEEN(SYSYDATE,A.SERVICE_DT)/12)) < = 14.99, '10 to 14', "15 and"
More»I get an error message that "a SQL error has occurred. For more details, please see your system log. Error in running because the SQL query is 972. Message = ORA-00972 identifier is too long (50 380)
Can you tell me what expression should I use? And please keep in mind that I do not have access to the SQL Developer, so I have to use the query. Thank you!... Mary
I would recommend using BOX WHEN if you're on an Oracle database. Something like:
CASE WHEN ((MONTHS_BETWEEN(SYSDATE,A.SERVICE_DT)/12)) <=4.99 then="" 'less="" than="" 5'="" when="" ((months_between(sysdate,a.service_dt)/12))="">= 5 AND
((MONTHS_BETWEEN(SYSDATE,A.SERVICE_DT)/12)) <=9.99 then="" '5="" to="" 9'="" when="" ((months_between(sysdate,a.service_dt)/12))="">= 10 AND ((MONTHS_BETWEEN(SYSDATE,A.SERVICE_DT)/12))<=14.99 then="" '10="" to="" 14'="" else="" '15="" and="" over'="">=14.99>
You can find more on the syntax of the CASE on the Oracle's Web site:
http://docs.Oracle.com/CD/B19306_01/AppDev.102/b14261/case_statement.htm
=9.99>=4.99> -
ORA-01555: snapshot too old: number of rollback segments
Therefore on Oracle 11.2.0.2 on Solaris. High level, we have a pretty large table on one of our Oracle dev instances, lines 430mil, where the data was populated by a large data load. Two of our date fields have been left NULL so that we have to go back and update every row after the fact with SYSDATE values (some downstream applications require having some sort of date in this area).
in any case, I wrote a script for this (truncated a bit for brevity):
DECLARE ... ln_limit NUMBER := 10000; -- Max amount of records to process in a single bulk update statement lv_total_rows INTEGER := 0; lv_count NUMBER; lv_rowid VARCHAR(18); CURSOR tco_cursor IS SELECT ROWID FROM LXRO WHERE LxModDate IS NULL; TYPE t_rows IS TABLE OF ROWID; lv_rowids t_rows; BEGIN ... OPEN tco_cursor; LOOP FETCH tco_cursor BULK COLLECT INTO lv_rowids LIMIT ln_limit; FORALL i IN 1 .. lv_rowids.COUNT UPDATE LXRO SET LxModDate = SYSDATE WHERE ROWID = lv_rowids(i); ... -- (writes to log table here) COMMIT; EXIT WHEN lv_rowids.COUNT < ln_limit; END LOOP; CLOSE tco_cursor; COMMIT; EXCEPTION WHEN OTHERS THEN dbms_output.put_line(TO_CHAR(lv_rowid) || ' - ' || sqlerrm || ' - ' || TO_CHAR (ln_counter)); END; /
Only, the work runs for an hour and updates 37mil lines in a same test, and then gets the following error:
ORA-01555: snapshot too old: rollback segment number 30 with name ' _SYSSMU30_4136132754$ ' too small
I did some research on the error and read something interesting:
Do not look around is committed. In other words, don't fetch on a slider was opened before the last commit, especially if the data surveyed by the slider is changed in the current session.
Also, if the query is a loop with a commit in it, it can do the same without other queries, because finally the next iteration requires looking at his own first generation, cannot do so and barfs.
Upping undo_retention may help, or not, as the real cause. See also v$ undostat, you may still have information in there, if it is current (or not, since at the time where you check the necessary info can be gone).
I think that our UNDO tablspace has 16 GB now. I do not try to hold back the 400 million lines in temp would be feasible, that's why I am committed all 10 k rows, more we ran into problems of memory with a version non-bulk this script before. It will only be a time process (we have set our data migration to fill in these fields in future iterations). Am I better choose to simply keep this job and re - keep on running for hours all the hours given the amount of data? Is - this naïve to think that I could make this many updates without error in a single task running?
Simply change the column and set the DEFAULT as SYSDATE clause. Now, you would not have to perform the update at all.
And for the current issue, a single update could have questioned the size of the CANCELLATION. I guess that's what you're talking like memory problem. Good thing for you to do is to work with your DBA and Set configure your CANCELLATION as a result. If not enough UNDO available then you can split the update in the form of fixed numbers and run them, something like that.
I used a 10-million limit. But you can work with your DBA and attempt to set even more.
loop
Update lxro set lxmoddate = sysdate where lxmoddate has the value null and rownum<=>=>
commit;
When the output sql % rowcount<>
end;
/
Collect bulk copy the data in the PGA (private memory). It is a very expensive operation. Collect bulk was introduced mainly to reduce the change of context. But its performance is mediocre compared to direct SQL. So try to make your work in SQL right front.
-
expdp fails with ORA-31693 and ORA-01555
Hello
I use Oracle Database 10 g Enterprise Edition Release 10.2.0.4.0 - 64bi under hp - ux
I export the DB as follows:
password/expdp system.
Full = y.
dumpfile = backup_dir:expdp_$ ORACLE_SID.dmp.
logfile = backup_dir:expdp_$ ORACLE_SID.log.
exclude = statistics-
estimate statistics =.
flashback_time =-"TO_TIMESTAMP\ (\ ' $DATE_EXP\ ', \'YYYY-MM-DD HH24:MI:SS\'\) \" "
It has always worked well, but this morning I received an error message:
ORA-31693: Data Table object "DFE". "' TGV_CONTROLE ' failed to load/unload and being ignored because of the error:
ORA-02354: Error exporting/importing data
ORA-01555: snapshot too old: rollback segment number 1 with the name ' _SYSSMU1$ ' too small
ORA-00604: an error has occurred at the SQL level recursive 3
ORA-08180: no snapshot found on the basis of time specified
ORA-06512: at "SYS." TIMESTAMP_TO_SCN', line 1
ORA-00604: an error has occurred at the SQL level recursive 3
ORA-08180: no snapshot found on the basis of time specified
no idea what that sometimes causes this error?
Thank youThe time that you specified is mapped to an invalid SCN, a SCN beyond the current retention policy used.
You can try more big parameter UNDO_RETENTION or flashback for the more recent time and start again. -
the system cannot find the message text for message number 0 x in the message file
Hello
I use the MKLINK command to share a public directory in my file server for all organizational units.
After I set the NTFS permissions on the server, I can open directories related to all the directories of the OU but in client windows XP to return this error window:"The system is not message text for message number 0 x in the messages for \\Filesrv2\IT\Public file.
Thank you for your time
Hi Babak,
The issue of Windows is more complex than what is generally answered in the Microsoft Community Forums. Appropriate in the TechNet Forums. Please post your question in the TechNet Forums.
You can check the link to post your question:
http://social.technet.Microsoft.com/forums/en-us/winservergen/threads
I hope that helps!
-
The system cannot find message for message number 0 x 2350 in the message file
I have a copy of the command prompt on my USB key because I like to use sdelete to delete my files when I'm working on public computers. Maybe I'm just paranoid, but I don't want to steal my files of people. Anyway, it works well, but recently, I've run the cmd.exe from the flash drive and it gave me the following error message:
«The system cannot find the message text for message number 0 x 2350 in the Application message file.»
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
E:\>"
I was curious about it, but searching the Internet are proved fruitless for me. Was the closest, I got a satisfactory answer:http://social.technet.microsoft.com/Forums/en/w7itprogeneral/thread/39a7ee2d-08b7-47d4-94fe-e0f41c12730f
... However, their solution does not solve my problem. I'm really wondering if this error is normal, what it means and how it can be solved. I appreciate any help I can get; It doesn't seem to be a problem - just, I'm curious and want to know more about it. Thank you!
Paulk91 - it turns out that I could trade my printing problem of
in the application configuration file. More a question of the Acucobol environment due
for an earlier version of the runtime. Experienced A with the path variable and
tried to copy the files to my C:\root mui, but does not seem to help.
Thanks for your suggestions.
-
full database export error ORA-31693 ORA-01555: snapshot too old: rollback segment
Hello
normal full database export, I do it for my databases to which I subscribe. I recently check the export log in one of the databases, and it had the following errors:
ORA-31693
ORA-02354
ORA-01555: snapshot too old: rollback segment
my database is 11 GR 2 and the Linux environment.
any help please?
Hello
This error indicates you have given LOB in your tables and binds to the parameter size undo_retention.
Check this: https://geodatamaster.wordpress.com/2014/11/08/expdp-ora-31693-ora-02354-ora-01555/
You must increase the size of undo_retention
-
ORA-01555: snapshot too old when there are expired blocks
BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - production
PL/SQL Release 10.2.0.4.0 - Production
CORE 10.2.0.4.0 Production
AMT for Linux: release 10.2.0.4.0 - Production
NLSRTL Version 10.2.0.4.0 - Production
We set the size cancellation tablspace to 2 GB with undo_retention duration of 1 hour.
We get ORA-01555: snapshot too old: rollback segment number 51 with the name ' _SYSSMU51$ ' too small error when running the purge process.
I want to know if there are expired blocks available and fly count for blocks remaining is 0, so why we get error ORA-01555.
According to below the result of the query:
EXPIREDBLKS = 138616
UNXPSTEALCNT = 0
set line 2000 SELECT * FROM dba_hist_UNDOSTAT where ssolderrcnt <> 0
BEGIN_TIME END_TIME DBID INSTANCE_NUMBER SNAP_ID UNDOTSN UNDOBLKS TXNCOUNT MAXQUERYLEN MAXQUERYSQLID MAXCONCURRENCY UNXPSTEALCNT UNXPBLKRELCNT UNXPBLKREUCNT EXPSTEALCNT EXPBLKRELCNT EXPBLKREUCNT SSOLDERRCNT NOSPACEERRCNT ACTIVEBLKS UNEXPIREDBLKS EXPIREDBLKS TUNED_UNDORETENTION --------------------- --------------------- ---- --------------- ------- ------- -------- -------- ----------- ------------- -------------- ------------ ------------- ------------- ----------- ------------ ------------ ----------- ------------- ---------- ------------- ----------- ------------------- 6/21/2014 10:15:21 AM 6/21/2014 10:25:21 AM 8337 2 50429 8 17969 27294 15780 77kuu26yggxym 19 0 0 0 0 0 0 1 0 9904 1549952 138616 13262
> so why we get error ORA-01555.
The session that signals the ORA-01555 is the victim; not the culprit.
This session is probably made a LONG run SELECT against other tables.
Done some session also DML against this same table and launches 'frequent' COMMIT (usually inside the LOOP).
Eliminate common VALIDATION & the ORA-01555 error no longer is.
-
Error message ORA-01722 loading data from text file
Hi all
I want to load data into the table 'dh_healthcare '.
with the columns:
...
NUMBER OF RMI,
NUMBER OF KUM,
...
Loading data with the APEX data workshop, I got the error message ' ORA-01722: invalid number. "
For example, ALEXIS has the following values:
1.99
6.49
4.14
...
KUM:
139,30
51.32
165,23
...
I tried to put the precision and scale in the column definition, but the same error message appears.
When I changed the data type of these columns in VARCHAR2 (60) the data loaded without error message.Someone at - it an idea to solve the error?
Thank you
Ben
This has to do with the settings of NLS Session about the decimal separator and the group separator.
How you load the data in the table determines where and how you set the Session variables.
MK
-
Hey people,
I've heard for loops is the best way to accomplish what I need. With my level of coding, I try to have that when all checkbox States are true, then a specific image. the question is when I was using earphones of events within each of the mouse click events, this would trigger the click on the ninth all the conditions would be met. The syntax for a loop seems daunting, is it possible to run my function, so it is always "listening" or will run eimmeidatley if the conditions are met?
OFbandSEVENclose.addEventListener (MouseEvent.CLICK, OnFRYERbandSEVENclose);
function OnFRYERbandSEVENclose (e: MouseEvent): void
{
gotoAndPlay (1);
}
OFbandSEVENcheckONE.visible = false;
OFbandSEVENcheckTWO.visible = false;
OFbandSEVENcheckTHREE.visible = false;
OFbandSEVENcheckFOUR.visible = false;
OFbandSEVENcheckFIVE.visible = false;
OFbandSEVENcheckSIX.visible = false;
OFbandSEVENcheckSEVEN.visible = false;
OFbandSEVENcheckEIGHT.visible = false;
OFbandSEVENcheckBUTTON1.addEventListener (MouseEvent.CLICK, checkbuttonONE, false, 0, true);
function checkbuttonONE(e:Event):void
{
If (OFbandSEVENcheckONE.visible == true) {}
OFbandSEVENcheckONE.visible = false;
} else {}
OFbandSEVENcheckONE.visible = true;
}
}
OFbandSEVENcheckBUTTON2.addEventListener (MouseEvent.CLICK, checkbuttonTWO, false, 0, true);
function checkbuttonTWO(e:Event):void
{
If (OFbandSEVENcheckTWO.visible == true) {}
OFbandSEVENcheckTWO.visible = false;
} else {}
OFbandSEVENcheckTWO.visible = true;
}
}
OFbandSEVENcheckBUTTON3.addEventListener (MouseEvent.CLICK, checkbuttonTHREE, false, 0, true);
function checkbuttonTHREE(e:Event):void
{
If (OFbandSEVENcheckTHREE.visible == true) {}
OFbandSEVENcheckTHREE.visible = false;
} else {}
OFbandSEVENcheckTHREE.visible = true;
}
}
OFbandSEVENcheckBUTTON4.addEventListener (MouseEvent.CLICK, checkbuttonFOUR, false, 0, true);
function checkbuttonFOUR(e:Event):void
{
If (OFbandSEVENcheckFOUR.visible == true) {}
OFbandSEVENcheckFOUR.visible = false;
} else {}
OFbandSEVENcheckFOUR.visible = true;
}
}
OFbandSEVENcheckBUTTON5.addEventListener (MouseEvent.CLICK, checkbuttonFIVE, false, 0, true);
function checkbuttonFIVE(e:Event):void
{
If (OFbandSEVENcheckFIVE.visible == true) {}
OFbandSEVENcheckFIVE.visible = false;
} else {}
OFbandSEVENcheckFIVE.visible = true;
}
}
OFbandSEVENcheckBUTTON6.addEventListener (MouseEvent.CLICK, checkbuttonSIX, false, 0, true);
function checkbuttonSIX(e:Event):void
{
If (OFbandSEVENcheckSIX.visible == true) {}
OFbandSEVENcheckSIX.visible = false;
} else {}
OFbandSEVENcheckSIX.visible = true;
}
}
OFbandSEVENcheckBUTTON7.addEventListener (MouseEvent.CLICK, checkbuttonSEVEN, false, 0, true);
function checkbuttonSEVEN(e:Event):void
{
If (OFbandSEVENcheckSEVEN.visible == true) {}
OFbandSEVENcheckSEVEN.visible = false;
} else {}
OFbandSEVENcheckSEVEN.visible = true;
}
}
OFbandSEVENcheckBUTTON8.addEventListener (MouseEvent.CLICK, checkbuttonEIGHT, false, 0, true);
function checkbuttonEIGHT(e:Event):void
{
If (OFbandSEVENcheckEIGHT.visible == true) {}
OFbandSEVENcheckEIGHT.visible = false;
} else {}
OFbandSEVENcheckEIGHT.visible = true;
}
}
THE FINAL SCREEN =.
function OFbandSEVENCOMPLETE(e:Event):void
{
If (OFbandSEVENcheckONE.visible == true & & OFbandSEVENcheckTWO.visible == true & & OFbandSEVENcheckTHREE.visible == true & & OFbandSEVENcheckFOUR.visible == true & & OFbandSEVENcheckFIVE.visible == true & & OFbandSEVENcheckSIX.visible == true & & OFbandSEVENcheckSEVEN.visible == true & & OFbandSEVENcheckEIGHT.visible == true) {}
gotoAndPlay (12);
}
}
Stop();
I see the problem:
check .visble [n-1] =! check .visible [n-1];
must be visible not folded down
-
HelloI get ORA-01555 error when performing the following procedure.
CREATE OR REPLACE PROCEDURE proc1 (text in varchar2, varchar2 data type)
ASL_STMT varchar2 (6000);
number of l_exists;
v_code NUMBER;
v_errm VARCHAR2 (400);
tabnam VARCHAR2 (100);
colnam VARCHAR2 (100);
cursor tab_cur is
Select utc.table_name, utc.column_name, utc.data_type
from user_tables utb, user_tab_columns utc
where utc.table_name = utb. Table-name
and NOT EXISTS (SELECT ' X'
OF tl table_list
WHERE the tl.table_name = utc.table_name)
AND utc.data_type = 'VARCHAR2'
ORDER OF THE UTC. TABLE_NAME;TYPE table_info_tt IS TABLE OF tab_cur % ROWTYPE;
l_tab table_info_tt;BEGIN
insert into m_log values (SYSTIMESTAMP, 'Start time');
commit;OPEN tab_cur.
LOOP
Get the tab_cur COLLECT in BULK WITHIN the limits of the 1000 l_tab;
FOR indx in 1.l_tab.count
LOOP
BEGIN
L_STMT: = ' SELECT COUNT (1)
OF ' | l_tab (indx). TABLE_NAME | ' WHERE ' | l_tab (indx). Column_name |' =: intext';
run immediately L_STMT in l_exists using text;
tabnam: = l_tab (indx). TABLE_NAME;
colnam: = l_tab (indx). COLUMN_NAME;
EXCEPTION
WHILE OTHERS THEN
L_STMT: = ' SELECT COUNT (1)
OF ' | l_tab (indx). TABLE_NAME | » OÙ ' ||' » ' || l_tab (indx). COLUMN_NAME |' "' |' =: intext';
run immediately L_STMT in l_exists using intext;
tabnam: = l_tab (indx). TABLE_NAME;
colnam: = l_tab (indx). COLUMN_NAME;
END;
IF (l_exists = 0) then
null;
on the other
insert into ADM_TEXT_INFO
values (l_tab (indx). Table_name, l_tab (indx). Column_name, text, data type);
commit;
END IF;
END LOOP;
EXIT WHEN l_tab.count = 0;
END LOOP;
CLOSE Tab_cur;
insert into m_log values ("SYSTIMESTAMP," over time ");
commit;
exception
while others then
v_code: = SQLCODE;
v_errm: = SUBSTR (SQLERRM, 1, 200);
INSERT INTO VALUES error_log (v_code, v_errm, SYSTIMESTAMP);
commit;
DBMS_OUTPUT. Put_line (' error code:' | v_code |) ': ' || v_errm);
END;
/Details of database version are the following:
Oracle Database 11 g Enterprise Edition Release 11.1.0.7.0 - 64 bit Production
PL/SQL Release 11.1.0.7.0 - Production
CORE Production 11.1.0.7.0
AMT for Linux: Version 11.1.0.7.0 - Production
NLSRTL Version 11.1.0.7.0 - Production
SQL > show Cancel parameterVALUE OF TYPE NAME
------------------------------------ ----------- --------
UNDO_MANAGEMENT string AUTO
UNDO_RETENTION around 2000
undo_tablespace string UNDOTBS1I changed the undo_retention and checked, it still gives the same error. The undo tablespace size is 23.7 GB (GB 23 is free, only 27 MB are used).
Can anyone please suggest me, what could be the problem.
Thank you
SB2011
Have a look here:
-
Hello
I am getting below error while taking expdp backup table of BLOB.
ORA-31693: Data Table object 'HCLM_ADMIN '. "' SCAN_UPLOADEDFILES_TEMP ' failed to load/unload and being ignored because of the error:
ORA-02354: Error exporting/importing data
ORA-01555: snapshot too old: rollback segment number with the name "" too small
ORA-22924: snapshot too old
ORA-31693: Data Table object 'HCLM_ADMIN '. "' TPA_FAXWATCHER ' failed to load/unload and being ignored because of the error:
ORA-02354: Error exporting/importing data
ORA-01555: snapshot too old: rollback segment number with the name "" too small
ORA-22924: snapshot too old
We have already set aside retention to 50000 .table structure are:
SQL > show Cancel parameter
VALUE OF TYPE NAME
------------------------------------ ----------- ------------------------------
UNDO_MANAGEMENT string AUTO
UNDO_RETENTION integer 50000
undo_tablespace string UNDOTBS1
SQL > alter table hclm_admin. SCAN_UPLOADEDFILES_TEMP modify lob (FILE_BLOB) (RETENTION);
Modified table.
SQL > select nom_de_colonne, pctversion and retention
from dba_lobs where owner = 'HCLM_ADMIN' and table_name = "SCAN_UPLOADEDFILES_TEMP";
COLUMN_NAME
--------------------------------------------------------------------------------
PCTVERSION RETENTION
---------- ----------
FILE_BLOB
50000
SQL > alter table hclm_admin. TPA_FAXWATCHER modify lob (FILEDATA_BLOB) (RETENTION);
Modified table.
SQL > select column_name, pctversion and retention of dba_lobs where owner = 'HCLM_ADMIN' and table_name = "SCAN_UPLOADEDFILES_TEMP";
Column_name PCTVERSION RETENTION
---------- ----------
FILE_BLOB
50000
CREATE TABLE HCLM_ADMIN. TPA_FAXWATCHER
(
FILENAME_VAR VARCHAR2 (50 BYTE),
DATE OF CREATED_DATE_DTE,
FILEPATH_VAR VARCHAR2 (100 BYTE),
DATE OF TIMESTAMP_DTE,
FAXNO_VAR VARCHAR2 (15 BYTE),
DEPARTMENT_VAR VARCHAR2 (50 BYTE),
REQUESTTYPE_VAR VARCHAR2 (50 BYTE),
TAGTO_VAR VARCHAR2 (50 BYTE),
REMARK_VAR VARCHAR2 (1000 BYTE),
DOCTYPE_VAR VARCHAR2 (50 BYTE),
TAGTOVALUE_VAR VARCHAR2 (50 BYTE),
DOCTYPE_OTHER_VAR VARCHAR2 (50 BYTE),
HEGIC_NO_VAR VARCHAR2 (50 BYTE),
RECORDNO_NUM NUMBER OF NON-NULL,
FILEDATA_BLOB BLOB,
DATE OF FAXLOCKDATE_DTE,
NUMBER OF FAXLOCKSTATUS_VAR
FAXLOCKBYUSER_VAR VARCHAR2 (50 BYTE)
)
(STORE AS) LOB (FILEDATA_BLOB)
TABLESPACE HCLM_ALERTSVC
ALLOW ONLINE STORAGE
8192 CHUNK
RETENTION
NOCACHE
LOGGING
INDEX)
TABLESPACE HCLM_ALERTSVC
STORAGE)
64K INITIALS
ACCORDING TO 1 M
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
DEFAULT USER_TABLES
))
STORAGE)
64K INITIALS
ACCORDING TO 1 M
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
DEFAULT USER_TABLES
))
TABLESPACE HCLM_ALERTSVC
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE)
64K INITIALS
ACCORDING TO 1 M
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
DEFAULT USER_TABLES
)
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
ALTER TABLE HCLM_ADMIN. (ADD) TPA_FAXWATCHER
KEY ELEMENTARY SCHOOL
(RECORDNO_NUM)
USING INDEX
TABLESPACE HCLM_ALERTSVC
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE)
64K INITIALS
ACCORDING TO 1 M
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
));
CREATE TABLE HCLM_ADMIN. SCAN_UPLOADEDFILES_TEMP
(
NUMBER OF TEMPID_NUM
SESSION_ID VARCHAR2 (200 BYTE),
NUMBER OF UPLOADFILE_NUM
NUMBER OF DOCNO_NUM
NUMBER OF SCANJOB_NUM
FILENAME_VAR VARCHAR2 (200 BYTE),
FILETYPE_VAR VARCHAR2 (200 BYTE),
FILE_BLOB BLOB,
VARCHAR2 (200 BYTE) FLAG,
NUMBER OF USERID_NUM
CREATED_DATE DATE
)
(STORE AS) LOB (FILE_BLOB)
TABLESPACE PHCLMDBTBS
ALLOW ONLINE STORAGE
8192 CHUNK
RETENTION
NOCACHE
LOGGING
INDEX)
TABLESPACE PHCLMDBTBS
STORAGE)
64K INITIALS
ACCORDING TO 1 M
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
DEFAULT USER_TABLES
))
STORAGE)
64K INITIALS
ACCORDING TO 1 M
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
DEFAULT USER_TABLES
))
TABLESPACE PHCLMDBTBS
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE)
64K INITIALS
ACCORDING TO 1 M
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
DEFAULT USER_TABLES
)
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
Kind regards
Hello
First check the lob corrupt as:
SQL > create table corrupted_lob_data (corrupted_rowid rowid);
Table created.
SQL > set off concat
SQL >
declare
SQL > error_1555 exception;
pragma exception_init (error_1555,-1555);
number num.
Start
for cursor_lob in (select rowid r, & lob_column of table_owner. & table_with_lob) loop
Start
NUM: = dbms_lob.instr (. cursor_lob & lob_column, hextoraw ('889911'));
exception
When error_1555 then
insert into corrupted_lob_data values (cursor_lob.r);
commit;
end;
end loop;
end;
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
17.
Enter the value of lob_column: FILE_BLOB
Enter the table_owner value: hclm_admin
Enter the value of table_with_lob: SCAN_UPLOADEDFILES_TEMP
former 6: for cursor_lob in (select rowid r, & lob_column of table_owner. & table_with_lob) loop
6 news: for cursor_lob (select rowid r, FILE_BLOB of hclm_admin loop SCAN_UPLOADEDFILES_TEMP.)
old 8: num: = dbms_lob.instr (. cursor_lob & lob_column, hextoraw ('889911'));
8 new: num: = dbms_lob.instr (cursor_lob. FILE_BLOB, hextoraw ('889911'));
PL/SQL procedure successfully completed.
SQL > select * from corrupted_lob_data;
CORRUPTED_ROWID
------------------
AAASF/AAKAABacyAAA
To resolve this problem, we have 3 options
(1) to restore and recover the LOB segment using physical backup.
(2) empty LOBs affected using the UPDATE, as mentioned in the Note 787004.1statement:
SQL > update SCAN_UPLOADEDFILES_TEMP
Set FILE_BLOB = empty_blob()
where rowid in (select corrupted_rowid
of corrupted_lob_data);
SQL > commit;
(3) perform the export, excluding the corrupt ROWID. by adding the following to export command parameter
Query =------"where rowid not in (\'AAASF/AAKAABacyAAA\'\) \ \" "
Kind regards
Alok Dwivedi
-
ORA-01555: snapshot too old: rollback segment number with the name ' ' too smal
Hello team,
We get below error in the concurrent program, after operating for 8 hours in Instance of Test. The same program works in PROD.
Recently, we migrated version 12.1.2 EBS EBS version 12.1.3 2. This can be root causes?
Any idea on this matter is much appreciated as Tracefiles/TKProfs are unable to give us clues
ERROR on line 1:
ORA-01555: snapshot too old: rollback segment number with the name "" too small
ORA-06512: at the 'APPS '. Package_name", line 170
ORA-06512: at line 1
Thank you/SReddyhttp://docs.Oracle.com/CD/B19306_01/AppDev.102/b14258/d_stats.htm#i1036461
Also check
http://www.orafaq.com/wiki/ora-01555
Maybe you are looking for
-
HP and HP Support Assistant update
Is it necessary to have and use the updated HP and HP Support Assistant? HP Support Assistant does not have everything HP Update done more more? It seems that HP Support Assistant was created to replace HP Update.
-
explaining hibernate vs closed for the computer illiterate
A relative of mine who is computer illiterate asked why she cannot use hibernate all the time instead of shutdown down, as the computer starts much faster. She seemed to have trouble "getting" the explanation of exactly what does each of them, so I t
-
Impossible to update KB2820917, KB2813345, KB2813170
KB2820917, KB2813345, KB2813170 are updates of security for vista 64. I was not able to update for over a week. Update is by allowing the Defender definitions update.
-
Users folder vs Computer\C drive on Vista?
I have been using Vista for almost 3 years and just noticed that there are duplicates under the office tree and the computer. Example: 2 photos of records. Is this supposed to be? If so, what are the differences? If I have the same pictures under the
-
Impossible to activate the laptop on Windows 7 computer wireless network connection
I'm not able to activate my wireless network on Windows 7 laptop connection. I have Atheros AR928X Wireless Network Adapter and I am unable to connect wireless. I was able to connect a few weeks previously, but now my Wireless Network Connection is s