Hence I have implemented the required new functions e.g start_transaction.
However mysql only has one table locking mode (unlike PostgreSQL) and if you lock a table within a transaction, you can't read other tables without also obtaining locks for them as well. As there are places where active_watchers table is locked but the code tries to query the watchers table, this is an issue. I have simply disabled the table locking for the time being.
It is possible that the implicit transaction locking that mysql is enough to solve the issues you were trying to solve. To determine this, can you tell me or point to a thread that explains what race conditions were trying to be mitigated in process_notifier mode.