On Tue, 5 Apr 2005 alvin.yk@gmail.com wrote:
> I see statements below being executed non-stop. Who is triggering these
> statemetns? Is this normal? What am I doing wrong?
>
>
> 2005-04-04 18:05:00 CST PARSELOG: statement: SELECT attnotnull FROM
> pg_catalog.pg_attribute WHERE attrelid = $1 AND attnum = $2
> 2005-04-04 18:05:00 CST PARSELOG: statement: SELECT def.adsrc FROM
> pg_catalog.pg_class c JOIN pg_catalog.pg_attribute a ON
> (a.attrelid=c.oid
> ) LEFT JOIN pg_catalog.pg_attrdef def ON (a.attrelid=def.adrelid AND
> a.attnum = def.adnum) WHERE c.oid = $1 and a.attnum = $2 AND def.adsrc
> L
> IKE '%nextval(%'
These are the results of ResultSetMetaData.isNullable() and
isAutoIncrement(), which your code is apparently calling. The results of
these calls are cached on a per ResultSet data. We have discussed
caching them at a higher level, but couldn't find a way to know when to
flush that cache.
Kris Jurka