Remove unnecessary temporary objects when appending to vector of pairs
This commit is contained in:
parent
e9567b1eeb
commit
3b5d23ef88
|
@ -7147,8 +7147,8 @@ ACTOR Future<Void> getChangeFeedStreamActor(Reference<DatabaseContext> db,
|
|||
if (locations.size() > 1) {
|
||||
std::vector<std::pair<StorageServerInterface, KeyRange>> interfs;
|
||||
for (int i = 0; i < locations.size(); i++) {
|
||||
interfs.push_back(std::make_pair(locations[i].second->getInterface(chosenLocations[i]),
|
||||
locations[i].first & range));
|
||||
interfs.emplace_back(locations[i].second->getInterface(chosenLocations[i]),
|
||||
locations[i].first & range);
|
||||
}
|
||||
wait(mergeChangeFeedStream(db, interfs, results, rangeID, &begin, end) || cx->connectionFileChanged());
|
||||
} else {
|
||||
|
|
|
@ -361,7 +361,7 @@ ACTOR Future<Void> readHotDetector(DataDistributionTracker* self) {
|
|||
/*
|
||||
ACTOR Future<Void> extrapolateShardBytes( Reference<AsyncVar<Optional<int64_t>>> inBytes,
|
||||
Reference<AsyncVar<Optional<int64_t>>> outBytes ) { state std::deque< std::pair<double,int64_t> > past; loop { wait(
|
||||
inBytes->onChange() ); if( inBytes->get().present() ) { past.push_back( std::make_pair(now(),inBytes->get().get()) ); if
|
||||
inBytes->onChange() ); if( inBytes->get().present() ) { past.emplace_back(now(),inBytes->get().get()); if
|
||||
(past.size() < 2) outBytes->set( inBytes->get() ); else { while (past.size() > 1 && past.end()[-1].first -
|
||||
past.begin()[1].first > 1.0) past.pop_front(); double rate = std::max(0.0,
|
||||
double(past.end()[-1].second-past.begin()[0].second)/(past.end()[-1].first - past.begin()[0].first)); outBytes->set(
|
||||
|
|
|
@ -4856,14 +4856,14 @@ public:
|
|||
}
|
||||
|
||||
// Start reading the page, without caching
|
||||
entries.push_back(std::make_pair(q.get(),
|
||||
self->readPage(PagerEventReasons::LazyClear,
|
||||
q.get().height,
|
||||
snapshot,
|
||||
q.get().pageID,
|
||||
ioLeafPriority,
|
||||
true,
|
||||
false)));
|
||||
entries.emplace_back(q.get(),
|
||||
self->readPage(PagerEventReasons::LazyClear,
|
||||
q.get().height,
|
||||
snapshot,
|
||||
q.get().pageID,
|
||||
ioLeafPriority,
|
||||
true,
|
||||
false));
|
||||
--toPop;
|
||||
}
|
||||
|
||||
|
|
|
@ -5204,8 +5204,8 @@ ACTOR Future<Void> update(StorageServer* data, bool* pReceivedUpdate) {
|
|||
if (cloneCursor2->version().version > ver && cloneCursor2->version().version > data->version.get()) {
|
||||
++data->counters.updateVersions;
|
||||
if (data->currentChangeFeeds.size()) {
|
||||
data->changeFeedVersions.push_back(std::make_pair(
|
||||
std::vector<Key>(data->currentChangeFeeds.begin(), data->currentChangeFeeds.end()), ver));
|
||||
data->changeFeedVersions.emplace_back(
|
||||
std::vector<Key>(data->currentChangeFeeds.begin(), data->currentChangeFeeds.end()), ver);
|
||||
updatedChangeFeeds.insert(data->currentChangeFeeds.begin(), data->currentChangeFeeds.end());
|
||||
data->currentChangeFeeds.clear();
|
||||
}
|
||||
|
@ -5291,8 +5291,8 @@ ACTOR Future<Void> update(StorageServer* data, bool* pReceivedUpdate) {
|
|||
}
|
||||
data->tLogMsgsPTreeUpdatesLatencyHistogram->sampleSeconds(now() - beforeTLogMsgsUpdates);
|
||||
if (data->currentChangeFeeds.size()) {
|
||||
data->changeFeedVersions.push_back(std::make_pair(
|
||||
std::vector<Key>(data->currentChangeFeeds.begin(), data->currentChangeFeeds.end()), ver));
|
||||
data->changeFeedVersions.emplace_back(
|
||||
std::vector<Key>(data->currentChangeFeeds.begin(), data->currentChangeFeeds.end()), ver);
|
||||
updatedChangeFeeds.insert(data->currentChangeFeeds.begin(), data->currentChangeFeeds.end());
|
||||
data->currentChangeFeeds.clear();
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue