...
Job starts once in 24 hours by default (configured parameter PREPERSON_ MERGE_REQUEST_SCHEDULE).
After starting it gets value from global parameter PREPERSON_ MERGE_REQUEST_EXPIRATION.
Select all entries from il.merge_requests with status=NEW or APPROVED:
If inserted_at >= current_datetime() - PREPERSON_ MERGE_REQUEST_EXPIRATION. Then skip the record
If inserted_at < current_datetime() - PREPERSON_ MERGE_REQUEST_EXPIRATION. Then update entry:
set status = EXPIRED
set updated_at = current_datetime()
set updated_by = system_user()
...