TORPEDO Results for JCredo Enterprise Edition 1.3.7

Single Server Configuration
Reported November 15, 2004
Results are unverified.

Description of the Submission

The package.jdo file declares custom-fetch-groups on bids, item and seller fields in class JDOAuction and buyer field in class JDOBid. It also explicitly defines the table and column names for the persistent classes and fields. The com.middleware_company.torpedo.auction.AuctionServiceBean is changed to allow using hollow PersistenceCapable instances in placeBid and place2Bids tests, and to invoke getDetailAuction in test listAuction. Class com.middleware_company.torpedo.auction.Persistence adds method getDetailAuction, which is overridden in com.middleware-company.torpedo.auction.jdo.Persistence. The submission provides an alternate JDO standard implementation of com.middleware_company.torpedo.auction.jdo.Persistence.java Class com.middleware_company.torpedo.auction.jdo.JDOBid is changed, to allow creation of hollow JDOBid instance(see constructor). It binds fetch groups to current PersistenceManager to produce best SQL statements, depending on the testcase. Using hollow instances to bypass DB roundtrip comes with following drawbacks:
  • if retain values is set to true the objects (JDOAuction/JDOUser) after commit will not hold proper collecions of bids, in case the were loaded by
  • L2 cache will not be properly updated, thus in such scenario it must be disabled.
  • if dedication version information (column) is present in (JDOAuction/JDOUser) the test will not perform as expected, thus Optimistic transaction violations can't be detected.
  • more or less the above holds true for all JDO implementations.
  • A fixed p6spy class com.p6spy.engine.spy.P6ResultSet is also provided to properly bind and return correct results from the underlying result set(not all data types are covered, though). The JCredo-specific table 'RFLX_CLASS_MAPPING' was explicitly excluded in spy.properties as non-relevant to the tests since it's being loaded on JCredo startup only.

    Contact Information

    Riflexo SRL
    jcredo@riflexo.com
    www.riflexo.com

    Configuration

    O-R Mapping System JCredo Enterprise Edition 1.3.7
    Submission Files package.jdo
    ra.xml
    jcredo.xml
    Persistence.java
    AuctionServiceBean.java
    jdo/Persistence.java
    jdo.JDOBid
    TORPEDO Implementation TORPEDO reference implementation 8.25.04
    Application Server BEA WebLogic Server 8.1 SP2
    Database System Oracle 9i
    Operating System
    Configuration Notes For repeatablility, the application server was restarted prior to running each test. The database was restored prior to running the placeBid and place2Bids tests.

    TORPEDO Operations

    The number of database hits required to accomplish the operation is given. Following the link provides raw results, SQL and additional operation specific configuration information and analysis.
    listAuction 2 hits
    listAuctionTwice
    (as transaction)
    2 hits
    listAuctionTwice
    (not transaction)
    2 hits
    listPartialAuction 2 hits
    findAllAuctions 3 hits
    findHighBids 2 hits
    placeBid 2 hits
    place2Bids 2 hits
    TORPEDO: A Testbed of Object Relational Products for Enterprise Distributed Objects.
    Copyright © 2005 Bruce Martin All rights reserved.