Yup -- the fact that the DBI::dbh objects are allocated into the same Perl address in each child doesn't mean that their internal state, such as a DBMS's session or connection ID, would be identical.
You might try checking your database server to confirm that it knows about each of the connected clients.