mahara-contributors team mailing list archive
-
mahara-contributors team
-
Mailing list archive
-
Message #51115
[Bug 1785985] Re: Remove triggers from Mahara database
Hi all,
These triggers are causing db dumps to fail (in progresql) due to triggers being constantly deleted and created.
pg_dump -h mydbserver -U myuser mydb > /tmp/test.sql
pg_dump: [archiver (db)] query failed: ERROR: cache lookup failed for function 9184443
pg_dump: [archiver (db)] query was: SELECT tgname, tgfoid::pg_catalog.regproc AS tgfname, pg_catalog.pg_get_triggerdef(oid, false) AS tgdef, tgenabled, tableoid, oid FROM pg_catalog.pg_trigger t WHERE tgrelid = '8279073'::pg_catalog.oid AND NOT tgisinternal
We have a script that will show us which triggers are invalid:
ERROR: cache lookup failed for function 8279073
CRITICAL: Trigger search_elasticsearch_view on table catalyst_mahara_demo_stage.view in database mydb is invalid.
ERROR: cache lookup failed for function 8279073
CRITICAL: Trigger search_elasticsearch_artefact on table mydb.artefact in database mydb is invalid.
Can this issue be kicked along a bit, thanks.
Darrin
--
You received this bug notification because you are a member of Mahara
Contributors, which is subscribed to Mahara.
Matching subscriptions: Subscription for all Mahara Contributors -- please ask on #mahara-dev or mahara.org forum before editing or unsubscribing it!
https://bugs.launchpad.net/bugs/1785985
Title:
Remove triggers from Mahara database
Status in Mahara:
Confirmed
Bug description:
I've created a forum post to discuss this:
* https://mahara.org/interaction/forum/topic.php?id=8324
Basically, my reasoning is:
1. Mahara supports two DB types - MySql and Postgres. Each DB has different syntax when it comes to creating/updating/deleting triggers. This makes it complicated to develop and maintain.
2. Mahara already has the concept of events in place. We can move the
functionality of each trigger into an event. We would then have more
control over the event. For example, don't action an event during an
upgrade.
3. Triggers make it difficult to see what is actually happening. They
are not transparent. If you weren't aware that there is a trigger on
the table, it can make it difficult to track down why something is
behaving in a certain way.
We can start slowly by removing one at a time. It doesn't have to happen all at once.
Just my thoughts.
Cheers.
To manage notifications about this bug go to:
https://bugs.launchpad.net/mahara/+bug/1785985/+subscriptions
References