Hi Adrian, This is the exact log in the file as it appears:
DETAIL: parameters: $1 = '', $2 = '' LOG: connection received: host=localhost port=53284 LOG: connection authorized: user=deva database=mydatabase LOG: connection received: host=localhost port=53285 LOG: connection authorized: user=deva database=mydatabase LOG: execute <unnamed>: INSERT INTO "myschema"."cf_question" ("cf_question_type_id", "cf_question_category_id", "lang", "body") VALUES ($1, $2, $3, $4) RETURNING * DETAIL: parameters: $1 = '1', $2 = '9', $3 = 'swedish', $4 = '{"name": "Do you like Pizza ?", "type": "cat", "store": [{"labeltext": "Yes", "labelvalue": 1}, {"labeltext": "No", "labelvalue": 2}, {"labeltext": "Other", "labelvalue": 3}, {"labeltext": "Don''t know", "labelvalue": 4}], "target": {"place": "Sweden"}, "askfreq": "once", "whydesc": "Because I like it :)"}' LOG: execute <unnamed>: select * from "myschema"."cf_user" where cf_user_id=$1 DETAIL: parameters: $1 = '$2a$13$g8VXS3Bt3489I' *LOG: LOG for TRIGER called on cf_question* STATEMENT: INSERT INTO "monolith"."cf_question" ("cf_question_type_id", "cf_question_category_id", "lang", "body") VALUES ($1, $2, $3, $4) RETURNING * As you can see from the above, there is a LOG which says Trigger called. This is the statement inside the function which means the trigger is firing, but why the subsequent column is not updated, I can't understand. Also, I am using log_statement='all' setting. Anything wrong you finding which I can't recognise in the log statements ? regards Kiran On Sat, Sep 10, 2016 at 9:08 PM, Adrian Klaver <adrian.kla...@aklaver.com> wrote: > On 09/10/2016 11:39 AM, Kiran wrote: > >> Hi Adrian, >> >> Thanks for your response. >> I tried with logging. The application is inserting the record that I am >> passing into the database. But the trigger is not firing. >> > > What is the text of the complete statement as it appears in the logs? > > When you do the INSERT the other fields are the same in the database as in > the row, after the INSERT? > > Related to second question, is the the INSERT being done in an explicit > transaction eg. BEGIN; INSERT something; and if so is there a COMMIT at the > end? > > Have you tried with log_statement = 'all' to see if there are non-mod > statements running at the same time? > > > I have been looking into this issue since morning with out any positive >> outcome :(. >> If you have any other tips, it will be really helpful. >> >> regards >> Kiran >> >> On Sat, Sep 10, 2016 at 3:22 PM, Adrian Klaver >> <adrian.kla...@aklaver.com <mailto:adrian.kla...@aklaver.com>> wrote: >> >> On 09/10/2016 03:59 AM, Kiran wrote: >> >> Hi, >> >> *Problem background :* >> I have a *function in the DB* as follows >> CREATE FUNCTION question_tsv_trigger() RETURNS trigger AS >> $BODY$ >> begin >> New.weighted_tsv := >> to_tsvector('swedish',coalesce(New.body->>'qtext','')::text); >> RAISE NOTICE 'TRIGER called on %', TG_TABLE_NAME; >> return New; >> end >> $BODY$ >> LANGUAGE plpgsql VOLATILE >> COST 100; >> >> **Trigger in the DB:** >> CREATE TRIGGER insert_upd_question_tsvector BEFORE INSERT OR >> UPDATE >> ON myschema.cf_question >> FOR EACH ROW EXECUTE PROCEDURE question_tsv_trigger(); >> >> If I insert a record from my application using following code : >> db.myschema.cf_question.insert({ >> cf_question_type_id:request.pa <http://request.pa>yload.type_id, >> cf_question_category_id:request.payload.cat_id, >> lang:request.payload.lang, >> body:request.payload.body >> } >> >> The above app code inserts the record in the DB, but the >> respective trigger >> in the database is not triggered hence the "weighted_tsv" >> columns is empty >> for this record. >> >> But if I insert a record from the postgres psql, it will insert >> and >> the respective trigger is working perfectly. >> >> What could be the problem ? Why trigger is not working if I >> insert from the >> application ? Am I doing anything wrong ? >> Any help would be really really appreciated. >> >> >> If you have not, turn on log_statement: >> >> https://www.postgresql.org/docs/9.5/static/runtime-config- >> logging.html#RUNTIME-CONFIG-LOGGING-WHAT >> <https://www.postgresql.org/docs/9.5/static/runtime-config- >> logging.html#RUNTIME-CONFIG-LOGGING-WHAT> >> >> Then check your log to see what the application is sending to the >> database. >> >> >> Thanks >> Kiran >> >> >> >> -- >> Adrian Klaver >> adrian.kla...@aklaver.com <mailto:adrian.kla...@aklaver.com> >> >> >> > > -- > Adrian Klaver > adrian.kla...@aklaver.com >