void cbReleaseRange( NLNET::CMessage& msgin, const std::string &serviceName, NLNET::TServiceId mirrorServiceId ) { vector<string> datasetNames; NLNET::TServiceId declaratorServiceId; msgin.serialCont( datasetNames ); msgin.serial( declaratorServiceId ); RMMInstance->releaseRanges( datasetNames, declaratorServiceId, mirrorServiceId ); }
/* * Flush client messages, when they are acknowledged by the PDS */ void cbFlushAckUpdates(NLNET::CMessage& msgin, const std::string &serviceName, TServiceId serviceId) { uint32 databaseId; msgin.serial(databaseId); vector<uint32> ack; msgin.serialCont(ack); CPDSLib* lib = CPDSLib::getLib(databaseId); if (lib != NULL) lib->flushAcknowledged(ack); }
void cbGetRange( NLNET::CMessage& msgin, const std::string &serviceName, NLNET::TServiceId mirrorServiceId ) { if ( Pause ) { nlwarning( "A service is getting a range while the shard is paused" ); beep( 880, 150 ); beep( 660, 150 ); beep( 880, 150 ); } vector<string> datasetNames; NLNET::TServiceId declaratorServiceId; sint32 maxNbEntities; uint8 entityTypeId; msgin.serialCont( datasetNames ); msgin.serial( declaratorServiceId ); msgin.serial( maxNbEntities ); msgin.serial( entityTypeId ); RMMInstance->getRange( datasetNames, maxNbEntities, declaratorServiceId, mirrorServiceId, entityTypeId ); }