What's new in Dbvisit Replicate 2.9.06
Jun 20, 2018
- NRC-12 Fix an issue, when APPLY refuses to receive ancillary plogs. Fix race conditions on first APPLY startup
- NRC-47 Fix an issue with TRUNCATE partition command on Oracle 10g
- NRC-53 Fix various issues with columns split among multiple blocks, especially LONGs
- NRC-53 Fix issues with non-null metadata-only default values
- RQ-1186 Use European-style date for redo/plog based date (#11750)
- RQ-2592 Add grants on CLUSTERs, as we do replicate DDL for them in DDL replication
- RQ-3254 Fix a crashing of APPLY on "commit/rollback" transaction. Include plog sequence with LCR_id in a plog. Do not reference a plog file when not necessary
- RQ-3330 Improve a support packages. Add the entire logfile instead of the last 20MB and include already rotated log files
- RQ-3420 Do not allow PostgreSQL target to be used together with CSV target (due to issues with PostgreSQL reserved keywords)
- RQ-3507 IOT delete and re-insert now are correctly treated as delete and re-insert, not as update (#10796)
- RQ-3573 Fix various minor issues with TDE on databases that don't support it
- RQ-3583 Improve performance of MINE for large uncommitted transactions (#11356)
- RQ-3621 Fix an issue with a table or schema in setup wizard occasionally inheriting settings from a previous table (e.g. CDC) even if not asked to do so
- RQ-3623 Fix an issue when query mode multi does not recognise 12.2 redo logs (#11986)
- RQ-3705 Do not allow _ENABLE_5_19_PARSE=NO with apply loop prevention, as these options are incompatible
- RQ-3716 Add support for the JSON column type for Oracle databases
- RQ-3726 Do not allow OVERWRITE conflict handler for LOBs (#11735)
- RQ-3727 Fix LONG (RAW) row piece assembling (#11733)
- RQ-3729 Do not offer DDL replication for CSVs in setup wizard
- RQ-3735 Fix an issue when conflicts were not counted to applied rows, leading to counter inconsistency in the console (#11752)
- RQ-3739 Fix an issue when NEWER/OLDER/PLSQL conflict handlers occasionally causes APPLY to malform data (#11750)
- RQ-3740 Fix an occasional crash of MINE on "FATAL-6999: Mandatory parameter check: redo_handle->file" (#11698)
- RQ-3741 Separate "known issues" from "changes" with a new line in README
- RQ-3743 Improve performance and lower memory usage of MINE when processing KDO/KTB operations (#11763)
- RQ-3744 Fix incorrect use of DISCARD conflict handler, instead of conflict handler specified by end user (#11767)
- RQ-3746 Fix an issue when NEWER/OLDER/PLSQL conflict handlers occasionally causes APPLY to malform data on delete (#11778)
- RQ-3750 Fix a crash after NEWER+IGNORE handler on LOB. Properly distinguish keys/new for inserts. Improve the error message when the NEWER/OLDER handler fails due to user error (#11735)
- RQ-3751 Improve performance of MINE on restart (#11766)
- RQ-3753 Various 9i bug fixes
- RQ-3755 Fix issues when both LONG and LOB column are present in the same table
- RQ-3758 Fix issues with PostgreSQL load (do commit after DDL and correctly handle the fact that PostgreSQL returns column names in lowercase) (#11837)
- RQ-3760 Remove the information about CPU count restriction from log files (the licence does not have this restriction anymore) (#11856)
- RQ-3761 Fix issue with pasting of skipped columns causing "Internal error: Mandatory parameter check: pth: Invalid argument" (#11767)
- RQ-3765 Fix a MINE crash when processing some specific cases of multi block undo
- RQ-3767 Fix a crash when creating a mine support package after upgrade from 2.7 to 2.9 (#11833)
- RQ-3769 Make APPLY log more readable by reducing the frequency of "Waiting for plog" messages
- RQ-3770 Generate correct config/*dbsetup*sql during the setup wizard for PostgreSQL when LOAD_KEEP/LOAD_CREATE are used
- RQ-3772 Fix various MINE connectivity issues (#11833)
- RQ-3773 Introduce user variable MINE_REWRITE_TRUNCATE to govern whether truncate should be rewritten
- RQ-3774 Fix interaction of DDL_IGNORE_USER with rewrite TRUNCATE
- RQ-3775 Fix downgrade to <=2.9.00 (revert values of configuration variables to values valid in previous versions)
- RQ-3776 Qualify DBRS tables with schema on MSSQL server
- RQ-3780 Fix various problems causing MINE to ignore prepared partitioned IOT tables
- RQ-3782 Fix handling of constraints on partitioned tables (look for the parent container if this is a partition, because constraints are defined at table level) (#12005)
- RQ-3783 Fix failing PREPARE/UNPREPARE on MSSQL Server
- RQ-3789 Fix assembling of row piece (ORA-00957: duplicate column name) (#11997)v
- RQ-3791 Fix an issue with unexpected conflicts on tables with multiple LOBs due to use of incorrect select to get the LOB locator (#12009)
- RQ-3793 Improve MINE log on HP-UX (superfluous information at redo record end caused many Unknown OPCODE messages) (#11879)
- RQ-3794 Improve performance of FETCHER on startup by reducing the frequency of v$log queries (#11977)
- RQ-3795 Fix possible incorrect assembly when multiple changes are made to the same chained row, one closely following the other (#12147)
- RQ-3796 Allocate more memory for debug messages and disable some debug messages by default. Always work with 4-byte chunks in signatures. Ignore empty entries. Don't flip signatures when writing because if it's an odd number of columns the last one will be lost (#12010)
- RQ-3797 Fix possible conflicts on LOBs when MINE is on big Endian (#12178)
- RQ-3798 Fix clean-up of session audit history: delete all past records, not just the most recent one
- RQ-3800 Fix a possible segment violation on (LONG) RAW data due to 'hh' not being a valid modifier on Windows (#12248)
- RQ-3801 Fix the crash due to replication of long PL/SQL (#12203)
- RQ-3802 Add --hide-data parameter to publisher. Add redo_hide and multi_hide parameters to query mode (#12236)
- RQ-3804 Remove DISCARD warnings if they are due to unused LKR (#12203)
- RQ-3814 Fix a mix-and-match datatype checks (add DATETIME2) for MSSQL. Properly check for MSSQL-style double-schema name (for columns). Use an explicit owner in MSSQL INFORMATION_SCHEMA queries
- RQ-3813 Reintroduce a fix from RQ-844
- RQ-3820 Fix a bug, when Apply automatically switched to a maximum debug mode and spammed the log on HP-UX
- RQ-3821 Rowcount is not a license option anymore, so just get rid of the code (that is apparently not NLS-aware on MSSQL) (#12508)
- RQ-3829 Reduce memory footprint of MINE when processing a long transaction with a lot of rowpieces (#12581)
- RQ-3832 Dump profiler and memory after mine querymode. Speedup of processing 19.1 changes (#12649)
- RQ-3834 Speed up Mine, by skipping some unnecessary log attempts in parsing headers (#12649)
New in Dbvisit Replicate 2.9.04 (Oct 11, 2017)
- RQ-3139: APPLY.sql for target MySQL database may have duplicated entries
- RQ-3723: IMPORTANT: File-based targets should have a limited list of instantiation options
- RQ-3725: Change realloc from different thread into warning only (RQ-703)(11730)
- RQ-3636: Fix error on Windows while processing redologs greater than 2G
New in Dbvisit Replicate 2.9.02 (Sep 29, 2017)
- RQ-97: Improve detection of invalid PLOG files delivered to target
- RQ-710: Improve questions asked by setup wizard for MS SQL target
- RQ-973: Improve questions asked by setup wizard about notifications
- RQ-1702: Improve INCLUDE COLUMN command documentation and error messages
- RQ-1753: Remove extra printed characters when preparing a table which is already prepared
- RQ-2101: Support Transparent Data Encryption
- RQ-2373: Fix file permissions for APPLY.sql
- RQ-2564: Add missing console feedback for some commands
- RQ-2720: Use non-intrusive profiler on apply
- RQ-2770: Fix: multiple LOB updates in the same LOB block could have been incorrectly joined together
- RQ-2982: Windows: case-insensivity of the filesystem might have caused files created by setup wizard to be overwritten by each other
- RQ-3231: Support Oracle 12.2 as a source (#10955)
- RQ-3273: Try _enable_row_shipping just once (#10730)
- RQ-3310: Minor fixes for XML handling (#10809)
- RQ-3320: Improve DDL command documentation and error messages
- RQ-3325: When PREPARE actually adds supplemental logging, it cannot use a single-scn, as such SCN would cause flashback query to fail (#10691)
- RQ-3332: Change default number of retries for a conflict to 3
- RQ-3360: Enable ALL suplog in the setup wizard when using Kafka Connect
- RQ-3402: Fix IOT incorrect parsing due to incomplete index operations
- RQ-3407: Fix crash with direct I/O
- RQ-3441: Fix IOT insert-after-delete of the same key handling
- RQ-3476: Handle dropping of metadata-only default column value (#11228)
- RQ-3500: Fix UNPREPARE and LIST PROGRESS for cases without apply, e.g. Kafka Connect
- RQ-3555: Fix: Change with all columns excluded could cause mine to crash (#11346)
- RQ-3558: Fix possible missed row changes due to LOBs and optimized handling of changed rows only
- RQ-3560: Improve fetcher to mine communication, timeouts and gap resolution (#11346)
- RQ-3563: Improve speed of apply when many transactions are active concurrently (#11375)
- RQ-3573: Don't replicate internal tables when using Kafka Connect
- RQ-3579: Don't update primary key of internal tables when not needed at all, some target databases don't allow primary key updates
- RQ-3595: Fix possible missing columns after alter table drop column (#11462)
- RQ-3601: Fix incorrect endian of version number in plog file (#11440)
- RQ-3602: Update names of distributed rpm archives
New in Dbvisit Replicate 2.9.00 (Jun 30, 2017)
- Add support for XML datatype
- Improved dictionary load during MINE startup
- Support temporal validity (12c)
- New supported target - PostreSQL (Community Edition)
- Internal improvements - fetcher failing to send archive logs due to network related issue following art
- Add additional information regarding TNS_AMDIN to Nextstepstxt
- For both RESOLVE and DISCARD HANDLER commands handle IGNORE and DISCARD as same (synonyms)
- Add support for ROWID datatype
- Allow user to change the default for conflict handlers
- Add option to enable sql trace (10046)
- Improve ASM read speed
- RESOLVE CONFLICT LAST implemented
- Internal improvement on log messages with regards to ASM auto detection
- Fix notification from MINE when FETCHER is down
- New supported target - Kafka Connect connector
- Improved TIMESTAMP mapping from Oracle to MySQL
- Add full supplemental logging for Replicate internal tables
- Improved process when Fetcher hits high redo generation (#9161)
- Allow storing metadata dictionary for source database in another Oracle database
- allsh script doesn't set ON_ERROR and ON_WARNING to SKIP in the DDC database
- Internal improved handling of FATAL-9087
- dba_constraints and dba_triggers permissions missing in allsh for AWS RDS
- Create support package in temporary "in-progress" file and rename it when finished
- Improved SNMP notification descriptions to traps (#9065)
- Add additional information about running processes to support package (#9616)
- New supported target - Tibero
- Better handling of ALTER TABLE TRUNCATE
- Improved handling of PLSQL replication and resolving SIGSEGV on apply (#9789)
- Resolve FATAL-4101: Segment violation (SIGSEGV) received (#9789)
- Resolve FATAL0: (free_c) Error no out of bounds for memory accounting (#9836, #9899)
- Command UNSET_CONFLICT_HANDLERS to set the conflict handlers to default values
- Various internal changes regarding Fetcher performance (#9995)
- Resolve incorrect mine of "alter table add column" with default or multiple columns (#10051)
- Resolve issue where ORA-00957: duplicate column name reported (#10051, #10070)
- Fix handling of RAW datatype in conflict handlers
- Improve thread locking causing error FATAL-5203
- Handle cases when support package tries to connect to apply database and can't do so
- Fix resetting of the number of failed checks in fetcher sequence notification
- RQ-3164: Error email notification from Mine process did not respect NOTIFY SET ERRE settings
- Add support for BINARY_DOUBLE and BINARY_FLOAT datatypes
- Allow "()" around select clause in CTAS (#10465, #10473)
- Resolve Mine crash on FATAL-6301 (#10538)
- Fix crashing apply commit/rollback transaction
- Resolve issue with logs not rotating on Windows based systems (#10631)
- Fix MINE: FATAL-5259: Memory limit exhausted
- Improve sending of data between Fetcher and Mine
- Improve handling of FATAL-2811 (#10682)
- Improve handling of FATAL-4101: Segment violation (#10799)
- Support non-upper case variations of Replicate Editions in setup wizard (#10799)
- Improved sending notifications when ARCHONLY is used (#10793)
- Fix "Out of memory" error during support package creation Introduced new parameter PORT_PACKAGE_MAX_ZIP_MEMBER_SIZE
- Improve Fetcher log file rotation (#10793, #10631)
- Resolve issue where once you specify any option for the support package in the console it is mbered for duration of session
- Improve performance of "truncate" statement
- Improved handling of Azure SQL Server - introduce _APPLY_MSSQL_IS_AZURE_VARIANT
- Fix Incorrectly handled DATE column and other duplicities when updating table with LOB
New in Dbvisit Replicate 2.8.04 (Jan 11, 2017)
- Fix incorrect parse of trailing NULLs in updates (RQ-2927 #10038)
- Improve speed of mining large transactions with many chained rows (RQ-3015 #10094)
- Fix duplicate columns in DDL_FILE with multiple mines (RQ-2799 #9455)
New in Dbvisit Replicate 2.8.02 (Nov 18, 2016)
- Regexp value stored incompletely if SQL handler's regexp contains OR expression (RQ-2485 #9074)
- Use much fewer DMLs to set coflict handlers (RQ-2238)
- Handle enabled row movement (RQ-2391 #8942)
- CDCAUDIT on schema now makes new tables inherit the settings (RQ-2489)
- Abort reading plog when plog entry header has wrong size (RQ-2573 #9155)
- Fix length of LONG datatype (RQ-2636)
- Mine pessimistic commit (RQ-2306)
- Rename CDC Audit to Event Streaming (RQ-914)
- Fix deletion of obsolete plogs (RQ-2559 #9091)
- Fix dbvrep --no-termcap crashes on Windows and Unix (HP-UX, AIX, Solaris) (RQ-2562)
- Properly enable trigger fire once if user has GoldenGate license (RQ-971)
- Fix runtime 'uninitialised value' perl warnings for $err and $errstr (RQ-2708)
- Restrict conflict handlers for COMMIT and DDL operations (RQ-2701)
- Setup wizard was losing HDFS namenode configuration enetered by user (RQ-2764 #9607)
- Prevent resets of CSV separators in setup wizard (RQ-2786)
- Fix possible invalid trim length for LOB operations (RQ-2758 #9555)
- Fix mine performance when global temporary tables are in place (RQ-2685 #9457)
- Fix mine memory leaks in direct insert with LOB columns (RQ-2780 #9604)
- Fix "undef" value for next SCN when RAC thread is down (RQ-2438)
- Fix undefined db handle that causes "Can't call method commit" (RQ-2753 #9568)
- Fix column numbers if supplemental logging is not enabled (RQ-2820)
- Fix incorrect handling of columns changed from suplog to old values (RQ-2624 RQ-2736 #9581)
- Fix memory leak due to DML on internal tables in DDL operations (RQ-2796 #9666)
- Disable retiring obsolete transactions by default (RQ-2804)
- Fix trailing NULLs for unique keys and APPLY_USE_PK_ONLY (RQ-2864)
- Correct SQL statement in conflict log when internal variable APPLY_USE_PK_ONLY is used (RQ-2863)
- Fix mine crash when multiple CTASes happen concurrently (RQ-2899)
- Allow IGNORE/IGNOREALL as conflict resolution for DDL(not commit) (RQ-2899)
- Fix handling of non-Unicode multi-byte character sets in CLOB (RQ-2920)
- Fix crash in LOAD when a leading column was excluded (RQ-2925)
- Fix memory leak with trailing NULLs and pessimistic commit (RQ-2935 #10040)
New in Dbvisit Replicate 2.8.00 (Jun 7, 2016)
- Change severity of some errors and warnings
- MINE_TRUNCATE_WITHOUT_DDL is now a public variable
- Improve error message for incorrect user-specified SQL in filtering, PL/SQL and newer/older handlers
- NOTIFY SEND TEST command
- Rename CDC/Audit to just audit in setup wizard
- Alternate archive destination (MINE_ARCH_DEST, MINE_ARCH_DEST_FORMAT)
- c invisible column support
- Improve check/reject of invalid SET value
- Improve formatting of status line
- Response file support in setup wizard
- Support named time zones in TIMESTAMP WITH TIME ZONE
- c extended datatype support
- Empty filter condition could crash apply
- Added sequence grants for DDL replication to support 12c generated by identity columns
- Show full SQL text in SQL conflict, do not truncate
- Plog statistics in plog conflict count was not se
- FILTER SHOW command
- Postpone last LCR will now default to YES
- Fix CDC commit timestamp on non-Oracle targets
- Auto-resolve locks on target by looking ahead for rollbacks on source
- Minor grammar improvements in user messages
- Better support non-ASCII table and column names
- Support for 9i cross-endian
- Added option to skip DML changes done by a username
- Fix LOAD stats for one-to-many
- Hide passwords in scripts in support package
- Fix the full path to temp dir used by wintee
- Help for NOTIFY command fixed
- Improved LOAD performance
- EXCLUDE COLUMN command is now online by default
- Allow LOAD_REQUEST to be added when mine is running
- PREPARE_AND_LOAD command
- Allow CDC to be configured at schema-level
- Fix CSV output was not properly configured if schema level was selected
- APPLY_LOOP_PREVENTION and MINE_LOOP_PREVENTION are now public variables
- SHUTDOWN now asks for confirmation and supplies additional info; IMMEDIATE keyword added (RQ-1413, RQ-1509, RQ-1686)
- Properly mark updated PKs and deleted PKs as keys, not as old values
- Add option to delete staging directories on first start of mine/apply
- Add option to auto-prepare table that is dropped and then recreated
- Fixed data pump job naming on import when using dp_exp method for APPLYsh
- Add option to supplementally log all columns
- Add select * from v$thread, v$log, v$logfile to the MINE support package
- Recursive DML in DDL
- Add option to add limit on MINE to pause if too much disk space is occupied
- Replace primary key on DBRSCOL$ by plain index
- Prevent apply loop on DML: set DML_IGNORE_USER
- Engine send show did not show expected output
- Strings were not 'quoted' in list conflict
- Add character set and NLS settings to the support package
- Hide passwords in all/batch scripts in support package
- Fetcher profiler
- Handle inconsistency in setup wizard
- Mine would not start after node went down in RAC
- Dbvrep returns error code when the command was invalid
- Add option --no-tty to completely give up tty
- Fix privileges of files created by Replicate, esp plogs
- Print error messages to STDERR
- Added new process type KAHITI for proper handling of OEM replications
- A new instantiation type scn_list for OEM replication
- Fixed typos in "PROCESS is running/PAUSED" messages
- Ask for MySQL admin password in all script when password saving was disabled in Setup Wizard
- Create Dbvisit Replicate repository in MySQL with password
- Ensure that all script has nonzero exit status on failure
- Command "set VARIABLE =" now reports error instead of setting VARIABLE to "="
- Add public parameter APPLY_USE_PK_ONLY used in apply for using primary key columns only in where clause
- Setup Wizard would not run allsh script when asked to do so
- Check DBID before adding database-level supplemental logging
- On 9i FETCHER not picking any changes up until after the switch
- Improve handling of corrupted internal dictionary
- Handle undo segments with CLS < 15
- Fix case with multiple replications going to the same mysql database
- Improve quoting of passwords in allsh
- Handle case where Oracle reports LOB length in bytes instead of chars
- Fix missing columns in LOB operation
- Prevent warnings about uninitialised $Avisit::Dbreplicate::MineEngine::rlog_plog_map
- Handle special cases of incomplete assembly
- Fix incorrect handling of rollback to savepoint on target on plog boundary on RAC
New in Dbvisit Replicate 2.7.20 (Feb 16, 2016)
- The following items were fixed and/or added:
- Fix some cases of recursive DDL related to tables with FK (RQ-1953)
- Let DDL scripts honour column exclusion (RQ-1938 RQ-1958)
- Fix possible lost of trace debug data (RQ-1946)
- Fix incorrect processing Ctrl-C on AIX during show all command (RQ-1809)
- Parse/ignore bitmap allocations in redo (RQ-1981)
- Fix apply trimming trailing spaces in strings over 2k (RQ-1975)
- Re-read redo block if the expected header is not there (#8086)
- Handle Oracle bug that causes invalid 9i-like redo header on 11g (#8086, RQ-1990)
- Ignore tables used by Compression Advisor since 11.2.0.4 (RQ-1993)
- Detect compressed data in non-direct load and skip them (RQ-1989, #8149)
- --no-termcap failed on Windows when entering passwords in wizard (RQ-1994)
- MSSQL watchdog: add XID of source transaction to watchdog info (RQ-1889)
- Fix keeping the history of Thread-redo-plog for RAC environment (RQ-1867)
- Some specific numbers (e.g. 10^25) were replicated as null (RQ-1996)
New in Dbvisit Replicate 2.7.18 (Oct 5, 2015)
- This is a maintenance release. The following items were fixed and/or added:
- Fix some cases of recursive DDL related to tables with FK (RQ-1953)
- Let DDL scripts honour column exclusion (RQ-1938 RQ-1958)
- Fix possible lost of trace debug data (RQ-1946)
- Fix incorrect processing Ctrl-C on AIX during show all command (RQ-1809)
- Parse/ignore bitmap allocations in redo (RQ-1981)
- Fix apply trimming trailing spaces in strings over 2k (RQ-1975)
- Re-read redo block if the expected header is not there (#8086)
- Handle Oracle bug that causes invalid 9i-like redo header on 11g (#8086, RQ-1990)
- Ignore tables used by Compression Advisor since 11.2.0.4 (RQ-1993)
- Detect compressed data in non-direct load and skip them (RQ-1989, #8149)
- --no-termcap failed on Windows when entering passwords in wizard (RQ-1994)
- MSSQL watchdog: add XID of source transaction to watchdog info (RQ-1889)
- Fix keeping the history of Thread-redo-plog for RAC environment (RQ-1867)
- Some specific numbers (e.g. 10^25) were replicated as null (RQ-1996)
New in Dbvisit Replicate 2.7.16 (Aug 13, 2015)
- Note: If upgrading from 2.6.02 or previous version and running RAC, the following
- grant should be executed by sysdba:
- SQL> grant select on gv_$transaction to dbvrep;
- This is a maintenance release.
- The following items were fixed and/or added:
- Ignore preparing SCHEDULER$_ tables (RQ-1828)
- Fix undef warning on conflict during LOAD (RQ-1807)
- Fix conflicts due to incorrect order of LOAD vs open transactions (RQ-1807)
- Fix missing grammar rules for prepare table with rename to MSSQL (RQ-1834)
- Improve speed of writing plog to disk (RQ-1833)
- Add 'alter table drop primary key' to supported DDLs (RQ-1869)
- Ignore DDL to add virtual columns issued by DBMS_STATS (#7868)
- Fix invalid column name when using empty prefix in CDC/Audit (RQ-1875 #7865)
- Reopen of redo on RAC would cause reset of LCR id (RQ-1867)
- Fix crash if session info in redo was in the middle of a transaction, not the beginning (#7832)
- Fix Mine 'pauses' when one of the 4 target machines is down (RQ-1847)
- Improve mine speed for large LWN blocks in redo (RQ-1871 #7842)
- GZIP on windows corrupts the plog file (RQ-1873)
- Fix invalid column used on 9i in IOT delete (#7856)
- Mine speed and profiling improvements (#7798)
- Fix possible conflict on plog boundary due to mine restart (RQ-1940)
New in Dbvisit Replicate 2.7.14 (Jun 25, 2015)
- The following items were fixed and/or added:
- DROP_SUPPLEMENTAL_LOG_DATA parameter added to keep supplog data when unpreparing the table
- Possible slowdown on CSV output due to often re-query of column names
- Fix truncation of varchar data if it contained ASCII 0
- Fix possible temporary conflict with parallel apply of timestamp with time zone
- Improve quoting of backslash in table name in APPLY.sh
- Improved feedback for exec/! command
- Fix auto-retry on mysql connection lost
- Handle possible ORA-00001 on session audit information
- Watchdog for SQL Server
- Improve DDL created for tables replicated to mysql - TIMESTAMP columns
- Fix PROCESS LOCK SCHEMAS for double quoted schema name
- Fix possible crash in watchdog
- Reduce apply memory usage for large uncommitted transactions
- Improved error reporting for failed SMTP connections and auto-retry for failed SQL statements for MySQL target
- Improved error reporting for failed SMTP connections and auto-retry for failed SQL statements for MSSQL target
- Auto-resolve locks on target by looking ahead for rollbacks on source
- Increase mine speed by updating row counts less frequently
- Select default process name even if user does not use the usual MINE/APPLY names
- Fix The conversion of the nvarchar value overflowed an int column error for MSSQL
- Fix Invalid precision value
- Ignore ORA-10655: Segment can be shrunk error (caused by Segment Advisor DDL)
- Relax rules on HOSTNAME:PORT_NUM
- Getting the correct start PLOG from the start SCN when adding a new replication pair
- Remove harmless warnings caused by table shrink
- Fix 9i support on HP-UX
New in Dbvisit Replicate 2.7.12 (Mar 24, 2015)
- Possible PK violation just after start after nolock (RQ-1316)
- Fix possible locks with loads with many partial rollbacks (RQ-881)
- Fix possible crash in support package (RQ-1432)
- Fix possible LOB incorrect truncation (#7234)
- Fix possible memory leak with LOBs (RQ-1505 #7261)
- Fix possible crash in apply commit transaction (#7044)
- Fix possible crash during rollforward after conflict (#7283)
- Exclude global temporary tables (RQ-1494)
- Fix auto-prepare of new tables in 2-way replication (RQ-1522)
- Add option to disable IPv6 support (RQ-1554)
- Getting the correct start PLOG from the start SCN (RQ-1538)
- Fix the FILTER syntax in manpage/help (RQ-1145)
- Improve speed for multiple 'rolled back on source' conflicts (RQ-1624)
New in Dbvisit Replicate 2.7.10 (Jan 9, 2015)
- The following items were fixed and/or added:
- Apply performance improvements; more detailed profiling (RQ-1377, RQ-1364, RQ-1360)
- Apply minor memory leaks fixed, fixes in thread-level memory accounting (RQ-1336, RQ-1379)
- Reduce locking in plog transfer on apply (RQ-1275)
- Fix mine memory leak (RQ-1346, RQ-1214)
- Mine could run out of OS memory, not realizing it's over its own limit (RQ-1346)
- LOBs would not be trimmed in some cases of update (RQ-1237)
- Made watchdog message more clear; added option for watchdog to show SQL with actual values insted of binds: WATCHDOG_NOBIND_SQL (RQ-1336)
New in Dbvisit Replicate 2.7.08 (Dec 12, 2014)
- Fix Use of uninitialized values Notify Sequence SCN diff (RQ-1180)
- Fix in DDL for TIMESTAMP on SQL Server (RQ-1184)
- Fix possible conflict with restart during LOAD (RQ-1028)
- Possible missing column info in CTAS with LOBs (RQ-1188)
- Alternate archive destination (MINE_ARCH_DEST, MINE_ARCH_DEST_FORMAT) (backport of RQ-929, RQ-1189)
- Apply speed improvement: better skipping of rollbacks if all changes were already skipped (RQ-1192)
- Fix possible skip part of redo log on RAC (RQ-1150)
- Support named time zones in TIMESTAMP WITH TIME ZONE (backport of RQ-925)
- ALTER INDEX [IN]VISIBLE support (RQ-847)
- Fix "Use of uninitialized value in concatenation (.) or string at (eval21) line 408" in LIST PROGRESS (RQ-1190)
- Incorrect parse of array insert on big-endian (columns > 250 bytes) (RQ-1195, RQ-1196, RQ-1197, #6641, #6534)
- Allow table names using reserved keywords (RQ-1208)
- Formatting fixes in list conflict for non-Oracle (timestamps, dates) (RQ-395)
- Create table as select (and DDL commands) now include precision in timestamps (RQ-1228)
- Better error handling for SMTP authentication (RQ-1067)
- Fix number of sent emails in console output for NOTIFY SEND (RQ-1238)
- LOBs would not be trimmed in some cases of update (RQ-1237)
- For NOTIFY SEND commands user can choose the process to be used (RQ-1241)
- Change name of finished transactions to '(transaction ended)' (RQ-1264)
- NOTIFY_PEER_DOWN parameter is now used to decide what peers should the notification be send for (RQ-1212)
- Minor cleanup of error messages when mine cannot start (RQ-1266)
- Fix LIST PROGRESS output in scheduled Heartbeat and Daily_progress emails (RQ-1134)
- Fix possible crash setting conflict handlers for quoted table name (RQ-1262)
- Console could show dropped tables long after they were gone (RQ-1193)
- Fix: loop prevention did not affect DDL operations (RQ-1299)
- Fix memory leak on apply for non-OCI targets (RQ-1296)
- Fix possible mised rollback (RQ-1340)
- Fix possible locking with rollbacks and apply_postpone_last_lcr (RQ-881)
- Fix possible missing where clause in LOB ops (RQ-1343)
- Fix parsing of longer index keys (RQ-1224)
New in Dbvisit Replicate 2.7.04 (Aug 25, 2014)
- The following items were fixed and/or added:
- Include ALTER TABLE DROP (col1, ...) in DDL replication (RQ-1085)
- Fix possible out-of-order mine on RAC (RQ-463)
- Fix pre-all.sh script compatibility with 9i (RQ-1106)
- Fix PREPARE_SCHEMA_EXCEPTIONS when multiple delimiters were entered (RQ-1109)
- Automatically exclude nested tables from replication (RQ-1108)
- Fix possible crash by conflict with Audit enabled table (RQ-976)
- Fix use of uninitialized value in numeric ge in NotifyLite (RQ-1097)
- Rollback could be ignored if the number of undo segments was very high (RQ-1095)
- Fix undef warning for some cases of network issues (RQ-1099)
- Fix repository upgrade bug for non-Oracle targets (RQ-1114, RQ-1115)
- Fix lookahead when rollback is in next plog (RQ-1111)
- Remove warning when insufficient privileges for a log switch (RQ-1118)
- Fix in getting SCN of open transaction in all.sh (RQ-1120)
- Increase how much into the future we look for upcoming rollback on conflict (RQ-1111)
- Improve apply loop prevention to handle more complicated scenarios (RQ-1123)
- Fix possible crash when unprepared a table that is in conflict (RQ-1130)
- Fix possible UTF-8 incorrect replication on MySQL (RQ-706)
- Fix PREPARE_SCHEMA_EXCEPTIONS with LOAD instantiation (RQ-1132)
- Fix possible missing rollback to savepoint on 12c with multi-tenant (RQ-1111, RQ-1120)
- Fix missing list progress in notification emails (RQ-1134)
New in Dbvisit Replicate 2.7.02 (Jul 12, 2014)
- This is a maintenance release.
- Note: If upgrading from a previous version and running RAC, the following grant should be executed by sysdba:
- SQL> grant select on gv_$transaction to dbvrep;
- The following items were fixed and/or added:
- LOAD with NOLOCK might skip load on apply (RQ-202)
- pre-all script checks if supplemental logging is already enabled (RQ-1071)
- Reconnect on ASM read errors (RQ-965)
- All existing variables added to the console HELP (RQ-623)
- Do not show indexes etc. in list progress (RQ-1076)
New in Dbvisit Replicate 2.7.00 (Jun 27, 2014)
- NEW - 12c multi-tenant support (RQ-505)
- NEW - Nolock data instantiation. Removes the need to lock source tables during instantiation (RQ-202)
- NEW - RAW, LONG RAW and LONG support for SQL Server and mysql (RQ-751)
- NEW - 12c metadata-only default values (RQ-508)
- NEW - DDL now includes "alter table enable/disable" (RQ-446)
- NEW - Check low disk space (RQ-829)
- License could miscalculate number of tables replicated (RQ-569)
- Fixed possible fake wait for more data in redo when not necessary (RQ-700)
- Unrecoverable (nologging) operation was not detected (RQ-524)
- Proper handling of UTF8/16 source data for mysql replication (RQ-706)
- DDL replication did not auto-exclude system/hidden columns (RQ-732)
- PROCESS command replaces ENGINE for common (and documened) tasks (RQ-687)
- PROCESS SETUP command can now manually enable/disable DDL replication (RQ-694)
- Allow for PREPARE SCHEMA to skip few tables (RQ-530)
- Show unsupported direct insert (e.g. compression) as "Unrecov" in list progress (RQ-393)
- REPREPARE (and UNPREPARE) adjust apply progress count to get 100% completion (RQ-251)
- Possible crash during savepoint for non-Oracle (RQ-758)
- Hadoop output does not require non-threaded OCI (RQ-628)
- CSV (filesystem and Hadoop) now correctly populates commit timestamp (RQ-562)
- Fixed possible crash for CSV ouput (RQ-762)
- CSV (filesystem and Hadoop) now use UTF-8 output (RQ-763)
- Hadoop CSV now uses ISO 8601 format for dates, timestamps and intervals. Filesystem use similar one, but better parsable by Excel. (RQ-763)
- Proper character set conversion of source data for mysql and SQL Server (RQ-760)
- Fixes for mysql as database storage for CSV/Hadoop (RQ-774)
- Store data about files created (DBRSAPPLY_FILEOUTPUT_FILES) for CSV/Hadoop (RQ-562)
- Fixes for columns spanning multiple blocks (RQ-432)
- Ignore recursive DDL (RQ-446)
- Fix conflict lock on alter table add column (RQ-731)
- CTAS could cause harmless "Decrementing SCN" warning in apply logfile (RQ-443)
- Do not include old trace files in support package (RQ-625)
- Limit history in csv files included in support package (RQ-816)
- Set internal parameters accordingly in case of async I/O on source (RQ-325)
- Improve setup wizard questions for Oracle AWS RDS (RQ-858)
- Add option to exclude statistics in export/import (DPUMP_EXCLUDE_STATS) (RQ-861)
- Do not increase conflict count if conflict ignored as ROLLED BACK ON SOURCE (RQ-875)
- Fix default in setup wizard on rerun with dp_networklink changed to load (RQ-639)
- Added more information to DBRSAPPLY_CONFLICT_LOG (RQ-877)
- Automatically exclude DBMS_TABCOMP_TEMP_(UN)CMP (RQ-885)
- Improved diagnostics for failed connection (RQ-898)
- Setup wizard could offer options not convered by selected license (RQ-910)
- Possible apply crash/memory corruption (RQ-913)
- Mysql possible issues due to transaction isolation (RQ-775, RQ-779, RQ-942)
- Add timestamp and function name to trace file (RQ-889)
- APPLY_POSTPONE_LAST_LCR is now a documented parameter (RQ-945)
- Change question order in SQL Server settings (RQ-949)
- Support package adds output of the LIST commands (RQ-551)
- CDC commands needed restart of console to take effect (RQ-927)
- Column headers added to support package CSVs (RQ-768)
- Handle nicely ROLLED BACK ON SOURCE on non-Oracle target, too (RQ-875)
- LOAD could load some data twice if restarted on RAC (RQ-1010)
- pre-all.sh did not enable db-level minimal logging (RQ-1014)
- no-lock would lock tables unnecessarily (RQ-202)
- LOAD now supports quote-necessary tables, too (RQ-1015)
- Handle COMPATIBLE setting of 12.0 (instead of usual 12.1) (RQ-505)
- Setup wizard - fix errors in some cases of editing existing configuration (RQ-1026)
- Direct insert was ignored if data object id was different from object id (RQ-1027)
- Typos in log messages corrected (RQ-1030)
New in Dbvisit Replicate 2.6.06 (Jun 12, 2014)
- This is a maintenance release. The following items were fixed and/or added:
- Log output of running *-all script on Windows
- Fix deleting of orphaned obsolete online redo log files from mine_stage
- Fix possible notification for 'table 0'
- Do not connect to apply for auto-unprepare
- Fix possible crash due to wrong order of SCN
- Fix possible ignore of change after rollback to savepoint on RAC
- Fix possible infinite loop (mine hang) on RAC
- Fix LOB repeats where columns with row change broken into multiple row-pieces
- Better handling of unsupported datatypes in LOAD instantiation
- _ENABLE_5_19_PARSE now skips loading of all audit information, too
- Fix crash of APPLY COMMIT/ROLLBACK TRANSACTION
- Do not increase conflict count if conflict ignored as ROLLED BACK ON SOURCE
- NEWER/OLDER handlers are valid for UPDATE conflict only
New in Dbvisit Replicate 2.6.04 (May 13, 2014)
- The following items were fixed and/or added:
- Fix "ORA-01466: unable to read data - table definition has changed"
- Possible crash for stuck apply threads with rollbacks involved
- Quote column names in apply SQL
- Improve handling of RAC cross-thread rollbacks
- Allow double-quoted table names
- Update obsolete plog even if no transactions are active
- Fix grants not being replicated, added parameter DDL_REPLICATE_GRANTS
- Improved diagnostics for failed connection
- Fix errors in updating licensing measures
- Fixes in deleting obsolete redo logs
- Possible out-of-order mine just after log switch
- Possible apply crash/memory corruption
- Incorrect position of rollback to savepoint on RAC
- Limit the number of repeated notifications
- Possible crash due to use of OCI with non-Oracle target
- Possible crash due to use of OCI with non-Oracle target
- Query gv$transaction on RAC
New in Dbvisit Replicate 2.6.02 (Mar 21, 2014)
- This is a maintenance release. The following items were fixed and/or added:
- _EXIT_CONDITION renamed to REDO_READ_METHOD (RQ-688)
- Fixed possible crash with CSV output (RQ-670)
- Profiler automatically disables threaded OCI to generate proper results (RQ-650)
- FAST_NOLOG/NOLOG conflict handling would crash apply (RQ-621)
- Fix replication of NULL BFILE (#5433, RQ-703)
- Fixed possible fake wait for more data in redo when not necessary (RQ-700)
- Possible crash while parsing LOB information (RQ-756)
- Fixed possible crash for conflict on commit (#5790)
- Unrecoverable (nologging) operation was not detected (RQ-524 backport)
- Fixed possible warning in LIST PROGRESS (RQ-778)
- Set transaction isolation level to READ COMMITED for MySQL (RQ-775,RQ-779)
- Minor fixes to remove warnings for unnecessary redo data (#5828)
- Support package should not connect to other database to check connections, e.g. target database may be unreachable from source (#5828 RQ-785)
- Possible crash with NULL BFILE (RQ-738)
- Plog maintenance speed improvement (RQ-749)
- Fix PREPARE checking whether table exists on target using invalid SQL for SQL Server (RQ-801)
- Loggging of errors to database - reconnect on failure to log (RQ-806)
- Fix possible wrong where condition in LOB operation (RQ-815)
- Possible crash during savepoint for non-Oracle (backport RQ-758)
- Fix possible crash when object column was not excluded (#5894)
- Fixed some cases of wrong order of changes on RAC (#5882)
- Simple check for redo lost writes (#5886)
- Fix handling of redo >2GB (#5905)
- Fix apply memory usage with trailing NULL cols (RQ-828)
- Removed superfluos wait when reading lots of irrelevant changes (RQ-832)
- Added workarounds for ASYNC/DIRECT I/O (#5919)
- Fix cases of duplicate columns in where clause (old and suplog) (#5935)
- ORA-24344: success with compilation error in all.bat (RQ-807, #5755)
- Fix for "wrong order" of changes due to I/O limits (#5887)
- Reduce frequency of updates on DBRSMINE_RLOG_PLOG_MAP (#5951, #5944)
- Success with compilation error in all.bat (RQ-807)
- Incorrect hostname:port in setup wizard could crash it (RQ-817)
- Sort output of SHOW by variable name, then process (RQ-643)
- Fix possible BLOB corruption (RQ-836)
- "none" instantiation still created dpump script (RQ-753)
- Fix showing internal default value MSSQL instead of SQL Server (RQ-780, #5960, #5967)
- Incorrect order of rollback in plog can cause apply stuck and/or crash (RQ-852)
New in Dbvisit Replicate 2.6.00 (Jan 8, 2014)
- Enable more detailed profiling on demand
- Fix possible DDL repeat upon apply restart (but conflicting DDL will not be repeated on restart)
- NOTIFY SET/SHOW to suspend notifications
- Limited support for CSV/Hadoop target, including HDFS
- Allow @ to load tables/schemas in Step 3 of setup wizard from file
- Support for Oracle AWS RDS
- HP-UX mail fixes
- Minor questions removed from setup wizard
- Fixed possible crash of apply under memory pressure
- Improve last obsolete redo calculation speed
- Fixes in direct insert for row chaining
- Automatic heartbeat table DBRSCOMMON_HEARTBEAT
- Fix checking supported table name for lowercase chars
- Fix all.sh script for MSSQL dbvrep database drop/create
- Load does a log switch, so the LOAD files get obsolete sooner
- Removed debug messages for spill to disk from logfile
- Load sometimes not done again after mine restart
- Remove spurious warnings about "No current conflict" from the log
- Incorrect prepare of CREATE TABLE (index added, too) on big-endian possible
- Possible conflict on RAC after restart (incorrect ordering of log switches)
New in Dbvisit Replicate 2.5.18 (Dec 30, 2013)
- Fix possible apply crash with conflict and then a rollback to savepoint
- Fix mine not-resending partially-send plogs
- Better memory management on apply, also for large rollbacks
- Fix possible crash on apply lookahead
- Fix for obsolete plogs not being deleted on mine
- _ENABLE_5_19_PARSE now skips loading of all audit information, too
- STATUS_SHOW_PAST_CONFLICTS default changed to NO
New in Dbvisit Replicate 2.5.16 (Nov 27, 2013)
- Improve plog transfer in case of high number of plogs
- Fix possible crash on 9i (mine)
- Fix possible crash under memory pressure (apply)
- Fix row chaining for SUPLOG columns
New in Dbvisit Replicate 2.5.14 (Nov 18, 2013)
- Improve error reporting in network code
- Add option to always keep last LCR in queue to prevent locking
- Fix retry on checksum error, for mine and for fetcher
- Improve performance on log switch
- Fix notifications (scn/seq/time difference)
- Fix race condifition in file delivery
- Fix handling of slow v$archived_log query
- APPLY REGISTER PLOG
- added timestamp to LIST OBSOLETE REDO and the mine log
New in Dbvisit Replicate 2.5.12 (Nov 4, 2013)
- Limit number of retries in conflict (then revert to PAUSE)
- Handle better network timeouts under load - cancel incoming requests, don't let the queue grow
- Fix backup ddc file handling of __ variables
- Log pause/resume to log file
- Fix parsing of non-logging information on 9i
- Fix possible error in LOB handling (crash after conflict)
- Keep plogs/downstream redo logs longer on disk (limited by age and size)
- Make redo/plog transfer more reliable when receiver is busy processing changes
- Retire obsolete transactions: PLOG SCN set to mine_next_scn instead of the oldesct SCN
- Fix: LIST PREPARE when filtering the output (Use of uninitialized value in concatenation)
- Fix: separation of select and update in the LOB handling
- Fix: fetcher with RAC could skip some changes near log end
- Fix: possible wrong column name assigned to a column in a LOB operation
- Improvement in speed of log switch (deletion of obsolete plogs)
- Fix LIST APPLY PLOGS for MSSQL and MySQL
- Fix LIST MINE REDOLOGS for the NULL NextSCN
- Added ENGINE CLEAR PREVIOUS WARNINGS command and added to the *-setup.dbvrep script
- Network improvements when large amount of plogs were created since replication started
- Add possibility to disable automatic unstuck tries
- Remove Failed to open lofile message from support package
New in Dbvisit Replicate 2.5.10 (Oct 21, 2013)
- Fix: Testsuite 13 is waiting for the dbvrep user to disconnect
- Added ORA-22922 check to the testsuite 13
- Added _INIT_DICTIONARY_LOAD_AS_OF_SCN parameter
- Logging output of *-all.sh script, log added to the support package not for Windows)
- Fix: truncate spaces at end of SETUP_SCRIPT_PATH
- Fix: Setup Wizard-step 4: MINE cannot be changed once it was checked as "Not used, work done by MINE1."
- Setup wizard Step 4 - changes in reusing already configured MINE processes
- Fix: check memory limit a bit late, after apply queue was processed
- Fix terminal issue on HP-UX with --no-termcap
- Handle unknown DDL types in notification emails
- Fix SQL shown in conflicts
- Fix possible ODBC cast mismatch
- Allow errors to be ignored by Oracle code (APPLY_IGNORE_ERROR_CODES)
- Add option to use direct I/O (Linux only)
- RAC improvements for idle thread(s)
- Fix LIST CONFLICT for SQL Server
- Removed bogus warning message on log reopen
- Fixed possible crash on log reopen
- Fix edition setting in the Setup Wizard
- Fix: list stats all shows number of commits for both commits and rollbacks
- Fix in IOT handling on big-endian machines
- Fix: reading n+1 bytes when checking for data dictionary column changes
- Fixed various conditions for RAC restart
- Changed quoting to [] in SQL Server
- Fix missing data in create table as select (big-endian)
- SQL Server use datetime2 in conversion to dates
- Improve wording in healthcheck emails
- Fix FETCHER.MINE_PEER for one-to-many
- Improve support for RAC with disabled threads
- Notify if process seems to be hung/locked
- Datapump import would not be replicated under some circumstances
- Limit the amount of internal data replicated during initialization
- Fix SCN in list conflict
New in Dbvisit Replicate 2.5.08 (Sep 16, 2013)
- Fix: unused/hidden commands not excluded for some cases of PREPARE command
- Ordering in Suppack's CSVs
- Fix prepare table issue when upgrading from previous version
New in Dbvisit Replicate 2.5.06 (Sep 16, 2013)
- Fix: case sensitivity when setting RDBMS type in the Setup Wizard
- Fix: unknown error string when creating support package
- Fix: Use of uninitialized value $DBI::errstr in pattern match (m//)
- Fix: Added check on APPLY_RDBMS=MySQL for the set_transaction_name method
- V$ARCHIVED_LOG added to the support package
- When reloading apply LCRs from disk, do more frequent free of stuff no-longer needed
- Let fetcher honor _EXIT_CONDITION, too
- Default value for _MINE_FORCE_SCN_UPDATE_IDLE_COUNT changed to 0
- Support package fetcher includes redo logs
- Change to default path on Windows to c:\Users\%user%\Documents
- Handle missing checksums in redo logs
- Ignoreall: do not look ahead for upcomming rollback (improves speed for large number of ignored conflicts)
- Handle case when non-LONG column needs to concated from two row pieces
- Better handle failures when rotating old redologs (sent by fetcher)
- Fix error for ROLLBACK in SQL Server
- Do not truncate SQL in conflict log table
- Fix mine hang due to file locking (Windows)
- Fix: subsequent FILTER commands could be ignored until restart
- Make LIST STATUS work from command line/script
- Fix failing support package (mysql)
- Make apply respond to commands even if session is locked
- Mine LOAD performance improvements
- Fix LOB locator issue with ROLLBACK
- PROGRAM_VERSION in DBRSCOMMON_VERSION value fixed
- cfg files, onetime ddc file, grant scripts and dbsetup scripts moved to the config directory
- Handle unusued, hidden or internal Oracle columns (excldue from replication)
- Fix possible crash in applier threads during creating savepoint
- wngrade checks for version too new
New in Dbvisit Replicate 2.5.04 (Sep 9, 2013)
- LIST PREPARE shows whether table/schema is prepared with DDL and PLSQL
- Detect DataPump directory, check for CDB-specific only
- Detect corrupted plog/redolog transfer
- Fix evaluation expiry days in license bar
- Fix license expiration check
- Fix: apply starts processing LOAD sooner, sooner skips already processed load plog; fix crash on 10 million load
- LOAD option for initial load
- Honour EXCLUDE COLUMN for DDL CREATE_WITH_DICT, use this in wizard
- Minor fix in the console feedback for filter setting
- Check plog size on retransfer
New in Dbvisit Replicate 2.5.02 (Aug 19, 2013)
- New Replicate editions (LTD/XTD/MAX)
- Optionally send emails on DDL
- Fixes in rollback in apply
- Servernames added to the Win step 4 in Nexsteps.txt (creating services)
- Fix: datapump import scripts honor renames
- 9i mine did not detect proper operation for ORP
- Warning message (undef variable) with idle threads: fixed
- Fix quouting around sqlplus login
- Do not update last obsolete sequence too often if the query is too slow
- Fix crashing LIST TRANSACTIONS on Windows
- 12c support (no new features)
- Mine speed improvements
- Race condition in log read - retry
- Skip SYS dictionary updates when nothing actually happens
- Fix cases when CTAS was not detected due to newlines in DDL text
- Fix: one-to-many secondary apply fails due to plog check (UUID)
- Let mine send to apply retry the failed plogs faster
- Fix: mysql could issue SET TRANSACTION
- Fix: do not delete old plogs if no apply was ever started
- Fix: crash with apply rollback transaction
- Honor --no-termcap on Windows
- Retry failed internal SQL for DML operations
- Add NLS_LANG option KEEP_UNDEF
New in Dbvisit Replicate 2.4.34 (Aug 19, 2013)
- Fixes in rollback in apply
- Fix: datapump import scripts honor renames
- Warning message (undef variable) with idle threads: fixed
- Fix quouting around sqlplus login
- Do not update last obsolete sequence too often if the query is too slow
- Fix crashing LIST TRANSACTIONS on Windows
- Mine speed improvements
- Race condition in log read - retry
- Skip SYS dictionary updates when nothing actually happens
- Fix cases when CTAS was not detected due to newlines in DDL text
- Fix: one-to-many secondary apply fails due to plog check (UUID)
- Let mine send to apply retry the failed plogs faster
- Fix: mysql could issue SET TRANSACTION
- Fix: do not delete old plogs if no apply was ever started
- Fix: crash with apply rollback transaction
- Honor --no-termcap on Windows
- Retry failed internal SQL for DML operations
- Add NLS_LANG option KEEP_UNDEF
New in Dbvisit Replicate 2.4.32 (Aug 5, 2013)
- AIX fixes
- Fixed warning message in log for plog sequence on redo restart
- FixFinding PLOG when instantiate_scn < first plog's SCN
- Fixreread on redo checksum error
- Fixhandle unformatted redo blocks
- Fix9i suplog fixes
- EULA update
- Changed default for DISPLAY_TABLE_NAME_IN_LIST_PROGRESS to BOTH
- Fixafter obsoleting some LCRs/LOBs, we'd end up in infinite loop on next log switch
- Added version information to the support package
- Change the never-used defaults for network interfaces
- Apply memory usage improvements
- Fixdirect insert (19.1) cross-endian fixes
- Improve profiling for remote commands sent to apply
- Fixauto-retry get_log_status (FATAL-1154)
- Mineignore multi block undo
- Fixed crash in setup wizard when unable to connect to database
- Minor changes to man page and help command
- Improved error reporting for failed SMTP connections
- Auto-retry for failed SQL statements
- AIX stack trace to tracefile
- FixProcess_logger_queue does not log all the feedback
- Fixwait SCN flip for 9i
- Fixcrash after unprepare of a table while in conflict
- Add old NULL values to update/delete statements (prevent conflict on tables without PK)
- Fix rollback limit if last matched was id = 0
- Fix apply crashmissing savepoint after conflict resolved as ok/rolled back on source
- REPREPARE command
- Mine can print open transaction detail to log on log switch
- Fixold NULL values as pre-values even when not actually present
- Do not store sys/system passwords if requested by the user in the setup wizard
- Purge very old data in dbrsmine_rlog_plog_map, dbrsmine_plog_history, and dbrsapply_plog_history
- Fixed row assembly for direct insert
- Apply prints messages for rollback into the log
- Fix direct insert itl count (mine SIGSEGV crash)
- Let lookahead start at conflict LCR, not the last LCR loaded (fixes issue with mutliple rollbacks in same transaction)
- FixENGINE LOCK does not lock tables because of end-of-line character in the SCHEMA name in the command file
- FixLocking the table with unsupported table name was not handled correctly
- Trimming spaces off the ddc name in the Setup Wizard
- chmod start_console.sh in during the setup wizard
- Fixremove mine_stage redolog after retransfer that changes the filename
- Fix possible crash after apply plog transfer restart
- Replicate TRUNCATE even if DDL is not selected
- Less agressive memory cleanup under memory pressure
- Fixfeedback buffer not printed when try_connect fails
- Fixpossible crash with large trace messages in apply threads
- Fixuse LCR plog id, not current plog id when creating savepoints - fixes conflicts due to incorrect rollbacks
- Lookaheadspan redologs
- Lookaheadfix case when it would ignore rollback just next to the conflict LCR
- Do not add IS NULL to where condition if the colmuns is LOB or LONG
- Mark skipped LCRs, so they won't be tried again during rollforward
- Fix warning (process not chosen) in one-to-many configurations
- Add RBA to watchdog messages
- Make apply session lock detection RAC-aware
- APPLY ROLLBACK TRANSACTION
- License bar added.
- Make APPLY ROLLBACK TRANSACTION work to transaction that has yet to come.
- Minor fixes for the command HEALTHCHECK FOR
- Revamp rollback in mine to make it simpler and more reliable
- DDL CREATEproperly set INTERVAL precisions
- Fix crash when we try to recconect to database after ORA error
- Do not abend if upcomming archive log is missing; instead send email and wait for the file to be restored
- Fix detection of mine init complete - check exactly this run of all.sh
- Completely ignore SIGPIPE (remove the console message)
- Variable _APPLY_MYSQL_WAIT_TIMEOUT added, session variable wait_timeout is set accordingly when connecting to target MySQL
- Do not include ROLLED BACK ON SOURCE in conflicts (change default behaviour)
- Server names added to the Nextsteps.txt
- Don't print WARN-4504 if the issue is Broken pipe
New in Dbvisit Replicate 2.4.30 (Jun 1, 2013)
- Fix memory leak on mine (non-replicated table data)
- Fix: HELP record for the DUMP command
- Handle limit of 33 columns in supplemental log group (9i), do not try to enable the supplemental logging if already done (prevents DDL lock)
- Honor kill -12 even while in C OCI call
- MSSQL renamed to SQL Server
- Show a more friendly database description in setup wizard (mysql/SQL Server)
- DISPLAY_TABLE_NAME_IN_LIST_PROGRESS to govern what table name to show when rename is used
New in Dbvisit Replicate 2.4.28 (May 20, 2013)
- Fix: removal of obsolete redologs could delete actual archivelogs or online logs, even those not sent by fetcher
New in Dbvisit Replicate 2.4.26 (May 20, 2013)
- Fix LIST STATS for mysql target
- OFF for notification time would evaluate as midnight
- No support package for simple db connectivity errors
- Small fixes in the test emials sent by NOTIFY SENDQ
- Changed logo in notification emails
- Fix: obsolete redologs were not deleted by mine (fetcher in use)
- Fix: improve mine speed in case of large history of DDL changes
- Support TRUNCATE for mysql and MS SQL
New in Dbvisit Replicate 2.4.24 (May 11, 2013)
- Fix crash due to incorrect parse of index operation (kdxbur
- Fix numbering of columns in supplemntal logging for LOB operations
- Improve speed for non-replicated partitioned tables
- SHOW now displays a message when no such variable exists
- Add current threshold to notification emails for time differenc
- Fix: added SNMP trap for time difference
- Improve error messaging when the operation fails (change text for OK-0)
- Fix some cases when crash would create two support packages instead of one
- Fix: auditing information could contain excess binary characters
- Remove [] non-described tables from list progress, use list progress (not all) in daily progress
- Fix: PL/SQL would see only first column of primary key
- Fix: IOT: distinguish between key and other columns
- Fix: advance SCN even when some of RAC threads are idle
- Fix: crash during ENGINE LOCK run from console
- Fix: check RBA limits properly on restart (even pre-start SCN)
- Fix: log packaging sometimes failed with fetcher configuration
- Fix: WAN/LAN setting in the setup wizard was ignored
- Fix: allow OFF for time values
- Fix: memory usage for big-endian (signature merging)
New in Dbvisit Replicate 2.4.22 (Apr 9, 2013)
- Fix LIST STATS on MSSQL
- CLEAR APPLY COUNTERS now sets conflicts counts for all tables to zero, as expected
- Fix of notification thread crash due to invalid dates
- Ignore DROP INDEX BIN$..$ (purge recyclebin)
- Fix support package apply on MSSQL
- Increase max number of threads for RAC to 16
- Fixes for logging of errors to COMMON_ERRORLOG
- Fix check for prepare schema on MSSQL
- Fix incorrect parsing of start transaction/commit for undo segments number > 116
- Fix: index information was not updated by mine, thus IOTs created after *-all.sh could not be prepared
- Fix: store previous values to rec_key for PL/SQL handler
- Change the never-used defaults for network interfaces
- Make sure *.ORACLE_HOME is never persistently set
- Fix: restart of plog transfer could result in a change in array-DML to be applied twice
- Add age in time for last obsolete redo seq#, add it to daily progress
- Enable NOTIFY_TIME_DIFFERENCE
- Cleanup of LIST PREPARE output (dropped tables)
- Setup wizard: allow for one-to-many with same target database
- Fix NOTIFY SEND commands in console
- Fix: support for redologs > 2GB
- Fix: redologs were not considered obsolete
- Fix: non-Oracle target could conflict upon apply restart
- Fix: notify for time difference would forget past violations if there is no information on the lag now
New in Dbvisit Replicate 2.4.20 (Mar 15, 2013)
- Do not generate support packages and notify emails during orderly shutdown, even if fatal error is raised
- Add notification for current conflict waiting for resolution
- Fix possible crash due to improper first-time unpacking
- Fix various bugs: some notifications not being sent
- Added wait so impdp does not complain about table definition changed
New in Dbvisit Replicate 2.4.18 (Mar 9, 2013)
- Fixupdate on SYS dictionary could cause mine to stop reading changes to dictionary
- Fixchange on plog boundary in RAC could be ignored due to RBA low limit
- Use fast loop prevention in most simple configurations
- Fixrestart on RAC could miss changes from a thread
- Fixtransfer restart could apply a LOB change twice when it was split into multiple chunks
- Fixreparsing a plog could lie that the file was parsed to exactly same as before
- Use default conflict handlers if no handler is defined / the conflict is global (with no particular table)
- Fixon 11.2, LOBs could be blank/zero-padded to chunk size
- Fixpossible crash during mine start (buffer overrun in dictinary load)
- Fixconfusing typo in setup wizard (colon/semicolon)
- Improved messages in *-dbsetup.sql scripts
- Less verbosity in log for network errors
- Fixsupport package mine when fetcher and ASM is in use failed to detect ASM instance
- Make sure mine never starts with redo that is in the middle of a non-assembled row or LOB operation
- Fix possible apply crash when plog was not sent completely
- Stop updating status bar during exec/!
- Fix visual issue in Windows console (list progress lines missing newlines)
- Fix conflict due to mismatched binds due to statement caching with CTAS and trailing NULL columns
New in Dbvisit Replicate 2.4.16 (Feb 18, 2013)
- Rudimentary support for direct load with LOBs
- RBA stored in changes could be nonunique, leading to conflicts due to duplicate SQL on transfer restart
- Transaction name was sometimes not populated in CDC/Audit
- Fixes for various unusual one-to-many configurations
- List progress in status bar did not properly filter out dbvrep tables when non-default DBVREP users were used with multiple replications
- Changes could be ignored on restart due to LWN reorder
- Fixes for APPLY COMMIT TRANSACTION
- List progress sometimes showed garbage (raw rate statistics data)
- Some dictionary changes could be ignored
- Table names were not uppercased in grant scripts when non-Oracle db was involved
- Support manually (or by Dbvisit Standby) compressed archive logs
- Check if archivelogs exist, try other ones if not
- Auto-adjust number of tables shown in list progress in status bar to fit on the screen
- Add a "COPY" option to the Setup Wizard to copy CDC/Audit settings from previous table
- Added LIST+STATUS and LISTALL+STATUS as valid values for STATUS_BAR (word order)
- Remove misleading outpout when variable is not actually set when value fails checks
- Support package mine checks that the redo log has not been overwritten and falls back to v$archived_log
- Delete obsolete audit info
- Suppress extra error messages about non-matched LCRs during transaction rollback (mine log)
New in Dbvisit Replicate 2.4.14 (Feb 8, 2013)
- RAC restart caused conflict: lower RBA limit could be ignored
- LOB operations were always treated as ERROR, never as NO_DATA_FOUND
- UNPREPARE and FILTER are now online operations, no restart is needed
- Some commands do not work unless DDC is loaded - let the commands throw an error in such case
- Create desktop shortcut for start-console.bat
- Faster lookahead for discard etcconflict resolution
- Fix in LOB supplementally logged columns
- Apply could crash due to mishandling of NULL-values INTERVAL datatypes
- Fix warning about undefined min_RBAsubseq
- New column for CDC/Audit: transaction name
- i fix: adding supplemental log could fail due to duplicate column names
- LIST TRANSACTIONS command to show uncommitted transactions on apply
- APPLY COMMIT TRANSACTION command
- Fix: checking RBA limits for RAC restart could cause a change to be skipped when LWN reorder was in place
- Improve speed of SUPPORT PACKAGE
New in Dbvisit Replicate 2.4.12 (Jan 22, 2013)
- Decrease size of support packages
- Better handling of crashes in threaded apply
- Fix SIGBUS error in IOT handling (Sparc)
- Improve performance of apply - do not update id-name mapping so often
- Fix repository upgrade to 2.4.04
- Improve threading support
- Handle wrongly parsed suplog when it looks like LOB
- Row assembly could make LOB ops to be places before actual row SQL
- Fix: mine crashed when RAC node that was down when mine started came back up
- Fix: detect ORA-32588 (suplog already set) even if it is not the first error in the stack
- Fix: set_conflict_handler always returned "Apply does not seem to be running"
- Disable profiling in threads to avoid race conditions
- Use UPDATE handler for LOB operations, too
- All tables and columns are now commented
- all.sh/bat script returns error code on failure
- Setup remembers DBID of databases and dbvrep then checks them (i.e.verify the TNS are set consistenly across the nodes)
- Improve LIST CONFLICT if no conflict ever happened and/or incorrect replication was chosen.
- RAC restart caused conflict: even if redo log has no RBA limits, look to previous logs to establish the minimum
New in Dbvisit Replicate 2.4.10 (Jan 3, 2013)
- Network failure on apply could lead to invalid file name used
New in Dbvisit Replicate 2.4.08 (Jan 3, 2013)
- Add trailing NULL columns to inserts (works only if no metadata-only default is applied)
- DDL support for RENAME
- Fix crash in two-way replication (dict caching)
- CHOOSE REPLICATION command
- Fixes for big-endian platforms
- Fix parsing of update of trailing collumns to NULL
- Fetcher and Mine: if cannot connect to mine/apply, do not assume it wants all logs again
- Fetcher: handle disconnects more gracefully
- Fetcher: fix crash due to incorrect checksum after redo log reopen
New in Dbvisit Replicate 2.4.06 (Dec 17, 2012)
- Fix possible apply crash (introduced in 2.4.04)
- Fix crash due to prepare schema
- Fix: lists stats did not store/show lag
New in Dbvisit Replicate 2.4.04 (Dec 17, 2012)
- Setup wizard: handle case when ASM is used, but no ORACLE_HOME is detected
- Lookahead did not detect rollback to savepoint
- Fix crash with online prepare schema
- Show ASM instance information
- Reduce apply memory usage when needed (plog dict cache)
- Use MINE_ASM=OFF to ignore logs in ASM
- Resilence to RAC node restarts and subsequent past SCNs written to redo
New in Dbvisit Replicate 2.4.02 (Nov 29, 2012)
- Fix repository upgrade from 2.3
- Fix list stats run before apply did anything
New in Dbvisit Replicate 2.4.00 (Nov 26, 2012)
- Support for table clusters and index-organized tables
- LIST STATS statistics for throughput and lag
- dbvrep console output paging
New in Dbvisit Replicate 2.3.36 (Nov 26, 2012)
- Fix LOB conflict when a colum contained '#' character
- Fix licensing keys with fixed end date
- Change default speed of watchdog (and thus speed of lock detection)
- Let watchdog handle self-locks (e.gdue to eqneue on ITL); these are to be waited out
- Various small fixes for rollback handling (mine)
- Fix: with fetcher, mine could skip trailing data in online redo when fetcher was slow to deliver it
New in Dbvisit Replicate 2.3.34 (Nov 13, 2012)
- Fix for 2-way replication with instantiation SCN set manually
- Fix for choose process
- LIST CONFLICT LAST
- Fix of newer/older conflict handlers
- Fix of mine memory leak (Oracle dictionary changes)
- Default rename for MSSQL tables
- Fix race condition in mine plog caching with row assembly
- Fix for MSSQL - date columns
- Fix for MSSQL - filter conditions
- Remember which obsolete plogs were already deleted
- Fix handling of filtering errors
- Fix memory leak in apply (column name/type caching)
- Fix online prepare on MSSQL with table rename
- Fix speed of LONG operations
- Handle of case when excluded table cannot be found in dictionary
- Fix in plog redelivery (apply did not recognize it was delivered)
- Fixes in fetcher reconnects
- Fixes in updates (Oracle can omit trailing NULL columns)
- Fix error message when read/readddc cannot open file
- Added manpage for the dbvrep and dbvreport executables
- Fix: apply loop prevention was ignored when marking plog cache as written
- Fix: handle case when CTAS has no dictionary info (create invalid SQL instead of hard crash)
- Fix: dictionary not updated (negative lower SCN part)
New in Dbvisit Replicate 2.3.32 (Oct 8, 2012)
- Fix messages in status bar (mine waiting for fetcher)
- MSSQL database in DDL scripts
- Fixes in wizard for Reporting
- Allow to specify the fixed value for invalid dates
- Fix of reload under memory pressure
- Fix of process name for Reporting
- Fix of 2-way initialization
- Fixes for Oracle 9i
- Fix of assembly with LMN
- Fix of ignored changes when setting SCN back (resetlogs or similar instantiation)
- Notify should not complain for a table with 0/0 rows replicated (treat is as 100%, not 0%)
New in Dbvisit Replicate 2.3.30 (Oct 8, 2012)
- Added option for debug messages for fetcher
- Fetcher could get stuck upon completing online redo
- MySql grants in setup wizard
- Fixed crash in mine dictionary SQL on big-endian
- Skip external tables, IOT overflow and IOT mapping tables from schema prepare and grants
- Fixed crash on mysql/mssql conflicts
- Fixed apply crash under memory pressure
- Improved detail shown in status bar about fetcher
- Fix handling of NULL LOBs as pre-/key- values
New in Dbvisit Replicate 2.3.28 (Oct 8, 2012)
- Ask for MS SQL server name, skip grants in scripts
- Remove CLOB from where condition even when NULL
- Directly pass numbers and dates to OCI
- Further lookahead for upcoming rollback
- Memory management fixes
- Don't consider remote archivelogs (Dataguard)
- Fix - sometime one too many changes were rolled back on rollback to savepoint
- Fix - transaction conflict handler
- Detect invalid date values and set them to NULL
- Disable DDL for CDC tables
- Fix incorrect parsing of notify intervals (could lead to excess cpu usage)
- Fix incorrect apply counter (rolled back transaction)
- Fix crash when mine opened empty redolog (e.g. with fetcher)
New in Dbvisit Replicate 2.3.26 (Oct 8, 2012)
- Reduce permissions on files created by setup wizard
- Fix slash conversion (mixed Windows-Linux/Unix configurations)
- Fix locks on MSSQL
- Fix of handling of numbers with many decimal places (>10)
- Fix in plog size reduction
New in Dbvisit Replicate 2.3.24 (Oct 8, 2012)
- Speedup apply on LOBs
- Prevent multiple running processes for the same DDC/process name
- Fix rollback on large transactions (mine); optimize the lookup
- Fix LONG assembly
- Fix suplog error messages for IOT
- Change network key generator (could sometime fail)
- Add possibility to limit command line length for impdp/expdp/exp
- MSSQL/mysql fixes (specify server on command line, specify TNS_ADMIN)
- EXCLUDE/INCLUDE CREATE TABLE
- Remove some superfluous questions from the setup wizard.
- Fix resetlogs instantiation
- Detect our datapump jobs and don't replicate them (useful for two-way replications)
- MSSQL module missing
- Reduce plog size by caching column and object info
- Improve speed for array-insert/delete and direct p
- Added more log switches to setup.dbvrep script
- Shortening of column names if CDC prefix makes them too long
New in Dbvisit Replicate 2.3.22 (Oct 8, 2012)
- Added "dump open_cursors", enabled on demand
- Handle special case of rollback to savepoint
- Fix for too many open cursors
- Fix: segment violation in CTAS memory cleanup
- Fix: LOB replication would skip chunks of odd length
- Fix: LOB locator query caching could select wrong LOB column
- Fix: rollback to savepoint could skip/rollback too many changes
- Improve mine speed (skip unneeded changes)
- Improve mine startup speed (handle better large audit session history)
- DDL create honours NOT NULL constraints
- Minor fixes in conflict handling (newer, older, sql)
- Allow easyconnect connection string in DP_PREPARE command
- RESOLVE CONFLICT as OVERWRITE
- Fixed memory leak for large transactions (mine)
- PREPARE AS OF scn
- Fixed memory leak for RAW columns (apply)
- Fix ORA-01041: inserted value too large for column (too long string value in bind)
- Fix formatting error with Unicode values in no-bind SQL text in conflict table
- Fix NCLOB support (properly set charset form to SQLCS_NCHAR)
New in Dbvisit Replicate 2.3.20 (Oct 8, 2012)
- Fix: LWN reorder could cause incorrect order of redo log entries
- Lower memory usage on mine for large transactions (spill to disk)
- On conflict with too-many-rows, the conflicting statement is rolled back
- New way of resolving a conflict: FORCE (execute the statement, do not roll it back in case of conflict) - this is different from IGNORE for TOO_MANY errors only
- Fix: small numbers (from 0 to 0.001) could be in some cases still truncated
- Fix: running process could stop seeing variable values, causing mine abort
- OCI_COMMIT_MODE variable can be used to set different commit options on apply (e.g. NOWAIT BATCH)
- LIST conflict did not show conflict on mysql
- Setup wizard asked for PL/SQL replication schemas even for mysql/MSSQL
- DDL was not parsed properly on big-endian platforms
- Apply speed improvement (lazy current_scn, trigger-fire-once on login only)
- Fix: create user could crash mine
- Fix: conflict statement/transaction rollback followed by apply shutdown would cause wrong start point for next apply startup, resulting in transactions being applied twice, thus conflicting
- Fix: conflict resolution can lock up apply
- Fixes for 9i
- Fix: DDL scripts for mysql/MS SQL did not convert Oracle DATE to DATETIIME as they should
- Show Unicode strings using UNISTR function
New in Dbvisit Replicate 2.3.18 (Oct 8, 2012)
- Fix: setup missed grants needed to replicate DDL on views
- Fix: row migration with supplemental logging in CFA rowop
- Fix: disallow empty schema name in wizard