Database Layer Changes from v7.2.0.0

In v7.2.0.0 KonaKart was upgraded to use Apache Torque 4 as its database layer replacing the previous Torque 3.3. This provides performance improvements and keeps KonaKart up-to-date with the latest stable version of Apache Torque.

KonaKart uses Torque (and parts of Village) in order to maintain portability across 5 databases and ensure that the highest possible performance is achieved with fine-grained control over the SQL that is executed. (This is not always the case with alternative object-based persistence layers that tend to generate and execute redundant and less efficient SQL).

In addition to introducing a new version of Torque in v7.2.0.0, KonaKart has also undergone a number of changes, that you may need to be aware of, associated with the database and programming using the KonaKart/Torque persistence layer.

Table and Column Name Changes

In order to simplify portability across the supported databases, a few table and column names have been modified so that they are identical across all platforms. This change also allows a slight performance gain as KonaKart does not have to calculate the different platform-specific names at runtime as it did in previous versions.

The "old" table and column names stated below are the ones from MySQL. They will have been truncated for other databases such as Oracle and DB2. In future all table and column names will be the same across all databases.


Old Table Name                                        New Table Name

products_options_values_to_products_options           prod_opt_vals_to_prod_opt
products_attributes_download                          products_attrs_download
customers_basket_attributes                           customers_basket_attrs


Column name changes in table configuration_group:

Old Column Name                                       New Column Name

configuration_group_description                       configuration_group_desc


Column name changes in table customers_info:

Old Column Name                                       New Column Name

customers_info_date_of_last_logon                     customers_info_date_last_logon
customers_info_number_of_logons                       customers_info_number_of_logon
customers_info_date_account_created                   customers_info_date_created
customers_info_date_account_last_modified             customers_info_date_modified


Column name changes in table products_options_values_to_products_options:

Old Column Name                                       New Column Name

products_options_values_to_products_options_id        prod_opt_vals_to_prod_opt_id

If you study the database upgrade script (notably the one called upgrade_7.1.1.0_to_7.2.0.0.sql) for your respective database you will see the SQL that you should run when upgrading from 7.1.1.0 (or 7.1.1.1) to 7.2.0.0.

KonaKart/Torque Programming Changes

If you have used the KonaKart/Torque programming techniques that were given as examples in previous versions you will need to update that code to work with the new KonaKart / Torque 4 framework.

There are just a few simple changes to be aware of:

  • Use com.konakart.db.KKCriteria instead of org.apache.torque.util.Criteria or com.konakart.bl.KKCriteria
  • Use com.konakart.db.KKBasePeer instead of org.apache.torque.util.BasePeer
  • As a guide, take a look at the example source code that is provided which has been updated for the new version.