Differences between JDBC vs. EE PMFs?

This is kind of a follow-up from my previous post on the LocalCache
problems I was having. It was suggested I should move from a EE PMF to
the JDBC pmf, since I was using JDO straight from Struts and manually
starting and closing transactions.
I was just wondering what are the main differences between the JDBC and
EE PMFs that could affect their behaviour?
I have noticed that when I have switched to using a
JDBCPersistenceManagerFactory, peformance degraded somewhat in my load
testing and I have been getting a large amount of dead locking
exceptions from SQL server (where previously these would never occur)?
I am using the LocalCache, and Kodo 2.3.4 in JBoss.
Kam

I was just wondering what are the main differences between the JDBC and
EE PMFs that could affect their behaviour?The only difference is that the EE PMF produces PersistenceManagers that
synchronize with the appserver's TransactionManager, whereas the JDBC PMF
just uses local JDBC transactions.

Similar Messages

  • Differences between jdbc connection and datasource connection

    Hi all
    What are the differences between javax.sql.datasource and java.sql.connection.
    Is the datasource needed on in distributed databases or ??
    In a distributed EJB enviornment, what happens if a component has a transctionattribute setting as SUPPORTS and tries to commit data - will the ejb container start a transaction though the setting is SUPPORTS.
    Thanks in advance.

    Hi all
    What are the differences between javax.sql.datasource
    and java.sql.connection.
    Both are database connections. A connection is a handle to database. When you are directly creating a connection by calling Drivermanager.getConnection(..) , you are creating a connection by yourself and when closing close() on it, the link to database is lost. On the other hand when you get a connection from a datasource, when you call the close() on it, it will not close the link to database, but will return to a connection pool where it can be reused by some other classes. It is always better to use a connection pool because creating connections are expensive
    Is the datasource needed on in distributed databases
    or ??
    >
    You can create datasource to any databse local or remote.
    In a distributed EJB enviornment, what happens if a
    component has a transctionattribute setting as
    SUPPORTS and tries to commit data - will the ejb
    container start a transaction though the setting is
    SUPPORTS.
    hmmm..i am not sure. I think the container sets the commit and rollback points for it . so container will override database settings.

  • Session Timezone differences between JDBC OCI and Thin drivers

    Hi,
    I was having a problem with a default on a DATE column of CURRENT_DATE with my Websphere/Oracle web application, when I discovered that the Thin JDBC driver behaves differently from the OCI JDBC driver in regards to the session timezone.
    The Thin driver defaults the sesssion timezone to GMT (+0.00), but the OCI driver defaults to whatever the local OS timezone is (in my case GMT+12.00).
    Can anyone tell me how why this difference is there how to correct the behaviour of the Thin driver?
    I'm using the standard JDBC Connection class, not the OracleConnection object, and therefore cannot use the setSessionTimeZone method.
    The only solution I can currently think of is to move the application over to the OCI driver, however, I'm wondering what else is different (ie we'll have to regression test the whole web app again!).
    Any ideas?
    Cheers,
    Dunc

    Well, regarding the time zone thing, it appears the following code will solve a lot of headaches...
    ((OracleConnection)conn).setSessionTimeZone
    (TimeZone.getDefault().getID());
    Still unknown why the OCI driver appears to do this automatically, while the thin driver does not.
    If anyone knows the status of the memory leaks in the Linux OCI, please let me know.
    Thanks,
    m@

  • Difference Between JDBC and SQLJ

    Can any one explain the difference in using JDBC and SQLJ with example codes_...

    Oracle documentation can
    http://download.oracle.com/docs/cd/B19306_01/java.102/b16018/overview.htm#i1006033

  • Difference betweeen JDBC and JRE

    Hi,
    What is basic difference between JDBC and JRE?
    JDBC used to connect jdbc connections (Application users ) to Database  .
    We use JRE to access forms only... is that correct ?
    Please clarify
    -Thanks

    HI Hussein,
    Thanks for the reply.
    Can you please provide more information or Docs , how Autoconfig uses JDBC ?
    HusseinSawwan wrote:
    Vijay.Cherukuri wrote:
    Hi,
    What is basic difference between JDBC and JRE?
    JDBC used to connect jdbc connections (Application users ) to Database  .
    We use JRE to access forms only... is that correct ?
    Please clarify
    -Thanks
    Correct. JDBC is used by AutoConfig as well.
    Thanks,
    Hussein

  • Difference between Oracle9i 9.2.0.3 and Oracle9i 9.2.0.4 JDBC Drivers

    Hi everybody,
    Can you tell me what is Difference between Oracle9i 9.2.0.3 and Oracle9i 9.2.0.4 JDBC Drivers briefly?
    In my application I am using Oracle9i 9.2.0.3 JDBC Drivers. But it is not supported when I retrieved Data with junk character from CLOB.because of IO Exception it showing Bigger type length than Maximum
    if i used Oracle9i 9.2.0.4 JDBC Drivers it is working properly.
    I am using WAS 4.0.3 , JDK1.3 and Oracle 9.0.
    Shall I use Oracle9i 9.2.0.4 in my application and I want to know it will create any new problem in my application or not ?
    please Reply me ASAP.
    i am waiting for your reply
    thanks a lot
    bye
    Message was edited by:
    paulusazapakcom

    Can you tell me what is Difference between Oracle9i
    9.2.0.3 and Oracle9i 9.2.0.4 JDBC Drivers briefly?Search the Oracle site. That should tell if there are any differences at all. I would assume that there would be some bug fixes.
    please Reply me ASAP.
    i am waiting for your replySuch lines are better avoided.

  • Execution time difference between SELECT & UPDATE statement in JDBC Sender.

    Hi Experts,
    In my scenario, I have used the JDBC Sender Adapter with the SELECT and UPDATE statement.
    Now the problem is in between the execution of Select and update statement, few more entries are coming in the same DB Table.
    So result of this is updation take place for those entries which are not even picked up by the select statement.
    Can we avoid this execution time difference between the SELECT & UPDATE statemet on JDBC Sender side???
    Thanks & Regards
    Jagesh

    Hi
    Use serializable option in additional parameters, now all new entries would also be updated.

  • In jdbc adapter what is the difference between insert and update insert

    in jdbc adapter what is the difference between insert and update insert
    Edited by: katru vijay on Mar 22, 2010 7:43 AM

    Please refer to this Link [Document Formats for the Receiver JDBC Adapter|http://help.sap.com/saphelp_nw04/Helpdata/EN/22/b4d13b633f7748b4d34f3191529946/frameset.htm]
    Hope this helps.
    Regards,
    Chandravadan

  • Difference between oracle and BEA JDBC Drivers

    One of our application plan to move from BEA JDBC drives to Oracle drivers.
    We use Weblogic 9.2 as application server and Oracle 10g as the database.
    Questions
    =======
    1. What is the basic difference between these drivers and how do we decide which one to use.
    2. What can be the impact of moving to Oracle drives from BEA on the overall application...?
    3. Other than change in the jdbc.datasource.url = jdbc:oracle:thin:@, do we need to take anything else into consideration.
    Pls. let me know in case any further details are required.
    Thanks in advance.

    "1. What is the basic difference between these drivers and how do we decide which one to use."
    They are totally different products made independently by different companies.
    "2. What can be the impact of moving to Oracle drives from BEA on the overall application...?"
    As long as your application uses standard JDBC APIs, the impacts will be minimized, and
    unpredictable, some running faster, some slower... Any bug list for one driver will be
    different than for the other. If you use any driver-specific extension APIs, they won't
    be in the other driver.
    "3. Other than change in the jdbc.datasource.url = jdbc:oracle:thin:@, do we need to take anything else into consideration."
    Also changing the diver/datasource class name, and reviewing any arguments/driver properties.
    Property names and functions are usually driver-specific.
    Joe

  • Difference between DataSource & JDBC Data Source Factory

    Hi,
    Can anyone tell me what the difference between a 'DataSource' and 'JDBC Data Source
    Factory' is ? I see both these on the Weblogic admin console. I have reviewed
    the documentation but it is not clear to me what the difference between the two
    is and what situations each on is appropriate for.
    Thanks,
    Raju

    Hi Sree,
    I have read literally ALL the online documents related to JDBC Data Source Factories
    including the one you provided below, but I still do not understand what they
    are for. I have also searched in Google but to no avail.
    I will try to be more specific as to where my confusion lies.
    1)Why would anyone ever choose a JDBCData Source Factory instead of a Tx Data
    Source or plain vanilla (not XA) Data Source? EJBs connect just fine with the
    latter 2.
    2)What should go inside the properties box?
    a) http://e-docs.bea.com/wls/docs70/ejb/EJB_environment.html#resourcefact states
    that connection properties should go in here
    b)Then, the document goes on to describe a syntax for binding a Connection Pool
    to a JNDI name, all in the properties box. I have never been able to successfully
    create a data resource factory with a JNDI name. I get no errors, but it appears
    no where in the JNDI tree
    c)If this mysterious syntax associates a resource factory with an existing Connection
    Pool, then why go through all the fuss of redefining the Driver Class Name, URL,
    etc., when those are already defined on the Connection Pool?
    When you setup either a Data Source or a TX Data Source, WebLogic does not require
    that information since it was all setup in the pool. Why is it needed here?
    Thanks in advance for you help.
    "Sree Bodapati" <[email protected]> wrote:
    Hi Raju,
    Please see,
    http://e-docs.bea.com/wls/docs70/ConsoleHelp/domain_jdbcdatasourcefactorytable.html
    sree

  • Difference between maximum concurrency and batch mode in JDBC

    Hi All,
             Could som one tell me the difference between maximum concurrency and batch mode in receiver JDBC adapter?
    Regards,
    XIer

    Hi,
    The Max Concurrancy and Batch mode are used for performance tunning for JDBC adapter.
    Max Concurrancy is possible upto 5 only. so even if you will be taking up 10 it will by-default take 5.
    The number of records being processed depend on the size of each record. for e.g Per minit XI Is Processing 50 Records,It will Take lot of time to process all Records.
    So if you set Max concurrancy as 5 then at time 5 messages will be processed simultaneously.
    In Batch mode it will, collect the multiple SQL statements that will be created for records to be processed and processed at a time. It will  improve performance considerably.
    But Batch Mode is possible with only INSERT, UPDATE, DELETE etc.
    The Stored procedures can be executed with max concurrency
    Thus it completely depends that on the no of records to be processed at a time and volume of Mesasges.
    Thanks
    Swarup

  • Difference between using app server connection pooling and using the driver

    Hi all,
    How to get connection pooling with out application server and tomcat also?
    What is the difference between using app server connection pooling and using the driver supported connection pooling?
    Regards,
    Murali

    maybe the performance of App server pool is better than the JDBC pool,
    for you don't know wether the implementation of the JDBC interface is good or bad.

  • Difference between connection pooling and simple connection

    Anybody please tell me what is the Difference between connection pooling and simple connection and also where we define connection pooling and how.
    Thanks
    Please reply soon
    amitindia

    Creating and closing connection to the database is a relatively slow process. Equally connections use database resources so you can't just open as many as you want.
    A connection pool maintains a number of open connections throughout the lifetime of the application. Instead of opening and closing the connections your application just "borrows" them from the pool when they're needed.
    If the pool runs out of connections it will usually create new ones as needed until you reach some predefined upper limit.
    A good connection pool will also manage connections which have failed for any reason, and report code which fails to return connections to the pool (ie connection leaks).
    The number of connections created at startup is referred to as the "low water mark" and the maximum number that the pool will allow to be opened at any given time is the "high water mark". If no connections are available client code will generally block until one is released.
    If by "defined" you mean where can you get a working implementation then your database or application server vendor is likely to provide one. Also the Apache Jakarta Commons includes [url http://jakarta.apache.org/commons/dbcp/]an implementation which you can use with any JDBC driver.
    Dave.

  • Difference between connection = null and connection.close()

    is it correct
    connection = null means connection object is eligible for garbage collection and does not return to connection pool
    and f or
    connection.close() means the connection object return to the
    connection pool
    is there any other difference between this ....?????

    "connection = null;" is just like any other similar Java statement, it removes that reference to the object. If that was the last reference to the object, then it becomes eligible for finalization and garbage collection, with no guarantee that either will actually occur. However, normal connection pool implementation will have a seperate reference to the connection and if the connection has not been returned, will most likely consider the connection to be "leaked" - allocated but never returned, and unusable.
    connection.close(); is a normal JDBC connection method; it (usually) closes the associated objects and releases the connection; it's not uncommon to explicitly close statements and resultsets instead of depending on connection.close(). A connection pooling implementation that works by extending the Connection class MIGHT change the meaning of close() and instead of actually closing, return it to the pool instead. Personally, I would consider such an implementation to be evil and a blight on good programming practices; changing the action of such standard methods is bound to cause trouble, IMHO. More normally, if you were using connection pooling, you would NOT close the connection, but rather call some special method to return the connection to the pool.

  • What's the difference between using a connection pool and a datasource

    Howdy. I figure this is a newbie question, but I can't seem to find an
    answer.
    In the docs at bea, the datasource docs say
    "DataSource objects provide a way for JDBC clients to obtain a DBMS
    connection. A DataSource is an interface between the client program and the
    connection pool. Each data source requires a separate DataSource object,
    which may be implemented as a DataSource class that supports either
    connection pooling or distributed transactions."
    In there it says the datasource uses the connection pool, but other than
    that, what is the difference between a connection pool and a datasource?

    Thanks for the info. I think it makes some sense. But it's a bit greek.
    I'm sure it'll make more sense the more I work with it. Thanks.
    "Chuck Nelson" <[email protected]> wrote in message
    news:3dcac1f5$[email protected]..
    >
    Peter,
    Here is a more formal definition of a DataSource from the Sun site
    "A factory for connections to the physical data source that thisDataSource object
    represents. An alternative to the DriverManager facility, a DataSourceobject
    is the preferred means of getting a connection. An object that implementsthe
    DataSource interface will typically be registered with a naming servicebased
    on the JavaTM Naming and Directory (JNDI) API.
    The DataSource interface is implemented by a driver vendor. There arethree types
    of implementations:
    Basic implementation -- produces a standard Connection object
    Connection pooling implementation -- produces a Connection object thatwill automatically
    participate in connection pooling. This implementation works with amiddle-tier
    connection pooling manager.
    Distributed transaction implementation -- produces a Connection objectthat may
    be used for distributed transactions and almost always participates inconnection
    pooling. This implementation works with a middle-tier transaction managerand
    almost always with a connection pooling manager.
    Does that help clarify the distinction?
    Chuck Nelson
    DRE
    BEA Technical Support

Maybe you are looking for

  • My windows pc is showing an error message "The file iturnes library itl cannot be read"

    My windows pc is showing an error message "The file iturnes library itl cannot be read because it was created by a newer version of itunes".  I have not downgraded my itunes or done anything with  it other than follow standard download instructions .

  • I think my hard drive has failed, what do I do now?

    My imac G5 failed to start properly today, just getting grey screen.  I tried all the things suggested in the postings and managed to get it to the stage where I could reinstall via Time Machine etc but there was no disc to find on the imac to instal

  • Archive File Name in FTP adapter

    Hi, While archiving a file using an FTP adapter, I want to archvie it with a name which is going to be generated dynamically. However i don't see any placeholder where i can mention the file name for achving. Can anyone please suggest. Thanks, Phani

  • Data migration from ECC5.0 to ECC6.0

    Hi All, Is there a standard SAP utility to migrate the data from ECC5.0 to ECC6.0? Assumption is that all the standard fields and the transactions are same. Good example for this case is standard material master, Purchase order, purchase info record

  • Message that locks java

    Hello Last week we found that our smtp (James java server) was using a lot of CPU after several days trying to identify the problem we found a japanese message that was causing the problem. We have a custom mailet that includes a SPAM string in the s