-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[EMAIL PROTECTED] wrote:
| I was thinking the same thing earlier today.
| Perhaps sometime next week.

With the new prepare_v2 api, step returns the error directly.  If I
ignore that and then call finalize, will finalize also return the same
(correct) error code and string?  (This would allow me to use the new
API by adding "_v2" with no other changes.  I also prefer to finalize
statements wherever possible so that sqlite3_close() will work.)

There are also a number of virtual tables issues, which seem to require
API updates to fix.

http://www.sqlite.org/cvstrac/tktview?tn=2099

It is unclear from the doc and code what happens if an error is returned
from Disconnect/Destroy.  Is the table gone, or does it stay alive and
the methods can be called again?  The answer is needed in order to do
correct memory management.  (As a contrast, the cursor close method
always destroys the cursor no matter what the error code returned.)

Also the FindFunction API is useless to dynamic code since there is no
way to know when the returned function is no longer needed.  One
suggested solution is also returning a function pointer that frees the
returned object.  Also how is ppArg ever used - xFunc doesn't have it as
a parameter.

The create_module method doesn't mention anything about unregistering a
module (eg passing in NULL).  From the code it looks like no attention
is paid to registering a module with a duplicate name (hash tree
replacement just happens).

The zErrMsg error pointer is only available on sqlite3_vtab, but not on
sqlite3_vtab_cursor.  That means errors in cursors have to be reported
on the virtual table, not on the cursor.  Unless SQLite serializes all
access to a vtable, there is a race condition with two cursors setting
an error at the same time.

Roger

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)

iD8DBQFFjfILmOOfHg372QQRAqkyAJ47FR2SfH8CX7D73xhAz4LSSENhHwCggsAr
0z4McSmXmj7xWWN+e4r1JaA=
=OxKr
-----END PGP SIGNATURE-----

-----------------------------------------------------------------------------
To unsubscribe, send email to [EMAIL PROTECTED]
-----------------------------------------------------------------------------

Reply via email to