[Users] avp problems switching from 1.0.1 to 1.1.x
tele
tele at plexia.com
Thu Jun 29 14:04:18 CEST 2006
Bogdan-Andrei Iancu wrote:
> Most probably avp_db_load() discards the record returned by DB because
> of type. The record has type 1 - AVP with string name and integer
> value. even so, I do not see an obviously reason for discarding it.
True is correct i can see val_int and val_str. i understand where was
the problem. thank you bogdan!
3(38201) db_flags=1, flags=4
3(38201) DEBUG:avpops:load_avps: loaded avps = 1
3(38201) db_flags=1, flags=4
3(38201) DEBUG:avpops:load_avps: loaded avps = 1
3(38201) db_flags=1, flags=4
3(38201) DEBUG:avpops:load_avps: loaded avps = 1
3(38201) db_flags=3, flags=4
3(38201) DEBUG:avpops:load_avps: loaded avps = 1
3(38201) INFO:avpops:print_avp: p=0x285255a0, flags=0x0083
3(38201) INFO: name=<remote_address>
3(38201) INFO: val_str=<82.215.163.5 / 12>
3(38201) INFO:avpops:print_avp: p=0x28523b78, flags=0x0081
3(38201) INFO: name=<connect_time>
3(38201) INFO: val_int=<1151582690>
3(38201) INFO:avpops:print_avp: p=0x28523b28, flags=0x0081
3(38201) INFO: name=<setup_time>
3(38201) INFO: val_int=<1151582687>
3(38201) INFO:avpops:print_avp: p=0x28523ba0, flags=0x0081
3(38201) INFO: name=<disconnect_time>
3(38201) INFO: val_int=<1151582703>
> could you run with full debug and post the part related to the
> avp_db_load() ?
>
> regards,
> bogdan
>
> tele wrote:
>
>> Bogdan-Andrei Iancu wrote:
>>
>>> Hi,
>>>
>>> avp_db_load() will consider the psseudo variable as uuid, so both
>>> calls should do the same. Could you just check on mysql level what
>>> are the queries done in the two cases? (check the text log of mysql).
>>
>>
>>
>> we can see that the query are the same, except of avp_db_load that
>> include the fields attribute,type.
>> maybe it aspect an integer value (i use unixtime ex: 1151579428). but
>> i have declared avp as string:
>>
>> modparam("avpops","avp_aliases","setup_time=s:setup_time")
>> modparam("avpops","avp_aliases","connect_time=s:connect_time")
>> modparam("avpops","avp_aliases","disconnect_time=s:disconnect_time")
>>
>> with avp_db_query() :
>>
>> T 127.0.0.1:56842 -> 127.0.0.1:3306 [AP]
>> j....select value from usr_preferences where
>> uuid='cd24f1e60e6eb449 at 82.215.128.140' and
>> attribute='setup_time'
>> #
>> T 127.0.0.1:3306 -> 127.0.0.1:56842 [AP]
>>
>> .....E....def.openser.usr_preferences.usr_preferences.value.value......... at .............1151579428.........
>>
>> #
>> T 127.0.0.1:56842 -> 127.0.0.1:3306 [AP]
>> l....select value from usr_preferences where
>> uuid='cd24f1e60e6eb449 at 82.215.128.140' and
>> attribute='connect_time'
>> #
>> T 127.0.0.1:3306 -> 127.0.0.1:56842 [AP]
>>
>> .....E....def.openser.usr_preferences.usr_preferences.value.value......... at .............1151579434.........
>>
>> #
>> T 127.0.0.1:56842 -> 127.0.0.1:3306 [AP]
>> o....select value from usr_preferences where
>> uuid='cd24f1e60e6eb449 at 82.215.128.140' and
>> attribute='disconnect_time'
>> #
>> T 127.0.0.1:3306 -> 127.0.0.1:56842 [AP]
>>
>> .....E....def.openser.usr_preferences.usr_preferences.value.value......... at .............1151579455.........
>>
>> #
>> T 127.0.0.1:56842 -> 127.0.0.1:3306 [AP]
>> d....delete from usr_preferences where
>> uuid='cd24f1e60e6eb449 at 82.215.128.140' AND
>> attribute='setup_time'
>>
>>
>>
>> with avp_db_load() :
>>
>> #
>> T 127.0.0.1:50918 -> 127.0.0.1:3306 [AP]
>> y....select value,attribute,type from usr_preferences where
>> uuid='4c3cd5e6b08ea471 at 82.215.128.140' AND
>> attribute='setup_time' #
>> T 127.0.0.1:3306 -> 127.0.0.1:50918 [AP]
>>
>> .....E....def.openser.usr_preferences.usr_preferences.value.value......... at ...M....def.openser.usr_preferences.usr_preferences.attribute.attribute...
>> ..... at ...C....
>>
>> def.openser.usr_preferences.usr_preferences.type.type.?....... at .............1151579809.setup_time.1.........
>>
>> #
>> T 127.0.0.1:50918 -> 127.0.0.1:3306 [AP]
>> {....select value,attribute,type from usr_preferences where
>> uuid='4c3cd5e6b08ea471 at 82.215.128.140' AND
>> attribute='connect_time' #
>> T 127.0.0.1:3306 -> 127.0.0.1:50918 [AP]
>>
>> .....E....def.openser.usr_preferences.usr_preferences.value.value......... at ...M....def.openser.usr_preferences.usr_preferences.attribute.attribute...
>> ..... at ...C....
>>
>> def.openser.usr_preferences.usr_preferences.type.type.?....... at .............1151579816.connect_time.1.........
>>
>> #
>> T 127.0.0.1:50918 -> 127.0.0.1:3306 [AP]
>> ~....select value,attribute,type from usr_preferences where
>> uuid='4c3cd5e6b08ea471 at 82.215.128.140' AND
>> attribute='disconnect_time' #
>> T 127.0.0.1:3306 -> 127.0.0.1:50918 [AP]
>>
>> .....E....def.openser.usr_preferences.usr_preferences.value.value......... at ...M....def.openser.usr_preferences.usr_preferences.attribute.attribute...
>> ..... at ...C....
>>
>> def.openser.usr_preferences.usr_preferences.type.type.?....... at .............1151579823.disconnect_time.1.........
>>
>> #
>>
>>> tele wrote:
>>>
>>>> thanks!
>>>> Ok i'm using the call-id and with the avp_db_query it works but
>>>> with avp_db_load not.
>>>> this is what i have done:
>>>>
>>>> working:
>>>>
>>>> avp_db_query("select value from usr_preferences where
>>>> uuid='$ci' and attribute='setup_time'","$avp(setup_time)");
>>>> avp_db_query("select value from usr_preferences where
>>>> uuid='$ci' and attribute='connect_time'","$avp(connect_time)");
>>>> avp_db_query("select value from usr_preferences where
>>>> uuid='$ci' and attribute='disconnect_time'","$avp(disconnect_time)");
>>>>
>>>> not working:
>>>>
>>>> avp_db_load("$ci","$avp(setup_time)");
>>>> avp_db_load("$ci","$avp(connect_time)");
>>>> avp_db_load("$ci","$avp(disconnect_time)");
>>>>
>>>
>>
>>
>> _______________________________________________
>> Users mailing list
>> Users at openser.org
>> http://openser.org/cgi-bin/mailman/listinfo/users
>>
>
More information about the sr-users
mailing list