[OpenSER-Devel] [ openser-Bugs-1813095 ] dbtext: errors while saving registrations

SourceForge.net noreply at sourceforge.net
Fri Nov 9 15:31:30 UTC 2007


Bugs item #1813095, was opened at 2007-10-14 07:05
Message generated for change (Comment added) made by miconda
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=743020&aid=1813095&group_id=139143

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: modules
Group: ver devel
>Status: Closed
>Resolution: Fixed
Priority: 5
Private: No
Submitted By: Ovidiu Sas (osas)
>Assigned to: Daniel-Constantin Mierla (miconda)
Summary: dbtext: errors while saving registrations

Initial Comment:
Saving locations in dbtext doesn't work anymore.

I patched the following file in order to get more debug output: modules/dbtext/dbt_tb.c

-    LM_DBG("incompatible types - field %d\n",i);
+    LM_DBG("incompatible types - field %d [%d != %d]\n",i, _dtp->colv[i]->type, _drp->fields[i].type);


Issue 1:
========
dbtext:dbt_db_get_table: cache or mtime succeeded
dbtext:dbt_table_check_row: incompatible types - field 1 [2 != 3]
dbtext:dbt_insert: cannot insert the new row!!
dbtext:dbt_insert: make clean!
db_insert_ucontact(): Error while inserting contact
ERROR:usrloc:insert_ucontact: failed to insert in database

Fixed by changing:
username(string) -> username(str)


Issue 2:
========
dbtext:dbt_db_get_table: cache or mtime succeeded
dbtext:dbt_table_check_row: null value not allowed - field 2
dbtext:dbt_insert: cannot insert the new row!!
dbtext:dbt_insert: make clean!
db_insert_ucontact(): Error while inserting contact
ERROR:usrloc:insert_ucontact: failed to insert in database

Fixed by changing
domain(string) -> domain(string,null)

Issue 3:
========
dbtext:dbt_db_get_table: cache or mtime succeeded
dbtext:dbt_table_check_row: incompatible types - field 3 [2 != 3]
dbtext:dbt_insert: cannot insert the new row!!
dbtext:dbt_insert: make clean!
db_insert_ucontact(): Error while inserting contact
ERROR:usrloc:insert_ucontact: failed to insert in database

Fixed by changing
contact(string) -> contact(str)


Issue 4:
========
dbtext:dbt_db_get_table: cache or mtime succeeded
dbtext:dbt_table_check_row: incompatible types - field 6 [0 != 4]
dbtext:dbt_insert: cannot insert the new row!!
dbtext:dbt_insert: make clean!
db_insert_ucontact(): Error while inserting contact
ERROR:usrloc:insert_ucontact: failed to insert in database

It looks like the DB_DATETIME and DB_INT are no longer compatible in dbtext mode.


typedef enum {
        DB_INT,        /* 32-bit integer */
        DB_DOUBLE,     /* double data type */
        DB_STRING,     /* Zero-terminated string */
        DB_STR,        /* str structure */
        DB_DATETIME,   /* Date and time */
        DB_BLOB,       /* Large binary object */
        DB_BITMAP      /* Bitmap of flags */
} db_type_t;


Also, we are having issues trying to save DB_STR into a DB_STRING in dbtext mode.

----------------------------------------------------------------------

>Comment By: Daniel-Constantin Mierla (miconda)
Date: 2007-11-09 17:31

Message:
Logged In: YES 
user_id=1246013
Originator: NO

This should be fixed in the last update. The one I used for testing was
usrloc. Now instead of checking column type equality, it looks at
compatibility (e.g., str ~ string).

----------------------------------------------------------------------

Comment By: Nobody/Anonymous (nobody)
Date: 2007-10-24 18:46

Message:
Logged In: NO 

I have a similar problem with the location table. The domain column does
not accept a NULL value so its definitions must be changed to do so onto
the 1st row with table header of the "location" file.


----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=743020&aid=1813095&group_id=139143



More information about the Devel mailing list