Would someone review these problems and submit a patch? Thanks. ---------------------------------------------------------------------------
Tom Lane wrote: > Cott Lang <[EMAIL PROTECTED]> writes: > > If the number of tuples is sufficiently high, pg reports 'reltuples' > > back in TABLE_STATS_QUERY in scientific notation instead of an integer. > > Right, because that column is actually a float4. > > > Changing from atoi() to atof() solves the problem completely. > > > new_tbl->reltuples = > > atof(PQgetvalue(res, row, PQfnumber(res, "reltuples"))); > > > new_tbl->relpages = > > atof(PQgetvalue(res, row, PQfnumber(res, "relpages"))); > > I should think this would break in different ways once reltuples exceeds > INT_MAX. A full fix would require changing new_tbl->reltuples to be > float or double, and coping with any downstream changes that implies. > > Also, relpages *is* an integer, though it's best interpreted as an > unsigned one. (Ditto for relid.) Looks like this code is 0-for-3 on > getting the datatypes right :-( > > regards, tom lane > > ---------------------------(end of broadcast)--------------------------- > TIP 4: Don't 'kill -9' the postmaster > -- Bruce Momjian | http://candle.pha.pa.us [EMAIL PROTECTED] | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073 ---------------------------(end of broadcast)--------------------------- TIP 3: if posting/reading through Usenet, please send an appropriate subscribe-nomail command to [EMAIL PROTECTED] so that your message can get through to the mailing list cleanly