From 2fd9273d97ce995cadc71e87aa6216a69972cbc1 Mon Sep 17 00:00:00 2001
From: "Vadim B. Mikheev" <vadim4o@yahoo.com>
Date: Wed, 9 Apr 1997 02:20:32 +0000
Subject: [PATCH] getattnvals(): if attnvals in pg_attribute is 0 then use
 ATTNVALS_SCALE/reltuples (instead of reltuples).

---
 src/backend/utils/adt/selfuncs.c | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/src/backend/utils/adt/selfuncs.c b/src/backend/utils/adt/selfuncs.c
index 769024bd427..b127e4238b2 100644
--- a/src/backend/utils/adt/selfuncs.c
+++ b/src/backend/utils/adt/selfuncs.c
@@ -12,7 +12,7 @@
  *
  *
  * IDENTIFICATION
- *    $Header: /cvsroot/pgsql/src/backend/utils/adt/selfuncs.c,v 1.5 1997/02/07 16:23:39 momjian Exp $
+ *    $Header: /cvsroot/pgsql/src/backend/utils/adt/selfuncs.c,v 1.6 1997/04/09 02:20:32 vadim Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -291,6 +291,15 @@ getattnvals(Oid relid, AttrNumber attnum)
 	return(0);
     }
     nvals = ((Form_pg_class) GETSTRUCT(atp))->reltuples;
+    /* Look above how nvals is used. 	- vadim 04/09/97 */
+    if ( nvals > 0 )
+    {
+    	double selratio = 1.0 / (double)nvals;
+    	
+    	selratio *= (double)ATTNVALS_SCALE;
+    	nvals = (int) ceil (selratio);
+    }
+    
     return(nvals);
 }
 
-- 
GitLab