Hi, I've experimented column size isues (too small) when trying to store a double Path header in the location table. It seems that current size is:
lib/srdb1/schema/location.xml:
<column> <name>path</name> <type>string</type> <size>&uri_len;</size> <null/> <default><null/></default> <description>Path Header(s) per RFC 3327</description> </column>
It seems to become 128 which is not enough at all for two Path headers if the URI's contain parameters.
Is it ok if I increase it to 512? any other file to touch?
Thanks a lot.
Am Mittwoch, 5. September 2012, 13:40:18 schrieb Iñaki Baz Castillo:
Hi, I've experimented column size isues (too small) when trying to store a double Path header in the location table. It seems that current size is:
lib/srdb1/schema/location.xml:
<column> <name>path</name> <type>string</type> <size>&uri_len;</size> <null/> <default><null/></default> <description>Path Header(s) per RFC 3327</description> </column>
It seems to become 128 which is not enough at all for two Path headers if the URI's contain parameters.
Is it ok if I increase it to 512? any other file to touch?
Hello Iñaki,
512 sounds a bit too large to me, this size is not used in any other fields in the database definitions. What about setting it to 255? Replacing the uri_len part with
<size>&hf_len;</size>
should do the trick. Then just run make dbschema, and commit also the updated database definitions.
Regards,
Henning Westerholt
Hello,
On 9/5/12 1:56 PM, Henning Westerholt wrote:
Am Mittwoch, 5. September 2012, 13:40:18 schrieb Iñaki Baz Castillo:
Hi, I've experimented column size isues (too small) when trying to store a double Path header in the location table. It seems that current size is:
lib/srdb1/schema/location.xml:
<column> <name>path</name> <type>string</type> <size>&uri_len;</size> <null/> <default><null/></default> <description>Path Header(s) per RFC 3327</description> </column>
It seems to become 128 which is not enough at all for two Path headers if the URI's contain parameters.
Is it ok if I increase it to 512? any other file to touch?
Hello Iñaki,
512 sounds a bit too large to me, this size is not used in any other fields in the database definitions. What about setting it to 255? Replacing the uri_len part with
<size>&hf_len;</size>
should do the trick. Then just run make dbschema, and commit also the updated database definitions.
dialog module uses 512 for each route set (caller/callee side), so perhaps it should be used here the same, eventually defining a variable for it and use it everywhere is stored a path/route set.
Besides regeneration of db creation scripts (with make dbschema), a safety check has to be done to registrar/usrloc module to be sure it does not use some static buffer of a lower size for handling the path.
Cheers, Daniel
2012/9/5 Daniel-Constantin Mierla miconda@gmail.com:
dialog module uses 512 for each route set (caller/callee side), so perhaps it should be used here the same, eventually defining a variable for it and use it everywhere is stored a path/route set.
Besides regeneration of db creation scripts (with make dbschema), a safety check has to be done to registrar/usrloc module to be sure it does not use some static buffer of a lower size for handling the path.
Thanks to all. Is it ok if I set the path size to 512 in master branch for now?
Am Mittwoch, 5. September 2012, 14:00:58 schrieb Daniel-Constantin Mierla:
Hi, I've experimented column size isues (too small) when trying to store a double Path header in the location table. It seems that current size is:
[...]
512 sounds a bit too large to me, this size is not used in any other fields in the database definitions. What about setting it to 255? Replacing the uri_len part with
<size>&hf_len;</size>
should do the trick. Then just run make dbschema, and commit also the updated database definitions.
dialog module uses 512 for each route set (caller/callee side), so perhaps it should be used here the same, eventually defining a variable for it and use it everywhere is stored a path/route set.
Besides regeneration of db creation scripts (with make dbschema), a safety check has to be done to registrar/usrloc module to be sure it does not use some static buffer of a lower size for handling the path.
Hello Daniel,
I've added the 512 size definition as "long_hf_len" to the schema defs and changed the dialog xml files. If Inaki wants to do his change he could also use this.
Cheers,
Henning
2012/9/7 Henning Westerholt henning.westerholt@1und1.de:
Hello Daniel,
I've added the 512 size definition as "long_hf_len" to the schema defs and changed the dialog xml files. If Inaki wants to do his change he could also use this.
Thanks Henning, I've commited the change into master branch.