自分のところでも同じ症状が出たのですが、現象を再現できずにいます。
現象としては、データベースの該当 PM レコードに異常が発生しているので、それを探して直す必要があります。
具体的には、xxxxx_priv_msgs.msg_id のフィールドが 0 になっているレコードがあるので、それを適当な値に変更するか、不要なら削除する必要がります。
phpMyAdmin などが使えればそれで、SQL が判るならコマンドを叩くか、phpコードを書いて実行すればよいでしょう。
例えば、カスタムブロックの PHP-eval 次のようなものを作って表示すると ... でもテストしてないからうまくいくかどうか。
global $xoopsDB;
$xoopsDB->queryF("UPDATE ".$xoopsDB->prefix("priv_msgs")." SET msg_id=9 WHERE msg_id=0");