
WriteConcern가 지정되지 않은 경우, default WriteConcern가 적용되지 않는 문제를 해결하기 위해서는 다음과 같이 코드를 수정할 수 있습니다.
#hostingforum.kr
php
$writeConcern = new MongoDBDriverWriteConcern(MongoDBDriverWriteConcern::MAJORITY, 1000);
$manager->executeBulkWrite($collectionName, $bulk, $writeConcern);
Custom WriteConcern를 지정했을 때, bsonSerialize에서 WriteConcern를 serialize하지 못하는 문제를 해결하기 위해서는, WriteConcern를 serialize할 수 있는 형태로 변환해 주어야 합니다. 예를 들어, 다음처럼 serialize할 수 있는 형태로 변환해 주면 됩니다.
#hostingforum.kr
php
$writeConcern = new MongoDBDriverWriteConcern(MongoDBDriverWriteConcern::MAJORITY, 1000);
$writeConcernArray = $writeConcern->getWriteConcernOptions();
$writeConcernArray['w'] = $writeConcern->getW();
$writeConcernArray['wtimeout'] = $writeConcern->getWTimeout();
$writeConcernArray['fsync'] = $writeConcern->getFsync();
$writeConcernArray['journal'] = $writeConcern->getJournal();
$manager->executeBulkWrite($collectionName, $bulk, $writeConcernArray);
이러한 방법으로 문제를 해결할 수 있습니다.
2025-03-18 23:53