Don't force creation of the FSM on searches. It will still be created
authorHeikki Linnakangas <heikki@enterprisedb.com>
Thu, 27 Nov 2008 13:32:26 +0000 (13:32 +0000)
committerHeikki Linnakangas <heikki@enterprisedb.com>
Thu, 27 Nov 2008 13:32:26 +0000 (13:32 +0000)
as soon as the first page fills up, and is marked as (almost) full,
though.

src/backend/storage/freespace/freespace.c

index 98b503f3b4c898e775bf1e0dfee5438db26c6635..7f65487de2a2d96c115bbdf1708d5b8a955b2d2d 100644 (file)
@@ -638,13 +638,8 @@ fsm_search(Relation rel, uint8 min_cat)
                Buffer buf;
                uint8 max_avail = 0;
 
-               /*
-                * Read the FSM page. The root page is created if it doesn't exist
-                * yet, to save future searchers the effort of having to call
-                * smgrnblocks() in fsm_readbuf(), only to see that the FSM is
-                * completely empty.
-                */
-               buf = fsm_readbuf(rel, addr, (addr.level != FSM_ROOT_LEVEL));
+               /* Read the FSM page. */
+               buf = fsm_readbuf(rel, addr, false);
 
                /* Search within the page */
                if (BufferIsValid(buf))