When a GA4 import/re-import job enters an inconsistent state, administrators currently have no supported UI way to recover it. In the reported case, the importer status contained do_not_import_latest_dates_first=true, which later caused the resume/re-import flow to reach Date::factory(NULL) and fail with:
Date format must be: YYYY-MM-DD ... : NULL
The customer was only able to proceed by directly editing matomo_option and changing do_not_import_latest_dates_first from true to false.
Problem
The importer stores critical runtime state in matomo_option, but recovery from a broken/cancelled/interrupted state requires database access and knowledge of internal fields. This is not suitable for normal administrators and creates support load.
Requested improvement
Add a recovery / advanced controls section in the Google Analytics Importer UI that allows a super user to:
inspect the current importer state for a job
reset importer status safely without manual DB edits
clear/cancel stale or empty jobs that remain visible in the UI
optionally edit selected recovery-related fields, such as:
do_not_import_latest_dates_first
future_resume_date
main_import_progress
last_date_imported
restart or resume a re-import from a validated date range
Expected outcome
Users can recover from interrupted imports and resume re-importing historical periods without touching the database.
Why this matters
This blocked a customer project under delivery pressure and forced unsupported DB changes as the only practical workaround.
When a GA4 import/re-import job enters an inconsistent state, administrators currently have no supported UI way to recover it. In the reported case, the importer status contained do_not_import_latest_dates_first=true, which later caused the resume/re-import flow to reach Date::factory(NULL) and fail with:
Date format must be: YYYY-MM-DD ... : NULL
The customer was only able to proceed by directly editing matomo_option and changing do_not_import_latest_dates_first from true to false.
Problem
The importer stores critical runtime state in matomo_option, but recovery from a broken/cancelled/interrupted state requires database access and knowledge of internal fields. This is not suitable for normal administrators and creates support load.
Requested improvement
Add a recovery / advanced controls section in the Google Analytics Importer UI that allows a super user to:
inspect the current importer state for a job
reset importer status safely without manual DB edits
clear/cancel stale or empty jobs that remain visible in the UI
optionally edit selected recovery-related fields, such as:
do_not_import_latest_dates_first
future_resume_date
main_import_progress
last_date_imported
restart or resume a re-import from a validated date range
Expected outcome
Users can recover from interrupted imports and resume re-importing historical periods without touching the database.
Why this matters
This blocked a customer project under delivery pressure and forced unsupported DB changes as the only practical workaround.