Problem solved. Somehow during a recent upgrade to MySQL (I think) either the behavior of REPLACE INTO changed or the id column in my session table lost its UNIQUE status. Each call to $session->param() was adding a new row to the table. After making the id column a UNIQUE index everything started working properly again.
--TWH | [reply] |