Strange behaviour in 1.0.1.224

Compares and synchronizes Oracle data

Moderators: eddie davis, richardjm, Michelle Taylor, alice.easey

Strange behaviour in 1.0.1.224

Postby jspibey » Wed Nov 24, 2010 5:30 pm

Hi,

I'm currently testing out DC for Oracle v1.0.1.224 64Bit on Windows 7 and I've had a few strange things happen

- After performing a comparison, click on the 'Edit Project' -> 'Tables' and I get the error 'The schema MYSCHEMA does not exist in the database'. Obviously it does exist otherwise I wouldn't have been able to do the initial comparison

- When I've done a comparison, I double-click the Direction arrow between the two hosts to indicate I want to reverse the comparison. The UI changes but when I click Synchronise, the information there suggests that the actual synchronisation hasn't been reversed.

- I get a warning about a column mapping error (VARCHAR column size difference) but this is in the wrong direction and also shown for a table which hasn't been included in the synchronisation

Thanks

James
jspibey
 
Posts: 15
Joined: Thu Sep 28, 2006 2:25 pm

Postby jspibey » Wed Nov 24, 2010 5:32 pm

And I also just generated a crash




Bug report generated at 24/11/2010 16:31:30
Program version 1.0.1.224

System.Exception: When synchronising couldn't execute the statement:
DECLARE
null_value CHAR(1) := NULL;
statement1 CHAR(103);
BEGIN
statement1 := 'INSERT INTO \"TWEBSITE\".\"ACCESS_REQUESTS\" (USERNAME,ROLENAME,DATE_APPLIED,NOTES) VALUES (:0, :1, :2, :3)';
EXECUTE IMMEDIATE statement1 USING 'aparr', 'scg', TO_DATE('29/OCT/2010AD 18:21:27','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'areed', 'kpi', TO_DATE('21/JUL/2010AD 13:05:20','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'awarry', 'bi_employees', TO_DATE('23/NOV/2010AD 10:41:27','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'awarry', 'scg', TO_DATE('23/NOV/2010AD 10:41:05','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'carmel occhini', 'bi_bsa', TO_DATE('16/NOV/2010AD 10:32:10','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'carmel occhini', 'kpi', TO_DATE('16/NOV/2010AD 10:32:05','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'clittlejohn', 'bi_bsa', TO_DATE('23/JUN/2010AD 16:30:21','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'cxgraham', 'bridgwater', TO_DATE('15/NOV/2010AD 12:50:51','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'dawn webster', 'scg', TO_DATE('12/AUG/2010AD 13:52:40','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'eblackwell', 'bi_bsa', TO_DATE('22/NOV/2010AD 11:34:50','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'eblackwell', 'bi_employees', TO_DATE('28/OCT/2010AD 11:05:28','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'guisey', 'kpi', TO_DATE('29/JUL/2010AD 13:04:08','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'jeffnagy', 'bi_customers', TO_DATE('26/MAY/2010AD 16:55:05','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'jeffnagy', 'salesdb_confed', TO_DATE('26/MAY/2010AD 17:04:00','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'jeffnagy', 'scg', TO_DATE('26/MAY/2010AD 17:06:35','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'jtownsend1701', 'bi_bsa', TO_DATE('12/NOV/2010AD 16:24:28','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'jtownsend1701', 'kpi', TO_DATE('12/NOV/2010AD 16:25:17','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'karencullen', 'bi_bsa', TO_DATE('17/NOV/2010AD 11:16:30','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'kaujla', 'bi_customers', TO_DATE('26/MAY/2010AD 18:20:42','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'kwhittle', 'bi_customers', TO_DATE('15/NOV/2010AD 12:48:46','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'kwhittle', 'bi_employees', TO_DATE('15/NOV/2010AD 12:45:50','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'kwhittle', 'kpi', TO_DATE('15/NOV/2010AD 12:48:33','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'kwright', 'bi_bsa', TO_DATE('12/NOV/2010AD 14:30:51','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'michalafoott', 'kpi', TO_DATE('08/NOV/2010AD 09:32:56','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'mmcclue', 'bi_bsa', TO_DATE('26/OCT/2010AD 15:49:56','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'mmcclue', 'bi_customers', TO_DATE('26/OCT/2010AD 15:50:03','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'mmcclue', 'bi_employees', TO_DATE('26/OCT/2010AD 15:49:34','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'mwinslet', 'bi_customers', TO_DATE('24/AUG/2010AD 15:31:26','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'mwinslet', 'rangemanagement', TO_DATE('24/AUG/2010AD 15:32:08','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'mwinslet', 'scg', TO_DATE('24/AUG/2010AD 15:31:38','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'pway', 'bi_employees', TO_DATE('22/NOV/2010AD 12:12:01','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'pway', 'rangemanagement', TO_DATE('22/NOV/2010AD 12:14:41','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
EXECUTE IMMEDIATE statement1 USING 'rhullafont', 'dc_kpi', TO_DATE('24/JUN/2010AD 09:15:09','DD/MON/YYYYBC HH24:MI:SS', 'nls_date_language=ENGLISH'), null_value;
END;
---> Devart.Data.Oracle.OracleException: ORA-01031: insufficient privileges
ORA-06512: at line 6
at Devart.Data.Oracle.bo.b(Int32 A_0)
at Devart.Data.Oracle.an.a(Int32 A_0, a4 A_1)
at Devart.Data.Oracle.OracleCommand.InternalExecute(CommandBehavior behavior, IDisposable disposable, Int32 startRecord, Int32 maxRecords, Boolean nonQuery)
at Devart.Common.DbCommandBase.ExecuteDbDataReader(CommandBehavior behavior, Boolean nonQuery)
at Devart.Data.Oracle.OracleCommand.ExecuteNonQuery()
at RedGate.Oracle.Common.OracleStatementExecutor.Execute()
--- End of inner exception stack trace ---
at RedGate.Oracle.Common.OracleStatementExecutor.Execute()
at RedGate.Oracle.Compare.EngineController.Data.DataCompareEngine.#t.#O3c.#w0X()
at RedGate.Shared.Controls.ProgressDialogEx.e()
jspibey
 
Posts: 15
Joined: Thu Sep 28, 2006 2:25 pm

Postby neil.anderson » Thu Nov 25, 2010 12:54 pm

Hi James,

Thanks for testing Data Compare and for giving us this information. We are investigating the issues you reported.

Can you tell us what you mean by "the information there suggests that the actual synchronisation hasn't been reversed."? Is that information the script, the warnings or the summary?

Your second post gives an Oracle error ORA-010301: insufficient privileges which suggests that the user you are logged in as on the target does not have permission to update the table "TWEBSITE"."ACCESS_REQUESTS".

Thanks,
Neil
neil.anderson
 
Posts: 64
Joined: Tue Sep 28, 2010 2:17 pm

Postby jspibey » Thu Nov 25, 2010 2:07 pm

Hi Neil,

I have managed to reproduce the issue with the following steps

1. Open data compare and select my destination on the left and my source on the right and the 'compare to' arrow pointing towards the left (Yellow Background).

2. Run comparison

3. Run Synchroinisation Wizard, then select Next to view synchronisation script.

4. In the window, the generated SQL is referring to updating my Source database even though the direction of update is to my destination (i.e. database scripts say 'UPDATE SOURCE SET Blah ' when they are actually to be executed on the destination

Any yes I understand the crash was due to insufficient privilleges but should that have crashed Data Compare?

Thanks

James
jspibey
 
Posts: 15
Joined: Thu Sep 28, 2006 2:25 pm

Postby neil.anderson » Thu Nov 25, 2010 5:43 pm

Hi James,

Thanks for the steps, we have been able to reproduce and fix the sync direction bug you found.

We have also fixed the warning bug.

You are right, an error like that should not crash Data Compare. We will investigate handling that one more gracefully.

We will have a new build ready soon with these changes.

Thank you for trying the tool and giving us your feedback,
Neil
neil.anderson
 
Posts: 64
Joined: Tue Sep 28, 2010 2:17 pm


Return to Data Compare for Oracle EAP

Who is online

Users browsing this forum: No registered users and 0 guests