Re: question on audit columns - Mailing list pgsql-general

From Muhammad Usman Khan
Subject Re: question on audit columns
Date
Msg-id CAPnRvGvHAC8HjLCZ2uUBCRZ7=fMJnkTPd3cBOchJu-Vn7G2MHg@mail.gmail.com
Whole thread Raw
In response to question on audit columns  (yudhi s <learnerdatabase99@gmail.com>)
Responses Re: question on audit columns
List pgsql-general
Hi,

In your scenario, triggers can add some overhead since they require extra processing after each update operation. Considering the size of your table and the high transaction volume, you need to observe that this might significantly affect performance.   




On Wed, 4 Sept 2024 at 17:50, yudhi s <learnerdatabase99@gmail.com> wrote:
Hello,
In postgres database , we have all the tables with audit columns like created_by_user, created_timestamp,updated_by_user, updated_timestamp. So we have these fields that were supposed to be populated by the time at which the insert/update operation happened on the database but not at the application level. So we are planning to populate the created_by_user, created_timestamp columns by setting a default value of "current_timestamp" and "current_user" for the two columns,  but no such this is available to populate while we do the update of the row, so the only option seems to be through a trigger. 

So wanted to check with the experts here  ,considering the table will be DML heavy table (300M+ transactions will be inserted daily), Is is okay to have the trigger for this table for populating all the audit columns or should we keep default for  created_by_user, created_timestamp and just trigger for the update related two audit column? Basically wanted to see, if the default value does the same thing as a trigger or it does something more optimally than trigger?

Regards
Yudhi

pgsql-general by date:

Previous
From: yudhi s
Date:
Subject: question on audit columns
Next
From: yudhi s
Date:
Subject: Re: question on audit columns