1. We have a production system tracking value added to a batch through series of stages. Value table is updated through triggers on data tables. 2. These trigger functions have been tested and validated for over 1.5 years with more than 100,000 records. 3. We found a difference in the calculation while verifying March 2010 records. Rechecked functions and data. Identified the source of difference as a row in value table which could not be explained. This table is filled by a trigger function, not touched by application code. 4. Tried looking at oid of the rows. select oid, * from transaction_value where transaction_id in (633509, 633507, 633505) and cost_type_id=1; oid | transaction_id | source_id | cost_type_id | section_id | value -----------+----------------+-----------+--------------+------------+------------- 570938 | 633505 | | 1 | | 614078.0250 292333023 | 633509 | 629483 | 1 | | 12284.9411 292332829 | 633505 | 629483 | 1 | | 115701.8092 292332944 | 633507 | 629483 | 1 | | 85101.1377 Three rows starting with 292333--- are expected ones. The one with oid=570938 is the unexplained one. Does this indicate any thing? Or should we look elsewhere? 5. Running PostgreSQL 8.3.5 on i686-pc-linux-gnu, compiled by GCC gcc (GCC) 4.2.1 (SUSE Linux) Have not done upgrades for quite some time. Will do so over the week end. Thanks for any help. Best regards, Ma Sivakumar மா சிவகுமார் எல்லோரும் எல்லாமும் பெற வேண்டும் http://masivakumar.blogspot.com -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general