On Sun, Sep 17, 2017 at 2:52 PM, Neto pr <neto...@gmail.com> wrote: > I am using Postgresql extension pageinspect. > > Could someone tell me the meaning of these columns: magic, version, root, > level, fastroot, fastlevel of the bt_metap function. > > This information is not presents in the documentation.
A magic number distinguishes the meta-page as a B-Tree meta-page. A version number is used for each major incompatible revision of the B-Tree code (these are very infrequent). The fast root can differ from the true root following a deletion pattern that leaves a "skinny index". The implementation can never remove a level, essentially because it's optimized for concurrency, though it can have a fast root, to just skip levels. This happens to levels that no longer contain any distinguishing information in their single internal page. I imagine that in practice the large majority of B-Trees never have a true root that differs from its fast root - you see this with repeated large range deletions. Probably nothing to worry about. > The height of the b-tree (position of node farthest from root to leaf), is > the column Level? Yes. If you want to learn more about the B-Tree code, I suggest that you start by looking at the code for contrib/amcheck. -- Peter Geoghegan -- Sent via pgsql-performance mailing list (email@example.com) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-performance