ORA-04016 - Sequence no longer exists
Hi,
In the below scenario
1. All the sequences are dropped
2. When a process requires a value from a sequence and the sequence is not available, it is created and then a sequence.nextval is executed.
This statement is returning a ORA-04016 - Sequence <XXX> no longer exists.
Based on the following Metalink 1300837.1, we tried putting a sleep(5) between the sequence creation and fetch. The problem still occurs intermittently.
DB Version is 11.2.0.2 on Exadata with 6 nodes.
Even after an extensive search on the web, I could not find anything.
Is there any workaround for this or is there some DB patch to be applied?
Thanks
Have you tried sleeping for longer?
Alternative approaches that spring to mind are:
1) Ensure that the statements that create the sequence and those that subsequently use it are executed on the same node when executed in close succession.
2) Trap the error and retry in your code.
I'd be inclined to favour suggestion 1 if possible in your environment.
Is your code in PL/SQL?
Similar Messages
-
ORA-08103: object no longer exists during APEX 2.2 to 3.0 upgrade
I am trying to upgrade an APEX 2.2 installation on 10.2.0.2 Enterprise Edition on SLES-10 with 400MB shared_pool and 1 GB sga_target. During the upgrade, the session crashes due to ORA-00600: internal error code, arguments: [ktspgfb-1]. I cannot drop the FLOWS_030000 user and 523 corrupt blocks in sys7.dbf including objects source$, argument$ and obj$. So far, I have restored the database and corrupted it 3 times. Each time, I redownloaded apex.zip from technet.oracle.com.
Here are the errors:
...PAGE 1300: Application Comparison
...PAGE 1301: Application Comparison Counts
...PAGE 1400: Report Layouts
...PAGE 1401: Create Report Layout
...PAGE 1402: Create Report Layout
...PAGE 1405: Edit Report Layout
...PAGE 1406: Create Report Query
...PAGE 1500: Application Builder
...PAGE 1550: User Interface Defaults
...PAGE 1552: UI Defaults - Column Defaults LOV
...PAGE 1553: UI Defaults - Column Defaults
...PAGE 1555: UI Defaults - Table Defaults
begin
ERROR at line 1:
ORA-08103: object no longer exists
ORA-06512: at "FLOWS_030000.WWV_FLOW_API", line 7733
ORA-06512: at line 18
ERROR:
ORA-00603: ORACLE server session terminated by fatal error
ERROR:
ORA-03114: not connected to ORACLE
SP2-0359: memory exhausted
Mon Apr 30 11:31:46 2007
Incremental checkpoint up to RBA [0x175.153ac.0], current log tail at RBA [0x175.2e77b.0]
Mon Apr 30 11:32:05 2007
Beginning log switch checkpoint up to RBA [0x176.2.10], SCN: 8173962186001
Thread 1 advanced to log sequence 374
Current log# 1 seq# 374 mem# 0: /lv01/oracle/dev10data/log01.dbf
Mon Apr 30 11:34:24 2007
Errors in file /lv01/oracle/dev10db/10.2.0/admin/dev10_plato/udump/dev10_ora_11590.trc:
ORA-00600: internal error code, arguments: [ktspgfb-1], [], [], [], [], [], [], []
Mon Apr 30 11:34:49 2007
Errors in file /lv01/oracle/dev10db/10.2.0/admin/dev10_plato/udump/dev10_ora_11590.trc:
ORA-00603: ORACLE server session terminated by fatal error
ORA-00600: internal error code, arguments: [ktspgfb-1], [], [], [], [], [], [], []
Mon Apr 30 11:35:02 2007
Errors in file /lv01/oracle/dev10db/10.2.0/admin/dev10_plato/bdump/dev10_pmon_7541.trc:
ORA-00600: internal error code, arguments: [ktspgfb-1], [], [], [], [], [], [], []
Mon Apr 30 11:35:15 2007
Errors in file /lv01/oracle/dev10db/10.2.0/admin/dev10_plato/bdump/dev10_pmon_7541.trc:
ORA-00600: internal error code, arguments: [ktspgfb-1], [], [], [], [], [], [], []
Mon Apr 30 11:37:18 2007
Completed checkpoint up to RBA [0x176.2.10], SCN: 8173962186001
Mon Apr 30 11:37:43 2007
Errors in file /lv01/oracle/dev10db/10.2.0/admin/dev10_plato/bdump/dev10_p000_12471.trc:
ORA-00600: internal error code, arguments: [ktspgfb-1], [], [], [], [], [], [], []
Mon Apr 30 11:37:54 2007
SMON: Parallel transaction recovery slave got internal error
SMON: Downgrading transaction recovery to serial
I now have 523 corrupt blocks in sys7.dbf:
DBVERIFY: Release 10.2.0.2.0 - Production on Mon Apr 30 11:50:21 2007
Copyright (c) 1982, 2005, Oracle. All rights reserved.
DBVERIFY - Verification starting : FILE = /lv01/oracle/dev10data/sys7.dbf
Page 188161 is marked corrupt
Corrupt block relative dba: 0x01c2df01 (file 7, block 188161)
Completely zero block found during dbv:
Page 188162 is marked corrupt
Corrupt block relative dba: 0x01c2df02 (file 7, block 188162)
Completely zero block found during dbv:
Page 188163 is marked corrupt
Corrupt block relative dba: 0x01c2df03 (file 7, block 188163)
Completely zero block found during dbv:
Page 188164 is marked corrupt
Corrupt block relative dba: 0x01c2df04 (file 7, block 188164)
Completely zero block found during dbv:
Any ideas why this is happening? I see a number of current bugs for ORA-00600: ktspgfb-1, but most knowledge base articles refer to 9.0.1 or 9.2.After upgrading to 10.2.0.3 and doubling the shared_pool_size and sga_target, I was able to upgrade to APEX 3.0 without errors.
-
ORA-08103: object no longer exists
Dear Experts,
I have a very tricky situation here.
A background job runs daily on our Production, which kinds of populates a lot of tables in another database (warehouse).
This morning, the job failed with an error: ORA-08103: object no longer exists
This error came while populating a table through a procedure.
I checked that the procedure and table both are in valid state and there are proper grants in place.
Also, we had faced the same problem few days back for the same table. We did not change anything. Simply re-ran the job and it went fine. Now also, we are re-running teh job and waiting to check if it goes fine.
Any ideaas why this error would come?
Thanks.Leo, Thanks very much for your inputs. The proceudre does not use any views.
Here is the code:
PROCEDURE GS_SKILLS_SP
IS
err_num NUMBER:=0;
err_msg VARCHAR2(100):=null;
status VARCHAR2(1):='Y';
proc_name VARCHAR2(60):='GS_SKILLS_SP';
table_name VARCHAR2(100):='GS_SKILLS_DIM';
BEGIN
RPT_GS.Z_PRO_TRUNCATE_TABLE('GS_SKILLS_DIM');
INSERT INTO GS.GS_SKILLS_DIM
(SKILL_ID,
SKILL_CODE,
SKILL_NAME,
DESCRIPTION,
PARENT_SKILL_ID,
SKILL_PATH,
IS_ACTIVE,
PARENT_SKILL_PATH,
PC_ID,
PC_NAME,
DIS_ID,
DIS_NAME,
LEVEL_ID,
LEVEL_NAME)
SELECT SK.SKILL_ID,
SK.SKILL_CODE,
SK.SKILL_NAME,
SK.DESCRIPTION,
SK.PARENT_SKILL_ID,
SK.SKILL_PATH,
SK.IS_ACTIVE,
SK.PARENT_SKILL_PATH,
null,
null,
null,
null,
null,
null
FROM SKILLS_DIM SK
WHERE UPPER(SK.SKILL_CODE) LIKE 'GS%'
AND SK.IS_ACTIVE = 'Y'
UNION
SELECT SK.SKILL_ID,
SK.SKILL_CODE,
SK.SKILL_NAME,
SK.DESCRIPTION,
SK.PARENT_SKILL_ID,
SK.SKILL_PATH,
SK.IS_ACTIVE,
SK.PARENT_SKILL_PATH,
SK_ASSOC.PC_ID,
SK_ASSOC.PC_NAME,
SK_ASSOC.DIS_ID,
SK_ASSOC.DIS_NAME,
SK_ASSOC.LEVEL_ID,
SK_ASSOC.LEVEL_NAME
FROM SKILLS_DIM SK,
SKILLS_OBS_ASSOC_DIM SK_ASSOC
WHERE SK.SKILL_ID=SK_ASSOC.SKILL_ID
AND UPPER(SK.SKILL_CODE) LIKE 'GS%'
and sk.is_active='Y'
AND SK_ASSOC.LOB_NAME = 'Global Services' ;
COMMIT;
INSERT INTO GS.GS_SKILLS_DIM
(SKILL_ID,
SKILL_CODE,
SKILL_NAME,
DESCRIPTION,
PARENT_SKILL_ID,
SKILL_PATH,
IS_ACTIVE,
PARENT_SKILL_PATH,
PC_ID,
PC_NAME,
DIS_ID,
DIS_NAME,
LEVEL_ID,
LEVEL_NAME)
SELECT SK.SKILL_ID,
SK.SKILL_CODE,
SK.SKILL_NAME,
SK.DESCRIPTION,
SK.PARENT_SKILL_ID,
SK.SKILL_PATH,
SK.IS_ACTIVE,
SK.PARENT_SKILL_PATH,
null,
null,
null,
null,
null,
null
FROM SKILLS_DIM SK
/*WHERE UPPER(SK.SKILL_CODE) LIKE 'GS%'
AND SK.IS_ACTIVE = 'Y'*/
/*changed on 16/04/2008 for RQ34634(PRIME168) */
where sk.is_active='Y'
and exists(select 1 from GS.GS_RES_PROFICIENCY_DIM gs_sk where gs_sk.skill_code=sk.skill_code)
and not exists(select 1 from gs.gs_skills_dim rpt_sk where rpt_sk.skill_code=sk.skill_code)
UNION
SELECT SK.SKILL_ID,
SK.SKILL_CODE,
SK.SKILL_NAME,
SK.DESCRIPTION,
SK.PARENT_SKILL_ID,
SK.SKILL_PATH,
SK.IS_ACTIVE,
SK.PARENT_SKILL_PATH,
SK_ASSOC.PC_ID,
SK_ASSOC.PC_NAME,
SK_ASSOC.DIS_ID,
SK_ASSOC.DIS_NAME,
SK_ASSOC.LEVEL_ID,
SK_ASSOC.LEVEL_NAME
FROM SKILLS_DIM SK,
SKILLS_OBS_ASSOC_DIM SK_ASSOC
WHERE SK.SKILL_ID=SK_ASSOC.SKILL_ID
/*changed on 16/04/2008 for RQ34634(PRIME168) */
and sk.is_active='Y'
and exists(select 1 from GS.GS_RES_PROFICIENCY_DIM gs_sk where gs_sk.skill_code=sk.skill_code)
and not exists(select 1 from gs.gs_skills_dim rpt_sk where rpt_sk.skill_code=sk.skill_code)
AND SK_ASSOC.LOB_NAME = 'Global' ;
COMMIT;
IF (err_num = 0) then
INSERT INTO GS_ERROR
(PROC_NAME,
TABLE_NAME,
ERR_CODE,
ERR_MSG,
CREATED_DATE,
STATUS)
VALUES(proc_name,table_name,err_num,err_msg,SYSDATE,status);
COMMIT;
END IF;
EXCEPTION
WHEN OTHERS THEN
err_num:=SQLCODE;
err_msg:=SUBSTR(SQLERRM,1,100);
status:='N';
ROLLBACK;
INSERT INTO GS_ERROR
(PROC_NAME,
TABLE_NAME,
ERR_CODE,
ERR_MSG,
CREATED_DATE,
STATUS)
VALUES(proc_name,table_name,err_num,err_msg,SYSDATE,status);
COMMIT;
END GS_SKILLS_SP; -
Error creating sdo_pc point cloud: "ORA-02289: sequence does not exist"
Oracle Database 12c Enterprise Edition Release 12.1.0.1.0
I've come across a problem when creating point clouds - every so often I'll get an error about a sequence not existing.
ERROR at line 1:
ORA-13199: Invalid Parameters for Partition_Table
ORA-13199: Invalid Parameters for Partition_Table
ORA-13249: Stmt-Execute Failure: DROP SEQUENCE "MDPCS_a_17745$$$"
ORA-29400: data cartridge error
ORA-02289: sequence does not exist
ORA-06512: at "MDSYS.PRVT_PC", line 3
ORA-06512: at "MDSYS.PRVT_PC", line 171
ORA-06512: at "MDSYS.SDO_PC_PKG", line 179
ORA-06512: at line 17
I've got a test case which creates a table where we'll put a sdo_pc, a block table and then a loading XYZ table. We then loop a bunch of times and create a PC for each.
Test case setup:
create table pc_test (
id integer primary key,
pc sdo_pc);
create sequence pc_test_id;
create table pc_test_blocks as select * from mdsys.sdo_pc_blk_table;
create table xyz (
rid number,
val_d1 number,
val_d2 number,
val_d3 number);
insert /*+ append */ into xyz (
select
rownum,
round(dbms_random.value(1,10000),2),
round(dbms_random.value(1,10000),2),
round(dbms_random.value(20,50),2)
from dual
connect by level <= 1000);
commit;
Run test case:
declare
l_pc sdo_pc;
l_id pls_integer;
begin
for i in 1..50 loop
l_pc := sdo_pc_pkg.init(
'PC_TEST', 'PC', 'PC_TEST_BLOCKS', 'blk_capacity=500',
sdo_geometry(2003, 2157, NULL, sdo_elem_info_array(1,1003,3), sdo_ordinate_array(400000, 500000, 800000, 1000000)),
0.005, 3, null);
l_id := pc_test_id.nextval;
dbms_output.put_line('PC_TEST id=' || l_id);
insert into pc_test (id, pc) values (l_id, l_pc);
sdo_pc_pkg.create_pc(l_pc, 'XYZ');
end loop;
end;
Some of the PCs will create, but eventually it'll blow up with
ORA-02289: sequence does not exist
In so far as I can tell, once I call sdo_pc_pkg.create_pc(), Oracle is creating a sequence with a name such as MDPCS_a_1751F$$$. When it is done creating the blocks, it then tries to drop the sequence. However the statement to drop the sequence is wrapped in double quotes - so if the sequence name contained any lowercase letters then it will error out when trying to drop it. The values used between the underscores seem to be hexadecimal - sometimes they're numbers only, sometimes numbers and uppercase letters, sometimes numbers and lowercase letters.
Has anybody else come across this issue?
The issue isn't critical as the PC blocks do seem to be created correctly, so the issues are: (a) my pl/sql block errors out and (b) I'm left with sequences lying around.
For the former I'll catch the exception and ignore it, for the latter I'll just drop the sequences myself afterwards.I tried the test on 11.2.0.4. On that release I get an error during a rename:
ERROR at line 1:
ORA-13199: Invalid Parameters for Partition_Table
ORA-13199: Invalid Parameters for Partition_Table
ORA-13249: Stmt-Execute Failure: RENAME "MDPCI_a_26062$$$" TO "M3_A_26062$$"
ORA-29400: data cartridge error
ORA-04043: object MDPCI_a_26062$$$ does not exist
ORA-06512: at "MDSYS.PRVT_PC", line 3
ORA-06512: at "MDSYS.PRVT_PC", line 157
ORA-06512: at "MDSYS.SDO_PC_PKG", line 74
ORA-06512: at line 17 -
Error ORA-02289: sequence does not exist
While I was practicing chapter 6 a book on "hands-on oracle database 10 g express edition for windows" by Mr. Bobrowski forwarded by tom kyte, I like to be one those as well, lol, the living legend of oracle technology <page 225-226> , I got the following error while trying to insert the data manually
error ORA-02289: sequence does not exist
I also checked the sequence, it does exist ,
host-ids, db-ids, ap-ids all do exists
I am wondering my OS windows xp and however, I have entered AIX in host OS field and 5.2.0.0 in the hostos_version field and cpu=4
I kind do not understand this too since my pc running windows xp
any help would be appreciated since i couldn't go forward in my practice.
I e-mailed the author of the book (oracle Press) but no-reply so far, well I can understand that there is no money.Basically, I copied everything from the cd-rom provided in the book of this author steve, oracle press. I logged on using my account <system> and password. The user is here only one which is <system>.
Everything was working well, until then as per the direction in the chapters upto 1- to mid 6, this is the first time I am stuck in following this book's simple excercises. It also asks me to look at the object if the sequence host_ids does exists in the drop down combo, as a matter of fact it does exist.
I am still wondering my question "my OS windows xp and however, I have entered AIX in host _OS field and 5.2.0.0 in the host_os_version field and cpu=4
I kind do not understand this too since my pc running windows xp " -
Java.sql.SQLException: ORA-08103: object no longer exists
hi, Everyone:
i want to insert one colume to a temp table,
so i did the following
1: drop the table
2: recreate the table with the new colume in it.
we i run my application, there is a
"java sql exception ORA-08103: object no
longer exists ". looks like the table
doesn't exist in database any more. but
it is really still there.
thanks
hongjie
nullI was able to resolve this error by using on commit preserve rows, instead of on commit delete.
-
ORA-02289 (10: 10): PL/SQL: ORA-02289: sequence does not exist
Hi,
I want to run a trigger on SCOTT account.But wheni try to run it.I am getting ' ORA-02289 (10: 10): PL/SQL: ORA-02289: sequence does not exist'.PLease help outSequence FUNCTION_SEQ does not exist...
Pease run
Select * from user_objects
where object_type='SEQUENCE'
and object_name='FUNCTION_SEQ'In order to see that this object doesnt exist on your schema...
Maybe you are trying to use sequence in different schema... Check it out too
Select * from all_objects
where object_type='SEQUENCE'
and object_name='FUNCTION_SEQ'And if you has access to DBA_ views check this too...
Select * from dba_objects
where object_type='SEQUENCE'
and object_name='FUNCTION_SEQ'If you need such sequence please give us an example of values you need and will provide a sequence creation script for you.. -
ORA-02289: sequence does not exist Error
When add Entity Attribute Value : adf.object.nextVal('DenialCommentId')
Value Type: Expression
Iam getting ORA-02289: sequence does not exist Error in 11g 1.1.3.0 version .How to Solve it .Any solutions please suggest me .Thanx in advance
Ravitry using adf.object.nextValue('DenialCommentId') to find out whether the compiler is looking for a sequence named object in schema adf or not.
Regards
Etbin -
Dears,
I created simple custom workflow (Start -> Notification -> End).
I got the following error when I run the workflow.
[WF_ERROR] ERROR_MESSAGE=ORA-02289: sequence does not exist ERROR_STACK= FND_SEARCH_EVENTS.On_Object_Change(oracle.apps.wf.notification.send, 5C84790B967158FFE04400144F23BF3C)
The notification activity returned this error but the notification has been sent to performer.
I searched for solution to fix this problem and I found one result for the same problem without any solution.
http://www.itpub.net/thread-1558559-1-1.html
Thank youIt looks as if DB sequence FND_SEARCH_EVENTS_SEQ does not exist. Please try to reload it as follows:
java oracle.apps.fnd.odf2.FndXdfCmp applsys <pwd> apps <pwd> thin "<db server>:<db port>:<SID>" all $FND_TOP/patch/115/xdf/fnd_search_events_seq.xdf $FND_TOP/patch/115/xdf/xsl
Regards,
Alejandro -
Issue with Materialized View ORA-08103: object no longer exists
I have a materialized view which gets refreshed(COMPLETE Refresh) every 2 minutes. However there are few scheduled programs which queries this materialized view, some of the queries in the scheduled program take longer to run. When the materialized view refresh time overlaps with this query executing from the program i get this error: ORA-08103: object no longer exists.
I know that COMPLETE refresh doing TRUNCATE + INSERT is causing the issue, could someone suggest a workaround for this. But i need to do a COMPLETE refresh.Why would a TRUNCATE cause an "object no longer exists" ?
Which job encounters this error ? The MV Refresh job or the programs that are querying the MV ? How does it resolve ? Automatically -- meaning that the next refresh/query does not raise the error ? -
I know the reason is that PL/SQL is pre-compilation, so now dbVersion < '9.3.350', even if I don't need get REFDESIG_ID_SEQ.nextval ,
it will also cause this compilation error. So my question is how should I code that?
When dbVersion < '9.3.350' , no sequence REFDESIG_ID_SEQ, just print '1####';
else get REFDESIG_ID_SEQ.nextval , then print '2####'
But now even if dbVersion < '9.3.350', it will cause compilation error[ORA-02289: sequence does not exist] .
How to resolve this? Thanks a lot.
declare
maxid number;
nextid number;
agileid number;
v_date date;
dbVersion varchar(8):=0;
begin
select substr(value,1,7) into dbVersion from propertytable where parentid = 5001 and propertyid=37;
DBMS_OUTPUT.PUT_LINE(dbVersion);
if (dbVersion < '9.3.350') then
DBMS_OUTPUT.PUT_LINE('1####');
else
DBMS_OUTPUT.PUT_LINE('2####');
select REFDESIG_ID_SEQ.nextval into agileid from dual;
end if;
end;In my DB, If dbVersion < '9.3.350' , no sequence REFDESIG_ID_SEQ
When dbVersion >= '9.3.350' ,sequence REFDESIG_ID_SEQ will exist,
Now my dbVersion < '9.3.350' , and this pl/sql also cause this error.
SO how should I to resolve it ?
Now I need a test case, if dbVersion < '9.3.350' , then print '1####';
else , get REFDESIG_ID_SEQ.nextval firstly , then print '2####'
How should I code?Thanks a lot. -
ORA-02289: sequence does not exist
Hi all. ORACLE Newbie alert!
I am using TOAD for Oracle 8.6
The Oracle database version is
BANNER
Oracle9i Enterprise Edition Release 9.2.0.6.0 - 64bit Production
PL/SQL Release 9.2.0.6.0 - Production
CORE 9.2.0.6.0 Production
TNS for Solaris: Version 9.2.0.6.0 - Production
NLSRTL Version 9.2.0.6.0 - Production
I have been tasked with monitoring a table from another schema, using a different account.
The first thing I did was create this table in my SOMERSET schema
CREATE TABLE MONITOR_PERSONS
IDENTIFIER INTEGER,
OLD_FAMILY_NAME VARCHAR2(40 BYTE),
OLD_FIRST_NAMES VARCHAR2(40 BYTE),
NEW_FAMILY_NAME VARCHAR2(40 BYTE),
NEW_FIRST_NAMES VARCHAR2(40 BYTE),
UPDATE_DATE DATE,
UPDATE_STATUS CHAR(1 CHAR),
PERSONS_IDENTIFIER INTEGER
then a SEQUENCE to be used by the above table
CREATE SEQUENCE SOMERSET.MONITOR_PERSONS_SEQ
START WITH 1
MAXVALUE 999999999999999999999999999
MINVALUE 1
NOCYCLE
NOCACHE
NOORDER;
then a trigger to watch the other schema's table and insert a record in my MONITOR_PERSONS table
CREATE OR REPLACE TRIGGER PERSONS_AFTER_UPDATE
AFTER UPDATE
OF FAMILY_NAME
,FIRST_NAMES
ON SWIFT_OWNER.PERSONS
REFERENCING NEW AS NEW OLD AS OLD
FOR EACH ROW
BEGIN
INSERT INTO SOMERSET.MONITOR_PERSONS
IDENTIFIER,
OLD_FAMILY_NAME,
OLD_FIRST_NAMES,
NEW_FAMILY_NAME,
NEW_FIRST_NAMES,
UPDATE_DATE,
UPDATE_STATUS,
PERSONS_IDENTIFIER)
VALUES
SOMERSET.MONITOR_PERSONS_SEQ.nextval,
:OLD.FAMILY_NAME,
:OLD.FIRST_NAMES,
:NEW.FAMILY_NAME,
:NEW.FIRST_NAMES,
sysdate,
'U',
:OLD.IDENTIFIER);
END PERSONS_AFTER_UPDATE;
Which compiles with this error
18/11 PLS-00302: component 'MONITOR_PERSONS_SEQ' must be declared
I have been around the net a number of times, and I just can't figure out why a sequence that exists in the same schema as the trigger is causing this issue.
Can someone help please?Don't know why that would be. But here is the test result:
SQL> create table mytable_without_trigger
2 ( id number
3 , name varchar2(30)
4 )
5 /
Tabel is aangemaakt.
SQL> create table mytable_with_trigger
2 ( id number
3 , name varchar2(30)
4 )
5 /
Tabel is aangemaakt.
SQL> create sequence myseq start with 1 increment by 1 nocache
2 /
Reeks is aangemaakt.
SQL> create package my_package
2 as
3 function get_new_id return number;
4 end;
5 /
Package is aangemaakt.
SQL> create package body my_package
2 as
3 function get_new_id return number
4 is
5 l_new_id number;
6 begin
7 select myseq.nextval into l_new_id from dual;
8 return l_new_id;
9 end;
10 end;
11 /
Package-body is aangemaakt.
SQL> create or replace trigger my_trigger
2 before insert on mytable_with_trigger
3 for each row
4 begin
5 :new.id := my_package.get_new_id;
6 end;
7 /
Trigger is aangemaakt.
SQL> insert into mytable_without_trigger (id,name) select myseq.nextval, 'abc' from (select level from dual connect by level <= 100)
2 /
100 rijen zijn aangemaakt.
SQL> insert into mytable_with_trigger (name) select 'abc' from (select level from dual connect by level <= 100)
2 /
100 rijen zijn aangemaakt.
SQL> set timing on
SQL> insert into mytable_without_trigger (id,name) select myseq.nextval, 'abc' from (select level from dual connect by level <= 10000)
2 /
10000 rijen zijn aangemaakt.
Verstreken: 00:00:05.09
SQL> insert into mytable_with_trigger (name) select 'abc' from (select level from dual connect by level <= 10000)
2 /
10000 rijen zijn aangemaakt.
Verstreken: 00:00:08.09
SQL> set timing off
SQL> begin
2 runstats_pkg.rs_start;
3 insert into mytable_without_trigger (id,name) select myseq.nextval, 'abc' from (select level from dual connect by level <= 10000);
4 runstats_pkg.rs_middle;
5 insert into mytable_with_trigger (name) select 'abc' from (select level from dual connect by level <= 10000);
6 runstats_pkg.rs_stop(1000);
7 end;
8 /
Run1 draaide in 514 hsecs
Run2 draaide in 848 hsecs
Run1 draaide in 60,61% van de tijd
Naam Run1 Run2 Verschil
STAT.session cursor cache hits 10,002 8,157 -1,845
LATCH.enqueues 38 1,897 1,859
LATCH.session idle bit 62 1,979 1,917
LATCH.library cache pin allocation 20,354 24,253 3,899
STAT.redo entries 20,151 30,094 9,943
STAT.buffer is not pinned count 51 10,051 10,000
STAT.table scan blocks gotten 1 10,001 10,000
STAT.table scans (short tables) 1 10,001 10,000
STAT.table scan rows gotten 1 10,001 10,000
STAT.no work - consistent read gets 33 10,033 10,000
STAT.recursive calls 140,097 150,097 10,000
STAT.execute count 10,008 20,008 10,000
STAT.db block gets 30,514 40,630 10,116
LATCH.redo allocation 22,401 33,442 11,041
LATCH.shared pool 51,928 67,626 15,698
STAT.db block changes 40,263 60,235 19,972
STAT.consistent gets 20,100 50,084 29,984
STAT.calls to get snapshot scn: kcmgss 30,014 60,014 30,000
LATCH.library cache pin 97,379 128,794 31,415
STAT.session logical reads 50,614 90,714 40,100
LATCH.library cache 111,694 152,456 40,762
LATCH.cache buffers chains 199,536 341,151 141,615
LATCH.session allocation 2,168 286,896 284,728
STAT.redo size 7,397,124 9,772,492 2,375,368
Run1 latches totaal versus run2 -- verschil en percentage
Run1 Run2 Verschil Pct
702,934 1,239,549 536,615 56.71%
PL/SQL-procedure is geslaagd.Regards,
Rob. -
; ORA-02289: sequence does not exist + while sync
Hi..
I've installed the samples on the mobile server and on the palm-emulator and want to sync now.
I always get the following error at the server:
BMS: OWNER IS NOT A CLIENT
log1: log_S11U1
BMS: conn user =MOBILEADMIN, e[0]=S11U1
BMS
log1: log_S11U1
BMS: SELECT "S11U1
BMS"."TID$$".NEXTVAL FROM DUAL
Decrement client download 0
log1: log_S11U1
-!!!- BMS: Exception message is ORA-02289: Diese Sequenz gibt es nicht -!!!-
log1: log_S11U1
BMS: Starting Consolidator Servlet Context Run...
log1: log_S11U1
BMS: SENDING data...
log1: log_S11U1
What's wrong here? Please help me.
Thanks,
AlHi ,
I too got similar errors few months ago and i reset the user parameters of that user (webtogo->users->datasubsetting )and it automatically cleared with a complete refresh of the publication. -
Error -- ORA-08103: object no longer exists
Hi all,
i am getting this error during calling procedure from .Net code.
procedure is in the database.
any help appriciatedConnect directly to the DB where your procedure is located with the same user you use in .net to connect to DB
Create a temp table.
Instead of calling the procedure try selecting from the temp table.
If you can reach that temp table you should be able to see the procedure.
Make sure the procedure is compiled succesfully.It should be in valid state.
Cheers!!!
Bhushan -
Hi,
I am getting an ORA-04016 (ORA-04016: sequence <name> no longer exists).
These are the statements:
1. CREATE SEQUENCE <seq> START WITH 1 INCREMENT BY 1 CACHE 1000 NOCYCLE
2. INSERT INTO <table1> (<columns>) SELECT <seq>.NEXTVAL, <columns> FROM <table2>
3. DROP SEQUENCE <seq>
I often call these statements without error, but suddenly the error occures in line 2. and after that time the error always comes up. I have to reconnect to the db to get rid of it.
There is only 1 session on that DB and the caller is single threaded. So concurrency is not an issue.
My question is: What does the error mean and how can I avoid it? I found nothing on the web about this.
Thanks,
AlbrechtThanks for your time and thoughts.
To Raj: I'm inserting as many records as in table2 not just one. And I'm dropping the seq after using it because I have to recreate it when passing these lines of code next time.
To Jens: Do I have to be a paying member of something to view those bugs? (I am not - you guessed it). But regarding the title of the bug I think: no, I'm not dropping any users.
To all: Is there any programmer who hacked something like this into the oracle kernel: "IF USER=="albrecht" THEN THROW ORA-04016 SPORADICALLY"? I mean line 2 is a transaction and who if not the system can drop a sequence inside a transaction that uses it? I do not understand the real meaning of this error. What code do I have to provide to force the error running tha code first time?
TIA,
Albrecht
Maybe you are looking for
-
i have ipod 3rd generation..32 gb...ios 5.1.1.. when i want to install it say that unable to install it will install on ios 7.0 or later.. please help me what i do??
-
Relative Paths In DSN-less JDBC URL
Whenever I've seen DSN-less URL strings for M$ Access, they've always used an absolute path to the database file: String url="jdbc:odbc:DRIVER={Microsoft Access Driver (*.mdb)};DBQ=c:\\full\\path\\src\\data\\FirstLotParts.mdb";Has anyone tried to giv
-
Nakisa Org Chart Version 3.0 - Org Unit Position Statistics
Hi All, Just a quick question, I am currently at a client site where org unit position statistics is always coming back with 0 for occupied and vacation positions. There are clearly employees assigned to position in the org structure, but I am think
-
Delivery(LF)- Excise Invoice
Hi Gurus, I want to create Excise invoice from Delivery Doc. without creating commercial invoice/Proforma Excise invoice. is it possible? what exactly process is? Regards, Amol
-
Hi, I want to do integration between Oracle Universal Content Management and any other Third party for doucment management through BPEL. Our scenario is like that We load all the documents in UCM, Whenever the third party click on the browse button t