Bug 128315 - CRASH - attempting to reconfigure IP address using MySQL Native Connector ODB
Summary: CRASH - attempting to reconfigure IP address using MySQL Native Connector ODB
Status: VERIFIED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Base (show other bugs)
Version:
(earliest affected)
6.2.8.2 release
Hardware: All All
: high major
Assignee: Not Assigned
URL:
Whiteboard:
Keywords: bibisected, bisected, haveBacktrace, regression
Depends on:
Blocks:
 
Reported: 2019-10-22 06:37 UTC by Alex Thurgood
Modified: 2019-10-31 09:42 UTC (History)
4 users (show)

See Also:
Crash report or crash signature:


Attachments
Sample Trace on crash (104.21 KB, text/plain)
2019-10-24 07:13 UTC, Alex Thurgood
Details
bt with debug symbols (12.25 KB, text/plain)
2019-10-27 09:43 UTC, Julien Nabet
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alex Thurgood 2019-10-22 06:37:20 UTC
Description:
1) Open an ODB file configured to connect to a mysql instance using the native connector.

2) Now call up the Database Properties dialog, either via the menu or right mouse button click on one of the workspaces.

3) Try and change the IP address, e.g. from localhost, or 127.0.0.1 to another hostname or IP address of a running mysql instance.

4) Click on OK >> Crash

5) Crash recovery dialog launched, but restore leads to repeat crash/recovery cycles.

6) If one ignores the recovery step, reload the ODB file, then repeat the attempted change and click on the Cancel button instead of OK >> Crash, bis repetita...


Tested with 

Version: 6.3.2.2
Build ID: 98b30e735bda24bc04ab42594c85f7fd8be07b9c
Threads CPU : 4; OS : Mac OS X 10.15; UI Render : par défaut; VCL: osx; 
Locale : fr-FR (fr_FR.UTF-8); Langue IHM : fr-FR
Calc: threaded


but also reproduced with LO6282.


Steps to Reproduce:
See description

Actual Results:
Repeated and systematic crash

Expected Results:
Should not crash. Should allow user to change database connection settings, in particular the IP or host to which connection is to be made.


Reproducible: Always


User Profile Reset: Yes



Additional Info:
Comment 1 Alex Thurgood 2019-10-22 06:39:21 UTC
This bug prevents users from cloning an existing ODB file and reconfiguring the connection settings, for example to point to a new server.

This previously worked flawlessly.
Comment 2 Alex Thurgood 2019-10-22 06:40:22 UTC
FWIW, using a Connector/J, I can change the server setting and get no crash. The changes are saved and I can reload the ODB file after saving and connect to the newly configured instance.
Comment 3 Alex Thurgood 2019-10-22 07:26:22 UTC
LOL, no crash with

Version: 6.4.0.0.alpha0+
Build ID: 76bcbdc67f1b22a45c90bfbfdff715465f403a66
CPU threads: 4; OS: Mac OS X 10.15; UI render: default; VCL: osx; 
Locale: fr-FR (fr_FR.UTF-8); UI-Language: en-US
Calc: threaded

did I miss something ?
Comment 4 Xisco Faulí 2019-10-23 14:15:06 UTC
Does it crash in LibreOffice 6.3.2.2 but not in master? what about LibreOffice 6.3.3 ?
Comment 5 Alex Thurgood 2019-10-24 06:30:37 UTC
Crashes also in 

Version: 6.3.3.1
Build ID: f41f4c7f9507aeca13cb9df51f34d80e8ba30a99
CPU threads: 4; OS: Mac OS X 10.15; UI render: default; VCL: osx; 
Locale: fr-FR (fr_FR.UTF-8); UI-Language: en-US
Calc: threaded
Comment 6 Alex Thurgood 2019-10-24 07:13:21 UTC
Created attachment 155273 [details]
Sample Trace on crash

The crash seems to occur in this part, when disposing the dialog :

2604 non-virtual thunk to dbaui::OGenericUnoController::dispatch(com::sun::star::util::URL const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)  (in libdbulo.dylib) + 64  [0x17cbf7720]
    +                                                                                                           2604 dbaui::OGenericUnoController::executeChecked(com::sun::star::util::URL const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)  (in libdbulo.dylib) + 263  [0x17cbfa6c7]
    +                                                                                                             2604 dbaui::OApplicationController::Execute(unsigned short, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)  (in libdbulo.dylib) + 4378  [0x17cb7cbca]
    +                                                                                                               2604 dbaui::OApplicationController::openDialog(rtl::OUString const&)  (in libdbulo.dylib) + 1918  [0x17cb99d7e]
    +                                                                                                                 2604 dbaui::ODataSourcePropertyDialog::~ODataSourcePropertyDialog()  (in libdbulo.dylib) + 29  [0x17cdb67ad]
    +                                                                                                                   2604 dbaui::ODatabaseAdministrationDialog::~ODatabaseAdministrationDialog()  (in libdbulo.dylib) + 193  [0x17cdd3f81]
    +                                                                                                                     2604 svt::OGenericUnoDialog::destroyDialog()  (in libsvtlo.dylib) + 73  [0x102469c09]
    +                                                                                                                       2604 dbaui::ODbAdminDialog::~ODbAdminDialog()  (in libdbulo.dylib) + 14  [0x17cc725fe]
    +                                                                                                                         2604 SfxTabDialogController::~SfxTabDialogController()  (in libsfxlo.dylib) + 397  [0x100e73afd]
    +                                                                                                                           2604 virtual thunk to dbaui::MySQLNativePage::~MySQLNativePage()  (in libdbulo.dylib) + 39  [0x17cca40f7]
    +                                                                                                                             2604 dbaui::MySQLNativePage::~MySQLNativePage()  (in libdbulo.dylib) + 237  [0x17cca3e9d]
    +                                                                                                                               2604 SalInstanceBuilder::~SalInstanceBuilder()  (in libvcllo.dylib) + 14  [0x1031c524e]
    +                                                                                                                                 2604 SalInstanceBuilder::~SalInstanceBuilder()  (in libvcllo.dylib) + 138  [0x1031dc01a]
    +                                                                                                                                   2604 VclBuilder::~VclBuilder()  (in libvcllo.dylib) + 19  [0x102e35d73]
    +                                                                                                                                     2604 VclBuilder::disposeBuilder()  (in libvcllo.dylib) + 56  [0x102e35fe8]
    +                                                                                                                                       2604 VclPtr<vcl::Window>::disposeAndClear()  (in libvcllo.dylib) + 95  [0x102e361cf]
    +                                                                                                                                         2604 Edit::dispose()  (in libvcllo.dylib) + 870  [0x102f2f746]
    +                                                                                                                                           2604 vcl::Window::dispose()  (in libvcllo.dylib) + 3481  [0x102ef6c19]
    +                                                                                                                                             2604 VclPtr<vcl::Window>::disposeAndClear()  (in libvcllo.dylib) + 95  [0x102e361cf]
    +                                                                                                                                               2604 vcl::Window::dispose()  (in libvcllo.dylib) + 3174  [0x102ef6ae6]
    +                                                                                                                                                 2604 ImageLoader::trieWalk(unsigned char const*, unsigned char const*, char const*)  (in dyld) + 183  [0x10e2d51c7]
    +                                                                                                                                                   2604 _sigtramp  (in libsystem_platform.dylib) + 29  [0x7fff70603b1d]
Comment 7 Julien Nabet 2019-10-27 08:04:35 UTC
On pc Debian x86-64 with master sources updated today, I could reproduce this with LO Debian package 6.3.2.2 (+gen rendering not with gtk3 rendering) but not with master sources updated today.
Comment 8 Julien Nabet 2019-10-27 09:43:08 UTC
Created attachment 155337 [details]
bt with debug symbols

On pc Debian x86-64 with 6.3 branch sources updated today + gen rendering, I could reproduce this.

(I don't reproduce this with gtk3 rendering)
Comment 9 Julien Nabet 2019-10-27 10:39:56 UTC
uncc myself, I can't help here.
Comment 10 Xisco Faulí 2019-10-29 13:18:21 UTC
This issue got fixed by https://cgit.freedesktop.org/libreoffice/core/commit/?id=2598f8a127c6ce2ec85a0d1ae1b1c706951e4e9d

@Caolán, Could it be backported to 6.3 branch ? I tried but I got a merge conflict
Comment 11 Xisco Faulí 2019-10-29 13:25:47 UTC
Just for the record: Regression introduced by https://cgit.freedesktop.org/libreoffice/core/commit/?id=1fccdde12a27379ed75463ba175732b72265eb70
Comment 12 Caolán McNamara 2019-10-29 14:01:01 UTC
https://gerrit.libreoffice.org/#/c/81683/ for 6-3 backport
Comment 13 Xisco Faulí 2019-10-31 09:42:50 UTC
(In reply to Caolán McNamara from comment #12)
> https://gerrit.libreoffice.org/#/c/81683/ for 6-3 backport

Patch was already submitted -> https://cgit.freedesktop.org/libreoffice/core/commit/?h=libreoffice-6-3&id=09dfad2098d1737c0519c8ad74dd67b4292e73d1

Verified in

Version: 6.3.4.0.0+
Build ID: e93e0fb7ac8f14230434653e5d5f318707712667
CPU threads: 4; OS: Linux 4.15; UI render: default; VCL: gtk3; 
Locale: ca-ES (ca_ES.UTF-8); UI-Language: en-US
Calc: threaded