-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Summary: Found several small perf opportunities during a test on an overloaded master, using perf. > + 4.10% yb::QLRowBlock::Extend During the `system.partitions` queries, noticed we did not have reserve semantics at the QLRowBlock level. ``` - 2.98% yb::master::CatalogManager::GetTabletLocations - 2.87% yb::master::CatalogManager::BuildLocationsForTablet + 1.02% yb::master::TSInformationPB::TSInformationPB ``` This was some older refactor on the TSDescriptor which added the ability to pass the info object as a shared_ptr, but for some reason, we were dereferencing it in this API... One stack I forgot to save was for CopyRegistration, which used to do a pass by value, so it could then use PB::Swap. Turns out that was more expensive than just passing by reference and setting the 3 mutable fields explicitly, as then we could continue using the arena allocation! Sometimes, we actually use a lot of CPU just to report the slow query logging, due to constructing stack traces! Added a gfag to control the time cutoff, so we could disable this in prod, if needed. Flag and defaults: `master_log_lock_warning_ms=100` Test Plan: Jenkins Reviewers: sergei, rahuldesirazu, nicolas Reviewed By: nicolas Subscribers: ybase Differential Revision: https://phabricator.dev.yugabyte.com/D10145
- Loading branch information
Showing
7 changed files
with
28 additions
and
14 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters