github darold/ora2pg v24.2
Version 24.2

latest release: v24.3
8 months ago

2024 03 07 - v24.2

This release fix several issues reported since last release and adds some
new features and improvements.

  • Allow DATA_EXPORT_ORDER to take a filename at value to be able to
    give a custom table order. The file must contain the ordered list
    of the tables. One table per line in upper case for Oracle. Thanks
    to DataCloudGaze for the feature request.

  • Add progress bar when --oracle_speed is used to avoid waiting for
    the whole data export ends.

  • Add replacement of the BITAND function by the & operator

  • Add option -f, --format to set the output format for the reports.
    It can be html or json. Default to html. Thanks to mgole001 for the
    feature request.

  • Add automatic addition of the partition key to the primary key. Prefix
    all columns with the alias in the query to get data from Oracle.

  • Add information about MSSQL masked columns in SHOW_COLUMN.

  • Add information about columnstore and compression on MSCSQL tables with
    action SHOW_TABLE.

  • Add new configuration directive PARTITION_BY_REFERENCE to defined
    how to export Oracle partition by reference. Possible values are none,
    duplicate or the number of hash partitions to create.

    Value 'none' mean no translation and export of partition by reference
    like before. Value 'duplicate' will duplicate the referenced column
    in the partitioned table and apply the same partitioning from the
    referenced table to the partitioned table. If the value is a number,
    the table will be partitioned with the HASH method using the value
    as the modulo. For example if you set it to 4 it will create 4 HASH
    partitions.

    Default is none to not export the partitions by reference definition.

Here is the full list of changes and acknowledgements:

  • Fix default values in MSSQL function declaration and missing END keyword.
  • Fix parsing of MSSQL function with a single query. Thanks to Saravanan Newt
    for the report.
  • Fix negative Oracle decimal when comparing data. Thanks to es99-24 for the
    report.
  • Fix typos in documentation. Thanks to Simon Martin for the report.
  • Avoid doubling the NAME keyword in the XMLELEMENT() function.
  • Remove clause "REFERENCING OLD AS OLD NEW AS NEW" that is useless and throw
    an error in PostgreSQL
  • Fix DSN for MSSQL in autogenerated configuration file using --init_project.
  • Fix parsing of REFERENCING clause in trigger. Thanks to Carens Kurniawan
    Wijaya for the report.
  • Fix case where ALL_TAB_COLUMNS and ALL_SDO_GEOM_METADATA was used instead
    of USER_TAB_COLUMNS. Thanks to rvanouter for the report.
  • Fix double quoting in partition by reference where clause.
  • Disallow setting of PARTITION_BY_REFERENCE to duplicate when FDW_SERVER
    is set.
  • Fix trigger export with duplicate FOR EACH clause when a REFERENCING clause
    is present. Thanks to Carens Kurniawan Wijaya for the report.
  • Fix typo in variable name in ora2pg_scanner
  • Fix export of default partition for MySQL. Thanks to Priyanshi Gupta for
    the report.
  • Fix TEST_DATA action with issues on foreign server and import foreign schema
    declaration. Thanks to Florent Jardin for the report.
  • Fix export of NOT NULL constraint with column replacement. Thanks to Florent
    Jardin for the report.
  • Prevent reading file ora2pg_stdout_locker when it does not exist. Thanks to
    Florent Jardin for the report.
  • Fix translation of timestamp with precision < 6. Thanks to Andrei Briukhov
    for the report.
  • Fix json_arrayagg with returning clause, type was not translated.
  • Fix data export for table partitioned by reference with duplicate method.
    The query to extract data on Oracle side add the duplicated column and
    perform the join with the referenced table using the FK definition.
  • Fix partition by LIST export with a useless cast to text. Thanks to
    Priyanshi Gupta for the report.
  • Added closing curly bracket for object details. Thanks to andreas42 for
    the patch.
  • Added quotes around value of "human days cost" and "migration level".
    Thanks to andreas42 for the patch.
  • Format object type detail output as JSON array. Thanks to andreas42 for
    thepatch.
  • Fix variable declaration in previous commit
  • Fix MSSQL table export with nonexistent column auto_created in version
    bellow 2017. Thanks to Florent Jardin for the report.
  • Use ADD CONSTRAINT syntax to specify name of primary key. Thanks to Martin
    Karlgren for the patch.
  • Skip unwanted work on PG database when option --oracle_speed is enabled,
    especially drop of constraints. Thanks to John Tian for the report.
  • Remove trailing ); from primary key statements when reading from file.
    Thanks to Martin Karlgren for the patch.
  • Fix option in CREATE USER MAPPING for export of DBLINK.
  • Fix translation of MSSQL floating point datatype to use float(n) notation.
  • Exclude from assessment objects in Oracle bin.
  • Add Oracle package HTP and HTF to migration assessment.
  • Fix MSSQL foreign key export with multiple columns referenced.
  • Fix MSSQL export of unique constraints that was merging columns of several
    unique constraints for the same table into a single constraint.
  • Fix case of MSSQL datetime default value 0 that must be converted to
    '1900-01-01 00:00:00'
  • Add rewrite of MSSQL getutcdate() function.
  • Fix MSSQL index type and add compression + columnstore information
  • Add clause IF NOT EXIST to all CREATE EXTENSION calls
  • Fix MSSQL bit data migration through tds_fdw, it is already exported
    as boolean by the fdw.
  • Fix duplicated indexes in MSSQL export.
  • Add export of MSSQL indexes with columns included (CREATE INDEX+INCLUDE).

Don't miss a new ora2pg release

NewReleases is sending notifications on new releases.