Oracle native sequencing: nextVal executed two times.
We are migrating from Weblogic 6.1 sp 5 & TopLink 3.6.3 to Weblogic 8.1 sp 2 & TopLink 9.0.4 and we are having this issue:
It seems that when assigning the sequence to new objets TopLink execs the nextVal for the sequence twice. In fact we probably wouldn't notticed it if it was just that, the problem is that TopLink seems to register the object into the cache with an oid and assigning the next one to the object stored in the database so we are getting NoSuchObjectException each time we try to access them.
Here is a dump of TopLink's log showing the problem:
[TopLink]: ServerSession(22807116)--Connection(0)--client acquired
[TopLink]: ClientSession(25858791)--Connection(0)--acquire unit of work: 10772417
[TopLink]: UnitOfWork(10772417)--Connection(0)--JTS register
[TopLink]: ServerSession(22807116)--Connection(17740413)--SELECT SEQ_BOOK.NEXTVAL FROM DUAL
[TopLink]: ServerSession(22807116)--Connection(17558511)--SELECT SEQ_PAGE.NEXTVAL FROM DUAL
[TopLink]: UnitOfWork(10772417)--Connection(0)--Before JTS Completion
[TopLink]: UnitOfWork(10772417)--Connection(25919386)--Begin batch statements
[TopLink]: UnitOfWork(10772417)--Connection(25919386)--INSERT INTO AUTHOR (NAME, OCA, OID) VALUES (?, ?, ?)
[TopLink]: UnitOfWork(10772417)--Connection(0)-- bind => [Roger Penrose, 2004-05-11 18:54:01.917, 442803]
[TopLink]: UnitOfWork(10772417)--Connection(25919386)--End Batch Statements
[TopLink]: ClientSession(25858791)--Connection(25919386)--Begin batch statements
[TopLink]: ClientSession(25858791)--Connection(25919386)--INSERT INTO BOOK (NAME, OCA, OID, OID_AUTHOR) VALUES (?, ?, ?, ?)
[TopLink]: ClientSession(25858791)--Connection(0)-- bind => [The Emperor's New Mind, 2004-05-11 18:54:01.92, 347404, 442803]
[TopLink]: ClientSession(25858791)--Connection(0)-- bind => [Shadows of the Mind, 2004-05-11 18:54:01.943, 347405, 442803]
[TopLink]: ClientSession(25858791)--Connection(25919386)--End Batch Statements
[TopLink]: UnitOfWork(10772417)--Connection(0)--After JTS Completion
[TopLink]: UnitOfWork(10772417)--Connection(0)--release unit of work
[TopLink]: ClientSession(25858791)--Connection(0)--client released
[TopLink]: ServerSession(22807116)--Connection(0)--client acquired
[TopLink]: ClientSession(116689)--Connection(0)--acquire unit of work: 32580168
[TopLink]: UnitOfWork(32580168)--Connection(0)--JTS register
[TopLink]: UnitOfWork(32580168)--Connection(0)--Before JTS Completion
[TopLink]: UnitOfWork(32580168)--Connection(17129104)--Begin batch statements
[TopLink]: UnitOfWork(32580168)--Connection(17129104)--INSERT INTO AUTHOR (NAME, OCA, OID) VALUES (?, ?, ?)
[TopLink]: UnitOfWork(32580168)--Connection(0)-- bind => [Benoit Mandelbrot, 2004-05-11 18:54:49.264, 442805]
[TopLink]: UnitOfWork(32580168)--Connection(17129104)--End Batch Statements
[TopLink]: ClientSession(116689)--Connection(17129104)--Begin batch statements
[TopLink]: ClientSession(116689)--Connection(17129104)--INSERT INTO BOOK (NAME, OCA, OID, OID_AUTHOR) VALUES (?, ?, ?, ?)
[TopLink]: ClientSession(116689)--Connection(0)-- bind => [Les objets fractals, forme, hasard et dimension, 2004-05-11 18:54:49.266, 347409, 442805]
[TopLink]: ClientSession(116689)--Connection(0)-- bind => [The Fractal Geometry of Nature, 2004-05-11 18:54:49.282, 347408, 442805]
[TopLink]: ClientSession(116689)--Connection(17129104)--End Batch Statements
[TopLink]: UnitOfWork(32580168)--Connection(0)--After JTS Completion
[TopLink]: UnitOfWork(32580168)--Connection(0)--release unit of work
[TopLink]: ClientSession(116689)--Connection(0)--client released
the test is about creating two objects (well, we are actually creating 6 objects in this sample as we are creating two "master" objects and adding two related (in a one to many relationship) objects to each one.)
The thing I would like you to notice is this:
The first AUTHOR object gets assigned the OID 442803 wether the next AUTHOR object gets the OID 442805 although we expected it to be 442804.
The same occurs with the objects in the "many" side of the relation. They get sibiling OIDs but with a gap of two OIDs when creating the last two.
I have been searching for simmilar problems in this forums and I found two posts:
Both where related to a bug of an older version of TopLink (9.0.3 I think) when using something different than a number for the sequence field of an object. I expect it to be fixed in 9.0.4 version as it seemed to be fixed even for the 9.0.3 version. May it be a regression bug?
Anyway, we are using BigDecimal on entity bean's sequence number and IIRC NUMBER(18) in Oracle tables.
Currently our TopLink version is: 9.0.4 (031126)
Our native sequence has an allocation size of 200 and it matches with SEQUENCEs defined in Oracle.
As we are migratting from TopLink 3.6.3 and we have not changed the sequence prealocation size (we have not touched the database at all) we don't expect the problem to be on sequence prealocation.
I must say we have changed the "default" JDBC driver that TopLink uses when doing the issuing the loging phase (which I think is a SUN driver) to an oracle.jdbc.driver.OracleDriver as we were having problems with timestamp locking.
Any idea?
Thanks in advance.
Ignacio.
Solved!
It was my fault. I was doing a really nasty thing to the entity beans.
I must publicly thank my work mate (which is a pretty smart girl, I must say) in tracking down this issue.
Here is what (we think) was happening:
As I told in previous post in this post we are in the process of moving from TopLink 3.6.3 (EJB 1.1) to TopLink 9.0.4 (EJB 2.0). We do have a "super class" in our application where we had some common things of our entity beans, i.e. entityContext, oid and oca attributes. We have also some methods that retrieve and set values from and to the entity beans via value objects (in order to avoid the heavy RMI operations when doing it through "standard" getters and setters) well, it happened that the current implementation of the "batch setting" method used the getDeclaringMethods to update in both UPDATE and INSERT opperations entity attributes with the data of the value object.
When switching to EJB 2.0 we had to push down both the oid and oca attributes (in order of being able do deploy them) to each final entity bean and now they where being included in the setting process!
You can imagine an scenario like this:
1. ejbCreate() // TopLink issues the SELECT SEQ_XXX NEXT VAL FROM DUAL and sets the oid of the EJB
2. setAttributes() // transfer info from the value object to the newly created EJB: including a setOid(null)!
3. commit() (Before Completion)
4. TopLink detects that the damm object surprisingly DOES NOT have the oid attribute setted so it performs another SELECT SEQ_XXX NEXT VAL FROM DUAL in order to "fix" this big problem.
5. commit() (After Completion) // the object is written to the database with the second value from the sequence whereas the first value is used to identify the entity bean into the identity cache.
Well it may not be "exactly" what is happening but I'm sure we are not so far from reality with our assumptions.
Andrei Ilitchev, thanks for your interest, sorry I could not post this sooner.
Similar Messages
-
Controller method executed two times
Hi,
i created one method called :FileLov
i called this method in PR like:
am.invokeMethod("FileLov");
in am i implemet the code :
public void FileLov() {}
method is working fine but it is executing two times.
when each time executes values are inserted into tables , so that table contains duplicate values.
can any one please help me why this method is invoked two time, how can i resolve this issue.once the page is loaded method is executed automatically two times.
i used if condition but still it is not effected.
please find the below
Target URL -- http://xxxxx.corp.xxxxx.com:8988/OA_HTML/runregion.jsp
13/04/23 14:33:01 Oracle Containers for J2EE 10g (10.1.3.3.0) initialized
13/04/23 14:33:03 TIME: runregion: initialization [15 ms]
13/04/23 14:33:05 TIME: runregion: session and transaction creation [1657 ms]
Apr 23, 2013 2:33:06 PM oracle.adf.share.config.ADFConfigFactory findOrCreateADFConfig
INFO: oracle.adf.share.config.ADFConfigFactory Reading META-INF/adf-config.xml
13/04/23 14:33:06 java.lang.IllegalArgumentException: Unknown signal: ALRM
13/04/23 14:33:06 at sun.misc.Signal.<init>(Signal.java:126)
13/04/23 14:33:06 at oracle.apps.fnd.framework.AppsDiagnosticsHandler.install(Unknown Source)
13/04/23 14:33:06 at oracle.apps.fnd.framework.server.OAApplicationModuleImpl.initializeSignalHandler(Unknown Source)
13/04/23 14:33:06 at oracle.apps.fnd.framework.server.OAApplicationModuleImpl.<clinit>(Unknown Source)
13/04/23 14:33:06 at java.lang.Class.forName0(Native Method)
13/04/23 14:33:06 at java.lang.Class.forName(Class.java:242)
13/04/23 14:33:06 at oracle.jbo.common.java2.JDK2ClassLoader.loadClassForName(JDK2ClassLoader.java:38)
13/04/23 14:33:06 at oracle.jbo.common.JBOClass.forName(JBOClass.java:164)
13/04/23 14:33:06 at oracle.jbo.common.JBOClass.findCustomClass(JBOClass.java:177)
13/04/23 14:33:06 at oracle.jbo.server.ApplicationModuleDefImpl.loadFromXML(ApplicationModuleDefImpl.java:836)
13/04/23 14:33:06 at oracle.jbo.server.ApplicationModuleDefImpl.loadFromXML(ApplicationModuleDefImpl.java:770)
13/04/23 14:33:06 at oracle.jbo.server.MetaObjectManager.loadFromXML(MetaObjectManager.java:534)
13/04/23 14:33:06 at oracle.jbo.mom.DefinitionManager.loadLazyDefinitionObject(DefinitionManager.java:547)
13/04/23 14:33:06 at oracle.jbo.mom.DefinitionManager.findDefinitionObject(DefinitionManager.java:425)
13/04/23 14:33:06 at oracle.jbo.mom.DefinitionManager.findDefinitionObject(DefinitionManager.java:358)
13/04/23 14:33:06 at oracle.jbo.mom.DefinitionManager.findDefinitionObject(DefinitionManager.java:340)
13/04/23 14:33:06 at oracle.jbo.server.MetaObjectManager.findMetaObject(MetaObjectManager.java:700)
13/04/23 14:33:06 at oracle.jbo.server.ApplicationModuleDefImpl.findDefObject(ApplicationModuleDefImpl.java:232)
13/04/23 14:33:06 at oracle.jbo.server.ApplicationModuleImpl.createRootApplicationModule(ApplicationModuleImpl.java:401)
13/04/23 14:33:06 at oracle.jbo.server.ApplicationModuleHomeImpl.create(ApplicationModuleHomeImpl.java:91)
13/04/23 14:33:06 at oracle.apps.fnd.framework.webui.OAJSPApplicationRegistry.createStaticAKApplicationModule(Unknown Source)
13/04/23 14:33:06 at oracle.apps.fnd.framework.webui.OAJSPApplicationRegistry.getStaticAKApplicationModuleSync(Unknown Source)
13/04/23 14:33:06 at oracle.apps.fnd.framework.webui.OAJSPApplicationRegistry.getStaticAKApplicationModule(Unknown Source)
13/04/23 14:33:06 at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(Unknown Source)
13/04/23 14:33:06 at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(Unknown Source)
13/04/23 14:33:06 at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(Unknown Source)
13/04/23 14:33:06 at OA.jspService(_OA.java:71)
13/04/23 14:33:06 at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
13/04/23 14:33:06 at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:462)
13/04/23 14:33:06 at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:594)
13/04/23 14:33:06 at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:518)
13/04/23 14:33:06 at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
13/04/23 14:33:06 at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:713)
13/04/23 14:33:06 at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
13/04/23 14:33:06 at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
13/04/23 14:33:06 at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
13/04/23 14:33:06 at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:221)
13/04/23 14:33:06 at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:122)
13/04/23 14:33:06 at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:111)
13/04/23 14:33:06 at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
13/04/23 14:33:06 at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
13/04/23 14:33:06 at java.lang.Thread.run(Thread.java:595)
13/04/23 14:33:06 **************************************************************************
13/04/23 14:33:06 *** WARNING: Oracle BC4J debug build executing - do not use for timing ***
13/04/23 14:33:06 **************************************************************************
13/04/23 14:33:10 filelength is 11
13/04/23 14:33:11 filelength is 11
here i wrote one printout statement in a method
it displays two times. -
GetNext() of Disassemble Stage is executing two time
why GetNext() of Disassemble Stage is executing two times ?I checked it in event log.
PrakashGetNext method returns all the messages created out of Disassemple method.
Returned message it passed to next pipeline stage or message box as configured. GetNext method is called repeatedly as long as it returns some IBaseMessage type. Repeated calls stop only when
GetNext returns null.
So, the second call is when the
GetNext returns null for you.
If this answers your question please mark it accordingly. If this post is helpful, please vote as helpful by clicking the upward arrow mark next to my reply. -
How one can use oracle native sequence in Insert/update in a Toplink POJO?
Thanks in advance...Just set the Oracle Sequence name as the descriptor's sequence name (ClassDescriptor.setSequenceName()), and configure your Session to use native sequencing.
If you are using JPA you need to use a @SequenceGenerator see,
http://en.wikibooks.org/wiki/Java_Persistence/Identity_and_Sequencing#Sequence_objects
James : http://www.eclipselink.org -
Can I to execute two times the MAIN window in the same page?
Hello, friends:
How I can to execute 2 times the MAIN window in the same page in SAPscript, this without modify the program link a SAPscript?
I create in the same page two MAIN windows, but I can to print only one MAIN window, the second window is not appears.
Thanks for advance,
DavidYou can't - only one MAIN window is allowed per page.
-
ListSelection Listener is executing two times
Hi,
I am using my own cell renderer for the JList and adding some buttons in the JList.I am adding ListSelectionListener to my JList.When i am selecting a item in the JList, the listselection event is fired two times.How should i rectify this.I've had the same problem, and I solved it by by asking my ListSelectionEvent's getValueIsAdjusting() method:
rowTypeSM.addListSelectionListener(new AbstractListSelectionListener(){
public void doValueChanged(ListSelectionEvent e){
if(!e.getValueIsAdjusting()){
// Stick your code here
Hope this helps. -
Please Help me with long time oracle select sequence.nextval from dual
Hi
I'm in a real problem.In fact i have a J2EE5(JPA,Hibernate 3,EJB 3.0) project deployed at websphere 6 application server and i'm using Oracle 10 g R2.
Well i have a batch job that inserts into some table called AVERAGEBALANCE.
the problem is that when i have activated hibernate log i discoverd that the select from dual is the longest sql (it takes some times over second !!)
here is the log
11/07/2011 08:49:40,406 DEBUG SQL:DefaultQuartzScheduler-SimpleThreadPoolWorker-2 - insert into AVERAGEBALANCE (CDATE_, CUSER_, AVERAGEBALANCE_, AVERAGECREDITORBALANCE_, AVERAGEDEBITORBALANCE_, BEGINDATE_, CALCULATIONDATE_, CASHSUBACCOUNTCODE_, CASHSUBACCOUNTPK_, CODE_, ENDDATE_, NBCREDITORDAYS_, NBDEBITORDAYS_, TEDABCALCULATIONPERIODICITYPK_, VERSIONNUM_, PK_) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
11/07/2011 08:49:40,468 DEBUG SQL:DefaultQuartzScheduler-SimpleThreadPoolWorker-2 - select this_.PK_ as PK1_465_0_, this_.CDATE_ as CDATE2_465_0_, this_.CUSER_ as CUSER3_465_0_, this_.UUSER_ as UUSER4_465_0_, this_.BALANCE_ as BALANCE5_465_0_, this_.BALANCETYPE_ as BALANCET6_465_0_, this_.CASHSUBACCOUNTPK_ as CASHSUBA8_465_0_, this_.CASHSUBACCOUNTCODE_ as CASHSUBA7_465_0_, this_.CODE_ as CODE9_465_0_, this_.CURRENCYPK_ as CURRENCYPK11_465_0_, this_.CURRENCYCODE_ as CURRENC10_465_0_, this_.ENDDATE_ as ENDDATE12_465_0_, this_.EXCHANGERATE_ as EXCHANG13_465_0_, this_.ORIGINBALANCEPK_ as ORIGINB15_465_0_, this_.ORIGINBALANCECODE_ as ORIGINB14_465_0_, this_.POSITIONDATE_ as POSITIO16_465_0_, this_.REVALUATIONDATE_ as REVALUA17_465_0_, this_.SUMOFCREDITS_ as SUMOFCR18_465_0_, this_.SUMOFDEBITS_ as SUMOFDE19_465_0_, this_.UDATE_ as UDATE20_465_0_, this_.VERSIONNUM_ as VERSIONNUM21_465_0_ from CASHAB this_ where this_.CASHSUBACCOUNTCODE_=? and this_.BALANCETYPE_=? and this_.POSITIONDATE_<? and this_.ENDDATE_>=? and this_.BALANCE_<>?
11/07/2011 08:49:40,468 DEBUG SQL:DefaultQuartzScheduler-SimpleThreadPoolWorker-2 - select AVERAGEBALANCE_.nextval from dual
11/07/2011 08:49:41,484 DEBUG SQL:DefaultQuartzScheduler-SimpleThreadPoolWorker-2 - insert into AVERAGEBALANCE (CDATE_, CUSER_, AVERAGEBALANCE_, AVERAGECREDITORBALANCE_, AVERAGEDEBITORBALANCE_, BEGINDATE_, CALCULATIONDATE_, CASHSUBACCOUNTCODE_, CASHSUBACCOUNTPK_, CODE_, ENDDATE_, NBCREDITORDAYS_, NBDEBITORDAYS_, TEDABCALCULATIONPERIODICITYPK_, VERSIONNUM_, PK_) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)well i have increased the sequence cache in fact here is the creation code of the sequence.
CREATE SEQUENCE "COMPTAPERF5"."AVERAGEBALANCE_" MINVALUE 1 MAXVALUE 999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 400 NOORDER NOCYCLE ;i think that there is some oracle parameter to tune
Thanks in advance
Edited by: B.Mansour Nizar on 11 juil. 2011 01:04
Edited by: B.Mansour Nizar on 11 juil. 2011 06:33
Edited by: B.Mansour Nizar on 11 juil. 2011 06:34
Edited by: B.Mansour Nizar on 11 juil. 2011 06:34
Edited by: B.Mansour Nizar on 11 juil. 2011 06:35
Edited by: B.Mansour Nizar on 11 juil. 2011 06:35
Edited by: B.Mansour Nizar on 11 juil. 2011 06:36
Edited by: B.Mansour Nizar on 15 juil. 2011 07:42I found it.
It's not due to oracle but it's a hibernate issue.In fact if setting FlushMode to Manual.It wil flush the in memory entities after that it will fire the insert statement.
Here's the log.
15/07/2011 15:32:47,984 DEBUG SQL:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - select CASHAB_.nextval from dual
15/07/2011 15:32:47,984 TRACE AbstractBatcher:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - preparing statement
15/07/2011 15:32:47,984 DEBUG SequenceGenerator:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - Sequence identifier generated: 20441
15/07/2011 15:32:47,984 DEBUG AbstractBatcher:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - about to close PreparedStatement (open PreparedStatements: 1, globally: 1)
15/07/2011 15:32:47,984 TRACE AbstractBatcher:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - closing statement
15/07/2011 15:32:47,984 DEBUG ConnectionManager:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - aggressively releasing JDBC connection
15/07/2011 15:32:47,984 DEBUG ConnectionManager:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - releasing JDBC connection [ (open PreparedStatements: 0, globally: 0) (open ResultSets: 0, globally: 0)]
15/07/2011 15:32:47,984 DEBUG AbstractSaveEventListener:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - generated identifier: 20441, using strategy: org.hibernate.id.SequenceHiLoGenerator
15/07/2011 15:32:47,984 TRACE AbstractSaveEventListener:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - saving [com.bfi.cpt.bal.cas.CashAccountingBalance#20441]
15/07/2011 15:32:47,984 TRACE Versioning:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - using initial version: 0
15/07/2011 15:32:47,984 TRACE AbstractFlushingEventListener:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - flushing session
15/07/2011 15:32:47,984 DEBUG AbstractFlushingEventListener:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - processing flush-time cascades
15/07/2011 15:32:47,984 TRACE Cascade:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - processing cascade ACTION_PERSIST_ON_FLUSH for: com.bfi.cpt.cht.cas.CashSubAccount
15/07/2011 15:32:47,984 TRACE Cascade:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - done processing cascade ACTION_PERSIST_ON_FLUSH for: com.bfi.cpt.cht.cas.CashSubAccount
15/07/2011 15:32:47,984 TRACE Cascade:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - processing cascade ACTION_PERSIST_ON_FLUSH for: com.bfi.ref.cur.Currency
15/07/2011 15:32:47,984 TRACE Cascade:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - done processing cascade ACTION_PERSIST_ON_FLUSH for: com.bfi.ref.cur.Currency
15/07/2011 15:32:47,984 TRACE Cascade:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - processing cascade ACTION_PERSIST_ON_FLUSH for: com.bfi.cpt.bal.cas.CashAccountingBalance
15/07/2011 15:32:47,984 TRACE Cascade:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - done processing cascade ACTION_PERSIST_ON_FLUSH for: com.bfi.cpt.bal.cas.CashAccountingBalance
15/07/2011 15:32:47,984 DEBUG AbstractFlushingEventListener:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - dirty checking collections
15/07/2011 15:32:47,984 TRACE AbstractFlushingEventListener:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - Flushing entities and processing referenced collections
15/07/2011 15:32:47,984 TRACE AbstractFlushingEventListener:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - Processing unreferenced collections
15/07/2011 15:32:47,984 TRACE AbstractFlushingEventListener:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - Scheduling collection removes/(re)creates/updates
15/07/2011 15:32:47,984 DEBUG AbstractFlushingEventListener:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - Flushed: 1 insertions, 0 updates, 0 deletions to 3 objects
15/07/2011 15:32:47,984 DEBUG AbstractFlushingEventListener:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - Flushed: 0 (re)creations, 0 updates, 0 removals to 0 collections
15/07/2011 15:32:47,984 DEBUG Printer:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - listing entities:
15/07/2011 15:32:47,984 DEBUG Printer:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - com.bfi.ref.cur.Currency{translatedName=null, certain=false, iso3166=788, quotity=1, identifier=TND, creationUser=admin, internalCode=null, name=Dinars Tunisien, creationDate=2011-07-11 14:43:06, code=TND, versionNum=0, decimal=3, updateUser=null, updateDate=null, pk=136, decimalName=millimes}
15/07/2011 15:32:47,984 DEBUG Printer:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - com.bfi.cpt.bal.cas.CashAccountingBalance{cashSubAccount=com.bfi.cpt.cht.cas.CashSubAccount#400201, originBalanceCode=null, exchangeRate=null, sumOfDebits=0.0, endDate=31 décembre 9999, creationUser=bna, currencyPk=136, creationDate=2011-07-15 15:32:47, cashSubAccountCode=BNA/PCI_BNA/82-TND, code=2010-07-30/BNA/PCI_BNA/82-TND/AccountingDateBalance/TND, versionNum=0, originBalancePk=null, currency=com.bfi.ref.cur.Currency#136, updateUser=null, originBalance=null, balanceType=AccountingDateBalance, updateDate=null, positionDate=30 juillet 2010, sumOfCredits=10.0, pk=20441, cashSubAccountPk=400201, revaluationDate=null, balance=-10.0, currencyCode=TND}
15/07/2011 15:32:47,984 DEBUG Printer:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - com.bfi.cpt.cht.cas.CashSubAccount{name2=null, accountPk=81, name=null, versionNum=0, currency=com.bfi.ref.cur.Currency#136, updateDate=null, chartByEntity=com.bfi.cpt.cht.std.ChartByEntity#2, refAccount=null, currencyCode=TND, chartByEntityCode=BNA/PCI_BNA, refAccountCode=null, creationDate=2011-07-15 15:25:45, account=com.bfi.cpt.cht.cas.StandardAccount#81, freeKey10=null, freeKey11=null, chartByEntityPk=2, freeKey12=null, updateUser=null, refAccountPk=null, freeKey13=null, freeKey14=null, freeKey15=null, freeKey16=null, freeKey17=null, accountCode=PCI_BNA/81, freeKey18=null, freeKey19=null, freeKey0=null, freeKey1=null, freeKey2=null, freeKey3=null, freeKey4=null, freeKey5=null, freeKey6=null, freeKey7=null, freeKey8=null, freeKey9=null, number=82-TND, creationUser=bna, freeKey20=null, freeKey21=null, freeKey22=null, freeKey23=null, freeKey24=null, freeKey25=null, freeKey26=null, freeKey27=null, freeKey28=null, freeKey29=null, currencyPk=136, code=BNA/PCI_BNA/82-TND, freeKey30=null, freeKey31=null, freeKey32=null, pk=400201}
15/07/2011 15:32:47,984 TRACE AbstractFlushingEventListener:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - executing flush
15/07/2011 15:32:47,984 TRACE ConnectionManager:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - registering flush begin
15/07/2011 15:32:47,984 DEBUG UpdateTimestampsCache:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - Pre-invalidating space [CASHAB]
15/07/2011 15:32:47,984 TRACE AbstractEntityPersister:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - Inserting entity: [com.bfi.cpt.bal.cas.CashAccountingBalance#20441]
15/07/2011 15:32:47,984 TRACE AbstractEntityPersister:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - Version: 0
15/07/2011 15:32:47,984 DEBUG AbstractBatcher:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - about to open PreparedStatement (open PreparedStatements: 0, globally: 0)
15/07/2011 15:32:47,984 DEBUG ConnectionManager:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - opening JDBC connection
15/07/2011 15:32:47,984 DEBUG SQL:DefaultQuartzScheduler-SimpleThreadPoolWorker-4 - insert into CASHAB (CDATE_, CUSER_, BALANCE_, BALANCETYPE_, CASHSUBACCOUNTCODE_, CASHSUBACCOUNTPK_, CODE_, CURRENCYCODE_, CURRENCYPK_, ENDDATE_, POSITIONDATE_, SUMOFCREDITS_, SUMOFDEBITS_, VERSIONNUM_, PK_) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)Edited by: B.Mansour Nizar on 15 juil. 2011 07:38
Edited by: B.Mansour Nizar on 15 juil. 2011 07:39
Edited by: B.Mansour Nizar on 15 juil. 2011 07:43 -
Problem with Oracle Native Sequencing - please help!!
Hello
I am migrating from 3.6.5 to 10.1.3.1 (huge jump).
And have a problem with sequencing.
When I create new object Toplink does not pick up Sequence object name from the descriptor.
When I see generated SQL it shows:
SELECT .NEXTVAL FROM DUAL
Each of my descriptor has it's own "..._seq" name defined in workbench.
For DatabaseLogin i define
login.useNativeSequencing();
login.getDefaultSequence().setPreallocationSize(50);
As a result - no luck.
Do I miss something, some command?
Thanks
PaulI was doing more testing and found that the problem happens when I do
UnitOfWork().assignSequenceNumbers()
Thanks -
Why has the sql statement been extucted two times in shell script?
I tried to test rac load balance using the following shell script on suse 10 + oracle 10g rac.
oracle@SZDB:~> more load_balance.sh
#!/bin/bash
for i in {1..20}
do
echo $i
sqlplus -S system/oracle@ORA10G <<EOF
select instance_name from v\$instance;
EOF
sleep 1
done
exit 0After execute shell script, I got the follow result.
oracle@SZDB:~> ./load_balance.sh
1
INSTANCE_NAME
ora10g2
INSTANCE_NAME
ora10g2
2
INSTANCE_NAME
ora10g1
INSTANCE_NAME
ora10g1
3
INSTANCE_NAME
ora10g1
INSTANCE_NAME
ora10g1Seem the sql statement has been executed two times in each loop. If you feel free please help to have a look. Thanks in advance.
RobinsonYou can end a SQL command in one of three ways:
* with a semicolon (;)
* with a slash (/) on a line by itself
* with a blank line
A semicolon (;) tells SQL*Plus that you want to run the current command that was entered. SQL*Plus processes the command and also stores the command in the SQL buffer.
A blank line in a SQL statement or script tells SQL*Plus that you have finished entering the command, but do not want to run it yet, but it's stored the command on SQL Buffer.
A slash (/) on a line by itself tells SQL*Plus that you wish to run the command stored on SQL buffer. -
Et_ITEM_PRESSED event firing two times
Hi ,
I have a added a button to one of the windows and use the
et_ITEM_PRESSED in the ItemEvent to do something. My problem is whenever I click the button the event fires two times. I thought it was my code but the sample code in the CatchingEvents project does the same.
Does anyone know any wayaround it?
appologise if this question has been asked before (I assumed so but could not find any matches for my search)
Regards,
IndikaAlmost all the item event in SBO executes two times before and after SBO events handler works. If you dont catch one of the events SBO will execute two events in one time. To avoide that you should cacth the events before "OR" after the SBO Events Handler Works.
For Example:
<i><b>Before Action:</b></i>
If pVal.ItemUID = "1" And pVal.EventType = et_ITEM_PRESSED Then
If Len(oEditText.String) <> 0 Then
If IsNumeric(oEditText.String) Then
If Len(oEditText.String) <> 15 Then
If pVal.Before_Action = True Then
BubbleEvent = False
SBOApplication.SetStatusBarMessage "Federal ID Must be 15 Character", bmt_Short
oTmpForm.Items("41").Click ....
<i><b>Action Success:</b></i>If pVal.Action_Success = True Then
Set oItem = oTmpForm.Items("8")
Set oEditText = oItem.Specific
sDocNum = CLng(oEditText.String)
Set oItem = oTmpForm.Items("29")
Set oEditText = oItem.Specific
sJumlah = oEditText.String
If sJumlah = "" Then
BubbleEvent = False
That's all. Hopefully helps.
Cheers,
Hamdi -
Apply the same LCR two times on different tables
Hi all
Just one question:
Can I apply the same LCR two times on different tables using only one apply queue?
For example executing two times LCR.EXECUTE(TRUE) in a procedure handler:
LCR.EXECUTE(TRUE);
LCR.EXECUTE(TRUE);
....Topas,
You need to create new LCR and execute both LCRs.
Regards,
Serge -
Sequence.nextval doubles the returned value with Execute Statement (F9)
There appears to be a quirk with sequences in Raptor.
Has anyone noticed that depending on how you execute this sql (SELECT MYSEQ.NEXTVAL FROM DUAL;) the value returned is either the correct nextval or double what you expected?
For example, MYSEQ is a simple sequence which increments by 1. If you Execute Statement (F9) then the value returned jumps by 2 instead of 1. If you Run Script (F5) then the value returns jumps by 1, as expected.
If MYSEQ is changed to increment by 2. The when you Execute Statement (F9) then the value returned jumps by 4 instead of 2. If you Run Script (F5) then the value returns jumps by 2, as expected. No matter what you put for the increment by Execute Statement (F9) always doubles it.
It always seems to be double. Executing the same scenario in TOAD always returns the correct value (i.e. properly increments).
Is the query being executed multiple times with Execute Statement? Why is this happening?While there is no guarantee from Oracle that sequences produce sequential numbers, this is obviously a case where SQL Developer is running the select statement twice.
The issue is that queries can actually change information, rather than just retrieve data from the database.
The following package is a test case:
create or replace package test_query is
function get_next_count return number;
end;
create or replace package body test_query is
cnt number := 0;
function get_next_count return number is
begin
cnt := cnt + 1;
return cnt;
end;
end;
select test_query.get_next_count from dual;
This query, which should return 1, 2, 3, 4, etc actually returns 2, 4, 6, 8, etc, because SQL Developer is running the select twice. -
Only firefox executing mysql query two times. but other browser works perfect why?
i am a web developer. and i am facing a problem only with firefox. every time i use MySQL query in my php code fire fox execute it two times. but same query is working fine on other browsers.
Yes, the problem is seen without extensions and also in safe mode.
But, I am starting to think that firefox is running low on memeory or CPU.
Without extensions the possibility of failing is 1 in 3.
I am still unable to explain why closing the browser or aborting the request can cause the stuck request to immediately reach the server.
Is there a way to collect Firefox logs and post it here ? -
Oracle Database Procedure Execute Date/Time
Hi,
Is possible to track the Oracle Database Procedure Execute Date/Time?Is possible to track the Oracle Database Procedure Execute Date/Time?Yes, by using
CONNECT sys/password AS SYSDBA
AUDIT EXECUTE PROCEDURE BY fireid BY ACCESS; -
Hello! Using JRC. While creating the report for viewing, I noticed one interesting thing. Why JRC executes query two times AND first time is executed with default parameters AND if default parameters are NULL the query can be invalid (even if it is marked to convert all database NULLs to defaults in Report Options).
<!break>
1. Why do you need to execute query the first time with these default parameters, which are later set to the others? We need to make some valid default parameters to make everything work. Also it is not efficient to execute unnecessary query.
2. If I'm wrong could you explain please? If I'm right, is it a bug and when do you fix it?
Waiting for answer,
Anton Stalnuhhin
Java-developer, Webmedia AS.
Maybe you are looking for
-
Multiple MIDI takes on the same track - can only find one in the editor?
After making several passes on an instrument track w/drum sampler on it I opened the piano roll editor to edit the data only to find only one of the passes represented there. I could only find the other passes when I moved the current one out of the
-
How to publish my ebook into the ibook store directly is there a link?
How to publish my ebook into the ibook store directly, is there a link?
-
How to view TDMS control table?
After the domain level assignment is done for a rule, I want to verify the table assignment details in the TDMS control tables. Could you tell me which transaction to do above verification? Thanks!
-
Installed CS3 with windows vista bit AE won't open.
When my old faithful computer motherboard fried, I had to get a new computer with Windows Vista Home Premium. I had CS3 loaded and working without a glich on my old XP computer. I've loaded the whole CS3 suite, but when I open After Effects nothing h
-
How to search for speech inside premiere once I have analyzed speech without adobe story
Is there a way to find text speech inside the metadata speech analysis window? Thank you.