In another patch discussion it was brought up why the patch doesn't use
the IndexIsValid() etc. macros.

They are defined thus:

/*
 * Use of these macros is recommended over direct examination of the state
 * flag columns where possible; this allows source code compatibility with
 * the hacky representation used in 9.2.
 */
#define IndexIsValid(indexForm) ((indexForm)->indisvalid)
#define IndexIsReady(indexForm) ((indexForm)->indisready)
#define IndexIsLive(indexForm)  ((indexForm)->indislive)

I don't see them used consistently.  Obviously, some low-level code
needs to bypass them, but it's hard to see where to draw the line.  Is
it worth keeping these?  Is there still code that maintains
compatibility with 9.2 from a single source?

-- 
Peter Eisentraut              http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

Reply via email to