Hey folks, we're still getting a couple of duplicate entry errors every day (about 10-15 on a site with 20 million page impressions/month) caused by Catalyst::Plugin::Session (0.25) used with the DBIx::Class storage backend (0.10) and a MySQL 5 with an InnoDB session table which was created exactly as specified in the POD. This seems to happen during peak hours or when users hammer the site with reloads or in other words, when there are a lot of parallel requests with the same session cookie.
I'm not sure why this is happening because the _load_row() method of the store delegate explicitly wraps everything in a txn_do() which should make the find_or_create() atomic and not prone to concurrent select/insert/update problems. I know that this has been talked about a lot in the past and I'm a little bit surprised that we're still experiencing this. Can somebody smarter than me explain why this is still happening? Could our somewhat outdated DBIx::Class version be the culprit? (0.08107, which we unfortunately have to stick with for now because of some unexpected incompatibilities with recent versions). Thanks a lot for shedding some light on this! --Toby _______________________________________________ List: [email protected] Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst Searchable archive: http://www.mail-archive.com/[email protected]/ Dev site: http://dev.catalyst.perl.org/
