On my work we use database on Firebird. Firebird works ok. For us will be great to work with database using Libreoffice Base. But on Linux 64 bit it not works. On windows 32 bit it works, connecting to Firebird using ODBC. I have downloaded from FirebirdSQL.org driver OdbcFb-LIB-RC2-2.0.0150.amd64.tar.gz and source OdbcFb-Source-RC2-2.0.0150.tar.gz Then I have read files in source_dir/Install/Linux of OdbcFb-Source and have done what there written. Database employee.fdb become registered in system. Then I tried to open this database with Base using ODBC. Office hangs and behaves like fork-bomb (consumes almost all system resources). I was needed to kill office. When I start WireShark, I see that when office connects to Firebrid, it reads information about database, tables, some other information, then hangs keeping connection alive. When i kill office, connection closes. Numer of TCP port is 3050. On site FirebirdSQL.org I found mention about this problem, but Firebird developer tells, that hi needs simply and short explanation of this problem. Hi can not dig deep in office internals. Please, help to fix this problem or write small program to demonstrate it to developers of Firebird and they can then easy understand problem and fix.
Hi Sasha, Maybe you ought to try with a 32bit ODBC driver instead of 64bit. Is there one available ? If so, could you try it and report back ? I've noticed lots of problems in general trying to get ODBC to work with 64bit/32bit platforms on anything other than Windows (where I haven't tried so I can't say), and I suspect it is in the upstream OOo code. Alex
I have tryed on Linux 32 on Open Office. And it works. And I have not LibreOffice on Linux 32. Here I found mention of error http://tracker.firebirdsql.org/browse/ODBC-68?focusedCommentId=19800&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_19800 from here I get drivers: http://www.firebirdsql.org/index.php?op=files&id=odbc I will attach configs that worked ok on 32.
Created attachment 43664 [details] config odbc place it in /etc
Created attachment 43665 [details] config odbc place it in /etc
On libreoffice 3.3.1 rusults: Linux 32 works ok. Linux 64 crashes. In wisard I have selected "Connect to database ODBC" then on next step "Select source of database: epoloyee" and then on next step appears button "Test connection". I have pressed it. And "Connection is Ok". On next steps Libre Base crashes. One time it hangs consuming almost all cpu. It was hard to kill it.
I fixed a few ODBC-64bits problem in the past months and days. Could you please test again with a daily build? Thanks a lot. Daily builds are at http://dev-builds.libreoffice.org/daily/
(In reply to comment #6) > I fixed a few ODBC-64bits problem in the past months and days. Could you please > test again with a daily build? Thanks a lot. Daily builds are at > http://dev-builds.libreoffice.org/daily/ I have installed file master~2011-12-08_16.45.19_LibO_3.5.0beta0_Linux_x86-64_install-rpm_en-US.tar.gz on Fedora 16 64-bit with last updates But LibO exits almost immediately and writes this in console: create vcl plugin instance with gtk version 2 24 7 Screen Resolution/Size 96*96 1280*1024 17,0" Black&White 0 16777215 RGB 0xff0000 0xff00 0xff Visual 24-bit TrueColor ID=0x21 /opt/lodev3.5/program/soffice.bin: symbol lookup error: /usr/lib64/gtk-2.0/2.10.0/engines/liboxygen-gtk.so: undefined symbol: cairo_surface_create_for_rectangle Exited with code '127'
(In reply to comment #7) > But LibO exits almost immediately and writes this in console: > /opt/lodev3.5/program/soffice.bin: symbol lookup error: > /usr/lib64/gtk-2.0/2.10.0/engines/liboxygen-gtk.so: undefined symbol: > cairo_surface_create_for_rectangle > Exited with code '127' A fellow developer recommends you try with a clean profile: Exit LibreOffice (including the quickstarter if you have it running) Move ~/.libreoffice and ~/,config/libreoffice away (rename them to e.g. libreoffice-CFG.bak), and also ~/.openoffice.org if you still have one. so that LibreOffice will create a fresh new blank profile. Try again. If it still does not work, I'll try to get a GTK or Fedora guy to look at the problem. (And if it works, we may have another bug that we will file separately.)
Actually, I see in the commit log: Author: Michael Stahl <mstahl@redhat.com> Date: Sat Dec 10 00:23:42 2011 +0100 cairo: fix RPATH: The cairo configure script is called with -Wl,-rpath,"12345ORIGIN" with funny results so tweak the quoting so that the $$ makes it through... (cherry picked from commit 408672d41b261b33fb3bbc272d25815dda0e2663) This commit looks like it can be related to the "undefined symbol" problem you are having (and would fix it). So trying with a more recent daily build (from 10 december or later) seems more relevant than the fresh profile (but if the more recent daily fails in the same way, by all means, try the fresh profile, too). It is probably best to use a libreoffice-3-5 daily (rather than a "master" daily).
I have deleted ~/.libreoffice , but problem remains. LibO even not created new version of ~/.libreoffice . I will try another build of LibO soon.
(In reply to comment #10) > I have deleted ~/.libreoffice , but problem remains. LibO even not created new > version of ~/.libreoffice . LibreOffice 3.4 uses ~/.libreoffice, but LibreOffice 3.5 uses ~/.config/libreoffice (or more generally $XDG_CONFIG_HOME/libreoffice). If ~/.libreoffice exists and ~/.config/libreoffice does not exist, then LibreOffice 3.5 migrates (modulo some small details, copies) ~/.libreoffice exists to ~/.config/libreoffice. So to get a fresh profile in LibreOffice 3.5, you really need to move away (or delete) *both* directories. > I will try another build of LibO soon. Great, thanks. I'm waiting for the result of that.
I have downloaded and installed file LibO_3.5.0beta0_Linux_x86-64_install-rpm_en-US.tar.gz It starts Ok. Then I have downloaded source of ODBC from there: http://sourceforge.net/projects/firebird/files/firebird-ODBC-driver/2.0-Release/OdbcFb-Source-2.0.0151.tar.gz But can not build it, because gcc complains about ambiguity when casting to int in file OdbcJdbc/MainUnicode.cpp and I can not solve this problem because not know C++, and precompiled driver not works in Fedora or Mandriva.
I can build ODBC driver commenting out one of next lines operator int() { return lengthString; } operator SQLINTEGER() { return lengthString; } lines 117 and 120 in file OdbcJdbc/MainUnicode.cpp Then I start LibO beta0 and connect to database. It connects successful and shows list of tables. Then I double click on first table of database. LibO crashes immediately. With no output on console.
on LibO 3.3.4.1 the same behaviour: connects and shows list of tables ok, but crashes when double click on table. My be change title to "crashes"?
(In reply to comment #13) > Then I start LibO beta0 and connect to database. It connects successful and > shows list of tables. Then I double click on first table of database. LibO > crashes immediately. With no output on console. I'm terribly sorry to insist, but I fixed a problem just like that (with FreeTDS) about a day *after* beta0 was tagged. I really need you to test with a newer LibreOffice. Beta1 would be fine (http://dev-builds.libreoffice.org/pre-releases/rpm/), or a not-ancient daily build.
file LibO-Dev_3.5.0beta1_Linux_x86-64_install-rpm_en-US.tar.gz version LOdev 3.5.0 Build ID: 7362ca8-b5a8e65-af86909-d471f98-61464c4 still crashes
(In reply to comment #16) > file LibO-Dev_3.5.0beta1_Linux_x86-64_install-rpm_en-US.tar.gz > version LOdev 3.5.0 > Build ID: 7362ca8-b5a8e65-af86909-d471f98-61464c4 > still crashes OK, I'll try to take a look in early January.
[This is an automated message.] This bug was filed before the changes to Bugzilla on 2011-10-16. Thus it started right out as NEW without ever being explicitly confirmed. The bug is changed to state NEEDINFO for this reason. To move this bug from NEEDINFO back to NEW please check if the bug still persists with the 3.5.0 beta1 or beta2 prereleases. Details on how to test the 3.5.0 beta1 can be found at: http://wiki.documentfoundation.org/QA/BugHunting_Session_3.5.0.-1 more detail on this bulk operation: http://nabble.documentfoundation.org/RFC-Operation-Spamzilla-tp3607474p3607474.html
Created attachment 56039 [details] backtrace of crash in master 23 jan 2012 it dislikes something here: solver/unxlngx6/inc/osl/mutex.hxx:85
This looks like the ODBC driver has smashed our stack. This may be LO's fault if LO passed it a pointer to a too small memory area. Investigating.
I looked at that part of the code and it seems to me the ODBC calls that LibreOffice is doing there are correct. I start thinking it is an ODBC driver bug. I compiled the driver and installed Firebird 2.5. Will try to reproduce within a few days.
So, basically I cannot reproduce the same backtrace as attachment 56039 [details], but I can reproduce the crash. With a smashed stack, the backtrace is unreliable anyway... The reason seems to be passing a too small memory buffer to SQLGetStmtAttr (thus, a bug in LibreOffice), something I thought I had already fixed, but it seems I had fixed only *some* occurrences of the problem and not all of them. I'm making a new pass to fix the remaining occurrences, which should fix this. Stay tuned.
Crash -> critical severity. Setting regression keyword.
Fixed in master (3.6) with commit 19ef5bcc8d9dbcf965f79495e1afd86ac0f22c31 (http://cgit.freedesktop.org/libreoffice/core/commit/?id=19ef5bcc8d9dbcf965f79495e1afd86ac0f22c31). Patch sent to mailing list for review for inclusion in 3.5.0 and 3.5.1
Thanks for fix! Compiling ...
It not hangs in Master! Thanks! Now it outputs this: SQL Status: HY000 Error code: -206 [ODBC Firebird Driver][Firebird]Dynamic SQL Error SQL error code = -206 Column unknown TRUE At line 1, column 33 My be problem is now in ODBC driver itself.
Fix has been committed to libreoffice-3-5 and libreoffice-3-5-0. Closing bug.
Thanks
Created attachment 56397 [details] patch to FireBird ODBC for Debian GNU/Linux amd64
(In reply to comment #26) > Now it outputs this: > SQL Status: HY000 > Error code: -206 > [ODBC Firebird Driver][Firebird]Dynamic SQL Error > SQL error code = -206 > Column unknown > TRUE > At line 1, column 33 OK, please file a *new* bug for that; assign it to me, and include precise reproduction instructions (database schema of database to reproduce, ...). If you could also try with LibreOffice 3.5.0rc3 (or later), that would be nice. 3.5.0rc3 should come out withing a few days. Any remaining issue will most probably be fixed for 3.5.1, not for 3.5.0. I also attach for your information the patch with which I compiled the Firebird ODBC driver on Debian GNU/Linux amd64.
separate bugreport: Bug 45453 - Database: error when executing statment