CLSQL 4.1.0 fixes critical memory error with latest mysqlclient

Kevin Rosenberg <kevin-HJRc7zDS/[email protected]>
Newsgroups gmane.lisp.clsql.general
Message-ID <[email protected]>
The latest version of the libmysqlclient causes memory access errors
in CLSQL due to the changed C structures. This recurring problem has
been permanently fixed as described in the excerpt from the ChangeLog:

* Version 4.1.0
* db-mysql/mysql-{sql,api}.lisp,db-mysql/clsql_mysql.c:
Latest version of mysqlclient once again changed the C
structures from which the mysql backend reads data.
Rather than adding yet another structure definition which
is enabled by the client version as read by mysql-client-info.lisp,
the mysql backend has been re-written to ignore in the internal
C structures. Instead, C wrapper functions for slot access have
been added to clsql_mysql.c and are used by mysql-sql.lisp to
access the internals of C structures. This adds a bit of
overhead, but completely separates the lisp code from trying to keep up
with the continually changing internal C structure of mysql.
All tests in the test suite executed correctly with this change.

-- 
Kevin Rosenberg
kevin-HJRc7zDS/[email protected]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.