Subject: | LiveObject caching may return wrong results for compound primary keys |
Class::DBI 0.96
Perl 5.8.0
RedHat 2.4.21-15.ELsmp
Apache 2.0.46
mod_perl 1.99
I have not run into this (I'm not using compound primary keys) and it's a bit constrived, but if you have a compound primary key consisting of two strings fields A and B, the following two distinct records would be considered the same in LiveObject caching:
A="foo|B=bar"
B="baz"
A="foo"
B="bar|B=baz"
Solution: Use something other than a "|" as the key separator ("\0" might be a good candidate).