DBCopy Change Log

=================

 

0.19 (11/04/2005)

====

 

- Performance increase due to a reduction in the number of data-type queries on the source

  and destination databases (Thanks to Dan Dragut)

 

- Fixed table analysis progress monitor dialog so that it goes away when the copy operation

  is complete.

 

- Examined data types for the other dialects (Firebird, HyperSonic, Pointbase, etc.)

  currently supported and explicitly set them for the appropriate java type.  Tested each type

  against the corresponding database for usage and compatibility.

 

- Added custom type mappings for McKoi, Derby and Sybase

 

- Fixed bug which caused multiple dialogs to appear when cancelling a copy operation.

 

- Fixed bug that would create a temporary file to store the blob in if the blob column

  value is null.

 

- Fixed bug 1344224 (When auto-commit is disabled, committing the source session)

 

 

0.18 (10/22/2005)

====

 

- Added table analysis of source tables prior to attempting to create the tables in the

  destination database.  Analysis consists of creating a test table with one column

  in it for each column of the table.  This can be turned off, but it gives a better description

  of what happened in the event that a column name isn't allowed in the destination database.

  Additionally, this will be done for all tables in the copy set before making any changes in the

  destination database. If the source and destination databases are the same, this analysis is

  skipped.

 

- Updated for SQuirreL plugin interface changes to be compatible with latest SQuirreL (> 2.0 final)

  This version of the plugin is still compatible with previous versions of SQuirreL (2.0RC1, 2.0Final)

  as the interface change added new members and did not change any existing members.

 

- Examined data types for the major dialects currently supported and explicitly set them for the

  appropriate java type.  Tested each type against the corresponding database for usage and

  compatibility.  This should hopefully make the default data type mappings used sufficiently

  robust for compatibility between databases.(See

  http://dbcopyplugin.sourceforge.net/dbcopydatatypemapping.html for more detail regarding how

  the plugin maps data types between different databases)

 

- Fixed a bug that resulted in the following error message - "Copy failed: 0".  Behind the scenes

  an ArrayIndexOutOfBoundsException was encountered when getting information about the newly created

  table in the destination schema, if the case of the table name didn't match.

 

 

0.17 (8/26/2005)

====

 

- Added configuration item for column name keyword checking in destination database.

  This feature uses the "keywords" reported by the JDBC driver to find column names

  in the source table copy set that cannot be used as column names in the destination

  database.  However, this is too aggressive in some cases as some databases (like DB2)

  report keywords that can also be used as column names.  So, now this checking can be

  disabled. The configuration is available in

 

  "File" -> "Global Preferences" -> "DBCopy" -> "Column Type Mapping"

 

 

0.16 (8/21/2005)

====

 

- Added custom column type mappings for IBM DB2. (Tested against DB2 PE for Windows)

 

- Added new configuration option to disable auto-detection of destination

  database.(This causes the Hibernate dialect chooser to always appear when

  copying to a new database session.  Dialect choices are cached for existing

  sessions).  The configuration is available in

 

  "File" -> "Global Preferences" -> "DBCopy" -> "Column Type Mapping"

 

- Fixed bug which would cause destination copy sessions to linger in memory even

  after being closed.

 

- Changed Oracle type mapping for LONGVARCHAR to use CLOB instead of LONG since

  LONG is deprecated and multiple LONG columns for a single table aren't supported

  whereas multiple CLOB columns for a single table are.

 

- Massive refactoring to provide a framework for external application integration.

  (For the most part, this facilitates writing a driver that automates regression

   testing, but might be useful for other 3rd-party integrations)

 

 

0.15 (8/13/2005)

====

 

- Added support for turning off auto-commit and committing

  after a configurable number of records.

 

- Added support for turning on/off the copy of foreign keys,

  table records and index defintions.

 

- Added ability to detect and ignore duplicate index defintions.

 

- Fixed bug which resulted from using the wrong string function to query

  max length for a column - this is database-dependent and the code was

  assuming that all databases have a "length" function.

 

 

0.14 (8/5/2005)

====

 

- Added support for caching BLOBs to disk during transfer to prevent

  the client from running out of memory on large BLOBs. Transfer buffer

  size is configurable.

 

- Added DB Copy tab to Global Preferences section of SQuirreL to configure

  preferences for the DB Copy Plugin.

 

- Truncate can now be used for databases that support it, instead of "delete".

  This can be turned on/off for all databases in the preferences.  If enabled

  it will be attempted, and if not supported, delete will be used instead.

 

- When truncating/deleting records for tables that exist in the destination

  database, the dialog that prompts for record deletion now has a "Yes to all"

  button to apply record deletion to all destination tables.

 

- Added support for choosing additional Hibernate dialects if destination

  database vendor couldn't be determined. (DB2, Derby, FrontBase, Informix,

  Ingres, Interbase, McKoi and TimesTen)

 

0.13 (7/30/2005)

====

 

- Added support for copying index definitions along with the tables

  that are being copied.

 

- Altered destination table truncation to use "delete from" instead of

  the less standard "truncate table".  Will add support for this back

  in on some databases in the next release.

 

- Added check for if column is a keyword when copying data from one

  table to another (In the case where the data is copied without creating

  the table).

 

- If an SQLException is encountered during record copy, show it's message

  to the user (instead of simply printing the stack trace).

 

- Fixed source files eol chars. 

 

 

0.12 (7/13/2005) First Beta Release

====

- Added support for internationalizing the the user dialog messages.

 

- Bug fixes (moved GUI work onto event dispatch thread)

 

- Added support for checking if source database column names are in fact

  keywords in the destination database.

 

- When records exist in the destination table, the delete dialog now indicates

  the name of the table when asking the user if it should truncate the table.

 

- Added custom type mappings for MS SQLServer

 

- Added ability to auto-determine when destination database is MS SQLServer.

 

- Tested this version's MS SQLServer dialect against MS SQLServer 2005(CTP)

 

 

0.11 (6/30/2005)

====

 

- Added copying table constraints (Primary Key and Foreign Key).

 

- Added dialog to allow user to select a hibernate dialect for the destination

  database, if one couldn't be determined automatically.

 

- Asks user to truncate records in destination table, if records already exist.

 

- Fixed packaging to place hibernate and commons-logging jars in subdirectory

  space of dbcopy plugin.

 

- Supported Hibernate dialects are now:

      Firebird, Oracle, Sybase, MS SQLServer,

      MySQL, HyperSonic, Pointbase, PostgreSQL.

 

- Bug fixes.  Actually tested this release a bit.

 

 

0.10 (6/24/2005)

====

 

- Initial release.