[squeak-dev] Re: Now available: a database conectivity API and its MySQL implementation

Andreas Raab andreas.raab at gmx.de
Fri Sep 30 07:57:05 UTC 2011


On 9/30/2011 4:35, Anindya Haldar wrote:
> I believe this is a version issue. I tested my code with MySQL 5.0.67 on
> Mac OS X. The details of the test platform combinations are in the
> project page in Squeaksource.
>
> Could you please let me know your MySQL version and platform? It is
> entirely possible that for certain versions/conditions the handshake
> protocol does another extra step. This is something I found NOT
> applicable for the version I was working with, although the reference C
> implementation does have such provisions.

I'm running MySql 5.0.77 server on CentOS 5.6 (which is the 
out-of-the-box version you get on CentOS via yum). This seems pretty 
close to what you're using. Is there a chance that I need to set up the 
database credentials in a specific way? I've just been using an existing 
user which works fine in other contexts but perhaps there's something 
specific that needs to be done?

Cheers,
   - Andreas

>
> I will also keep looking for more details meanwhile.
>
> Best,
> Anindya
>
> ------------------------------------------------------------------------
> *From:* Andreas Raab <andreas.raab at gmx.de>
> *To:* The general-purpose Squeak developers list
> <squeak-dev at lists.squeakfoundation.org>
> *Sent:* Thursday, September 29, 2011 11:19 AM
> *Subject:* [squeak-dev] Re: Now available: a database conectivity API
> and its MySQL implementation
>
> On 9/29/2011 19:28, Andreas Raab wrote:
>  > On 9/29/2011 16:40, Anindya Haldar wrote:
>  >> Thanks Andreas. The MySQL protocol is a native all-Smalltalk MySQL
>  >> driver. There is no FFI or plugin associated with it. The driver
>  >> implements the MySQL wire protocol on top of socket stream.
>  >
>  > Awesome! I'll see if I can get it to work on the weekend. What platforms
>  > have you tested it on?
>
> My first tests ends up with an error "This part of the handshake is not
> implemented" during the connect operation. Is this maybe a MySql version
> problem? What versions have you successfully tested with?
>
> Cheers,
> - Andreas
>
>  >
>  > Cheers,
>  > - Andreas
>  >
>  >> ------------------------------------------------------------------------
>  >> *From:* Andreas Raab <andreas.raab at gmx.de <mailto:andreas.raab at gmx.de>>
>  >> *To:* Anindya Haldar <anindya_haldar at yahoo.com
> <mailto:anindya_haldar at yahoo.com>>; The general-purpose
>  >> Squeak developers list <squeak-dev at lists.squeakfoundation.org
> <mailto:squeak-dev at lists.squeakfoundation.org>>
>  >> *Sent:* Thursday, September 29, 2011 1:22 AM
>  >> *Subject:* Re: Now available: a database conectivity API and its MySQL
>  >> implementation
>  >>
>  >> Very nice. Quick question: How are you accessing the MySQL db? Are you
>  >> using a network connection or some FFI facilities? If you are using a
>  >> network connection, we might have use for your project right away; our
>  >> current FFI based ODBC implementation causes headaches when the calls
>  >> take a long time (>1sec).
>  >>
>  >> Cheers,
>  >> - Andreas
>  >>
>  >> On 9/29/2011 10:11, Anindya Haldar wrote:
>  >> > I am extremely pleased to offer to the community a generic Smalltalk
>  >> API
>  >> > for database connectivity API, along with a MySQL implementation
>  >> written
>  >> > from ground up. Think of JDBC and DBI like interfaces in other
>  >> languages
>  >> > and environments, and this one offers abstract facilities like
>  >> > connection, prepared statement, resultset, row, metdata and so on for
>  >> > the application.
>  >> >
>  >> > The API implementation uses driver delegates, and insulates the
>  >> > applications from the driver specific interfaces. As of now, a MySQL
>  >> > implementation is available, with other databases engine supports in
>  >> the
>  >> > future plans.
>  >> >
>  >> > The API supports server side prepared sta tements and cursor based
>  >> fetch
>  >> > implemented in the MySQL driver.
>  >> >
>  >> > The implementation is currently available in 3 parts:
>  >> >
>  >> > 1) StdbCore project: This is primarily the API definitions and the
>  >> > delegation logic
>  >> > URL: http://www.squeaksource.com/StdbCore.html
>  >> >
>  >> > 2) StdbMysqlImpl project: This is the MySQL implementation of the
>  >> > StdbCore API
>  >> > URL: http://www.squeaksource.com/StdbMysqlImpl.html
>  >> >
>  >> > 3) StdbMysqlProtocol project: This is the underlying MySQL protocol
>  >> > driver, and used by the MySQL API implementation
>  >> > URL: http://www.squeaksource.com/StdbMysqlProtocol.html
>  >> >
>  >> > There is a package load ordering dependency (documented in the MySQL
>  >> > implementation project). Please load the core and the protocol driver
>  >> > packages first, before you load the implementation package.
>  >> >
>  >> > Combined, the packages has around 200 tests (most of them in the
>  >> > protocol driver and the API implementation) and are running green on
>  >> > Pharo 1.1.1 one click, Squeak 4.2 one click, Squeak 3.10 (with Seaside
>  >> > 2-8-573 dev image) under Mac OS X 10.5.8 with MySQL server 5.0.67.
>  >> >
>  >> > This was in the making for some time; and I feel it is time to
> share it
>  >> > with the community. I will continue to post more documentation and
> code
>  >> > snippets in the project page Wiki sections. For now, looking up the
>  >> > tests may be your best guide.
>  >> >
>  >> > Happy programming!
>  >> >
>  >> > Best,
>  >> > Anindya Haldar
>  >> >
>  >> >
>  >> >
>  >> >
>  >> >
>  >>
>  >>
>  >>
>  >>
>  >>
>  >>
>  >
>  >
>  >
>
>
>
>
>
>
>




More information about the Squeak-dev mailing list