Re: [gnome-db] What is this error?



Em Sex, 2006-10-13 �11:29 -0300, Juan Pablo escreveu:
> El vie, 13-10-2006 a las 10:27 -0300, Gustavo R. Montesino escribi� > Em Qui, 2006-10-12 �20:16 -0300, Juan Pablo escreveu: 
> > > El jue, 12-10-2006 a las 16:11 -0300, Juan Pablo Daniel Borgna escribi� > > > El jue, 12-10-2006 a las 11:48 +0200, Vivien Malerba escribi� > > > > On 10/11/06, Juan Pablo Daniel Borgna <jpdborgna shellcode com ar> wrote:
> > > > > > relocation error: /usr/lib/libgda/providers/libgda-sqlite.so: undefined
> > > > > > symbol: sqlite_complete
> > > > > 
> > 
> > sqlite_complete is called in sql_split at gda-sqlite-provider.c (it
> > apparently should be sqlite3_complete), which in turn is called in
> > process_sql_commands. From a quick look, you should be safe by not endig
> > the query with ";" (and issuing one query by call) - assuming it works
> > with sqlite, never used it.
> > 
> Nopes. If I end the query with ; always fails. Without the ; the create
> and drop querys work but the insert dosnt.
>  
> > This bug seems to be due to Debian's use of version 3 of sqlite, and was
> > fixed in libgda 1.2.2 (it's present in libgda 1.2.1, which is the sarge
> > version).
> > 
> Could it be fixed on sarge? Do you have an idea of what to do?
> Im doing an apt-get source right now.

I don't think it would be possible to upload a fixed sarge package, but
I'm attaching the patch used in 1.2.{2,3}. It should apply to 1.2.1
without problems.
diff -urN libgda-1.2.2.orig/providers/sqlite/gda-sqlite-provider.c libgda-1.2.2/providers/sqlite/gda-sqlite-provider.c
--- libgda-1.2.2.orig/providers/sqlite/gda-sqlite-provider.c	2005-09-07 15:50:16.000000000 -0300
+++ libgda-1.2.2/providers/sqlite/gda-sqlite-provider.c	2005-10-08 22:03:08.000000000 -0300
@@ -261,7 +261,7 @@
 
 	while ((next = (const gchar *) strchr (next, ';')) != NULL) {
 		gchar *tmp = g_strndup (remainder, next - remainder + 1);
-		if (sqlite_complete (tmp)) {
+		if (sqlite3_complete (tmp)) {
 			string_list = g_slist_prepend (string_list, tmp);
 			n++;
 			remainder = (const gchar *) (next + 1);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]