Re: Usability process (fix)



>      Okey,  '111'(ECONNREFUSED) is the errno forwarded from connect() through
> mysql.  I looked at the code and it appears that the options from the DSN
> configuration area wasn't being passed onto mysql.  The fix is:
>
>    Starting at line 206 of gda-mysql-server/gda-mysql-connect.c we have
> a bunch of strcasecmp's.  These need to be changed to strncasecmp's like
> the DATABASE case, otherwise everything in the DSN field in options
> is ignored(except for DATABASE)  IE:
>
>       if (strncasecmp(ptr_s, "HOST", strlen("HOST")) == 0)
>                cnc->host = get_value(ptr_s);
>       else if (strncasecmp(ptr_s, "DATABASE", strlen("DATABASE")) == 0)
>         cnc->db = get_value(ptr_s);
>       else if (strncasecmp(ptr_s, "PORT", strlen("PORT")) == 0)
>         cnc->port = get_value(ptr_s);
>       else if (strncasecmp(ptr_s, "UNIX_SOCKET", strlen("UNIX_SOCKET")) == 0)
>         cnc->unix_socket = get_value(ptr_s);
>       else if (strncasecmp(ptr_s, "FLAGS", strlen("FLAGS")) == 0)
>         cnc->flags = get_value(ptr_s);
>

It's on CVS now

>
>     Other stuff appears to be broken still, though.  (I entered a select
> statement into the window and did hit the 'Execute SQL' button and had
> a million windows pop onto my screen with the error message:
> gda-connection.c: 54: gda_connection_real_error called
>         new adjustment value = 0
> gda-recordset.c: 63: gda_recset_value_changed called
>         adj->value  = 1
>         rs->current = 0
>         offset = 1
>
> being printed).  I know at least the connection is working though since
> I can get a list of the tables in the object-browser.
>
>

This is because, as I've seen today, the MySQL server is incomplete (I didn't do
it myself, and as the guy who did it is no longer available, and as I know
nothing about MySQL...). It is missing the _move functions, which allows to
traverse the recordset, so the client lib (CORBA client) is entering an infinite
loop to retrieve rows, which always returns the current_index (= 0) and not an
error code. Thanks to this I've found a small bug in the client lib.

So, Joe, would you like to complete the MySQL server? If you know the MySQL API,
and with Stephan's help and my help you'll be able to complete the missing
functions. I'd do it myself, but I know nothing about MySQL. Or anybody else?





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