我认为 fastmod 指定了一些操作,例如就地更新。在我的应用程序中,我正在使用 '$' 修饰符通过 _id 进行更新,例如:
$colleciton->update(
array('_id' => $id),
array(
'$inc' => array('hits' => new MongoInt32(1)),
'$set' => array(
'times.gen' => gettimeofday(true),
'http.code' => new MongoInt32(200)
)
),
array('safe'=>false,'multiple'=>false,'upsert'=>false)
);
我有这样的日志:
Wed Jul 25 11:08:36 [conn7002912] update mob.stat_pages query: { _id: BinData } update: { $inc: { hits: 1 }, $set: { times.gen: 1343203715.684896, http.code: 200 } } nscanned:1 nupdated:1 keyUpdates:0 locks(micros) w:342973 342ms
如您所见,在日志中我没有任何“fastmod”标志。没有“移动”标志,因为我在插入时设置了字段“times.gen”和“http.code”,所以填充因子为 1.0。
我做错了什么,还是我误解了 fastmod 的含义?