//Given:
Phactory::define('keys', array('Xid' => 9999999));
Phactory::create('keys');
// This FAILS to find the record:
...
$keysCollection = $udb->selectCollection('keys');
$keyResults = $keysCollection->findOne(array('Xid' => 9999999));
// However - if we simply change the data (stored and searched) to STRING it works!
Phactory::define('keys', array('Xid' => "9999999"));
Phactory::create('keys');
...
$keysCollection = $udb->selectCollection('keys');
$keyResults = $keysCollection->findOne(array('Xid' => "9999999"));
As you can see the number is small enough not to cause any potential Int64 strangeness.
Clearly a bug.