Small. Fast. Reliable.
Choose any three.
*** 8,14 ****
  
    int (*xCreate)(sqlite3 *db, void *pAux,
                 int argc, char **argv,
!                sqlite3_vtab **ppVTab);
  
  This method is called to create a new instance of a
  virtual table in response to a
--- 8,15 ----
  
    int (*xCreate)(sqlite3 *db, void *pAux,
                 int argc, char **argv,
!                sqlite3_vtab **ppVTab,
!                char **pzErr);
  
  This method is called to create a new instance of a
  virtual table in response to a
***************
*** 50,63 ****
  
  The xCreate method should return SQLITE_OK if it is successful
  in creating the new virtual table, or SQLITE_ERROR if
! it is not successful.
  
  ----
  *xConnect*
  
    int (*xConnect)(sqlite3*, void *pAux,
                 int argc, char **argv,
!                sqlite3_vtab **ppVTab);
  
  The xConnect method is very similar to xCreate.  It has the
  same parameters and constructs a new sqlite3_vtab structure
--- 51,68 ----
  
  The xCreate method should return SQLITE_OK if it is successful
  in creating the new virtual table, or SQLITE_ERROR if
! it is not successful.  If not successful, no sqlite3_vtab structure
! should be allocated.  An error message may optionally be returned
! in *pzErr if unsuccessful.  The text of the error message should
! be obtained from sqlite3_mprintf().
  
  ----
  *xConnect*
  
    int (*xConnect)(sqlite3*, void *pAux,
                 int argc, char **argv,
!                sqlite3_vtab **ppVTab,
!                char **pzErr);
  
  The xConnect method is very similar to xCreate.  It has the
  same parameters and constructs a new sqlite3_vtab structure
***************
*** 87,92 ****
--- 92,104 ----
  that index.  The xConnect method, on the other hand, only
  had to locate and use an existing dictionary and posting
  lists that were created by a prior xCreate call.
+ 
+ The xConnect method should return SQLITE_OK if it is successful
+ in creating the new virtual table, or SQLITE_ERROR if
+ it is not successful.  If not successful, no sqlite3_vtab structure
+ should be allocated.  An error message may optionally be returned
+ in *pzErr if unsuccessful.  The text of the error message should
+ be obtained from sqlite3_mprintf().
  
  ----
  *xBestIndex*