Open Source Development Labs  Database Test 2 Differences from the TPC-C
========================================================================

Version 0.15

Open Source Development Labs, Inc.
12725 SW Millikan Way, Suite 400
Beaverton, OR 97005
Phone: (503) 626-2455
Fax: (503) 626-2436
Email: info@osdl.org

Copyright (c) 2002 by The Open Source Development Laboratory, Inc. This
material may be distributed only subject to the terms and conditions set forth
in the Open Publication License, v1.0 or later (the latest version is currently
available at http://www.opencontent.org/openpub/). Distribution of
substantively modified versions of this document is prohibited without the
explicit permission of the copyright holder.

Other company, product or service names may be trademarks or service marks of
others.

Contributors to this white paper include:

* Mark Wong (OSDL)
* Jenny Zhang (OSDL)
* Craig Thomas (OSDL)
* Bryan Olmstead (OSDL)
* Cliff White (OSDL)


Introduction
------------

The purpose of this document is to list the places where the OSDL Database
Test 2 (DBT-2) test kit deviates from the TPC-C Standard Specification
Revision 5.0 (http://www.tpc.org/tpcc/).  DBT-2 may use terminology
similar to benchmarks from the TPC or other, but such similarity does not in
any way imply any comparable relationship with any other benchmark.

Database Design
---------------

* All required fields are not returned to the terminal. [PostgreSQL]
* The kit currently does not use foreign keys to enforce any integrity
  constraints.  (Clause 1.3)
* Storage space for a 60-day period is not determined.  (Clause 4.2.3)

Database Scaling
----------------

* By default the data generator for the database scales the database properly
  based on the number of warehouses built.  The scale for all the tables,
  except DISTRICT and ORDER\_LINE, can be manually overridden.  (Clause 1.4.3)

Transactions
------------

* Errors resulting in invalid transactions are detected but are not
  reported.  (Clause 2.3.6) [SAP DB]

Payment
~~~~~~~

* In the case where the selected customer has bad credit, the original c\_data
  is not appended to the new c\_data updated for the customer.
  (Clause 2.5.2.2) [SAP DB]

Delivery
~~~~~~~~

* Delivery transactions are not queued and deferred, but are executed
  immediately.  (Clause 2.7.2.1) [SAP DB, PostgreSQL]

* Statistics are not collected for the case when deliveries are not made for a
  district.  (Clause 2.7.2.3) [SAP DB, PostgreSQL]

Acid Properties
---------------

* Test have not been designed to test the ACID properties of the database.
  (Clause 3) [SAP DB, PostgreSQL]

Performance Metrics
-------------------

* The reported throughput does not have a minimum required throughput.
  (Clause 4.1.3) [SAP DB, PostgreSQL]
* DBT-2 does not require reporting (Clause 5.6) nor does it require
  a full disclosure report be published (Clause 8).  An independent audit
  is also not required.  (Clause 9) [SAP DB, PostgreSQL]
* The pricing of the system under test is not calculated.  (Clause 7)
  [SAP DB, PostgreSQL]

Driver
------

* The driver is currently designed to work with a client program to
  reduce the number of connections to the database.  The driver can be
  used in a way such that it implements most of the client code directly
  to reduce the number of connections to the database from the driver
  program directly, instead of opening a database connection per terminal
  emulated.  (Clause 6.1) [SAP DB, PostgreSQL]
* The mix of the transactions conforms to the TPC-C specification by
  default, but it can be adjusted outside the restrictions placed in the
  specification.  (Clause 5.2.3) [SAP DB, PostgreSQL]
* The Keying Time and Thinking Time is constant but can be user defined.
  (Clause 5.2.5.7) [SAP DB, PostgreSQL]
* A maximum 90th percentile response time is not required.
  (Clause 5.2.5.3) [SAP DB, PostgreSQL]
