Skip to content

feat(quartz): add misfire original fire time column mapping#70

Merged
appany-it merged 1 commit intoappany:mainfrom
JasonLandbridge:main
Apr 18, 2026
Merged

feat(quartz): add misfire original fire time column mapping#70
appany-it merged 1 commit intoappany:mainfrom
JasonLandbridge:main

Conversation

@JasonLandbridge
Copy link
Copy Markdown
Contributor

Summary

This PR adds support for Quartz 3.17’s optional MISFIRE_ORIG_FIRE_TIME trigger column in the EF Core schema mappings used by this repo.

Related release note: https://github.com/quartznet/quartznet/releases/tag/v3.17.0

Problem

Quartz introduced an optional MISFIRE_ORIG_FIRE_TIME column on QRTZ_TRIGGERS to preserve the original scheduled fire time for misfired triggers when using “fire now” policies.

Without this column in our EF model mappings:

  • schema validation can fail against upgraded Quartz expectations
  • ScheduledFireTimeUtc behavior for misfired triggers may not align with the new optional column support

What this PR changes

  • Added MisfireOriginalFireTime to the shared QuartzTrigger model.
  • Mapped that property to provider-specific trigger columns:
    • SQL Server: MISFIRE_ORIG_FIRE_TIME (bigint)
    • PostgreSQL: misfire_orig_fire_time (bigint)
    • MySQL: MISFIRE_ORIG_FIRE_TIME (bigint(19))
    • SQLite: MISFIRE_ORIG_FIRE_TIME (bigint)
  • Added provider-level model mapping tests (SQL Server, PostgreSQL, MySQL, SQLite) to verify column name/type mapping.

Scope / compatibility

  • No breaking API changes.
  • This is additive (nullable column mapping).
  • Keeps behavior compatible while enabling Quartz 3.17 optional-column support across all provider projects in this solution.

Validation

  • Solution build passes across targets.
  • Mapping tests were added for each provider to assert the new column metadata.

@JasonLandbridge
Copy link
Copy Markdown
Contributor Author

@sergeyshaykhullin Could you take a look plz?

@appany-it appany-it merged commit 4008c17 into appany:main Apr 18, 2026
1 check failed
@JasonLandbridge
Copy link
Copy Markdown
Contributor Author

@sergeyshaykhullin Thanks for the merge, could you take a look at the last release run?

https://github.com/appany/AppAny.Quartz.EntityFrameworkCore.Migrations/actions/runs/24612723978/job/71969767091

It seems the Nuget API key has expired.

@sergeyshaykhullin
Copy link
Copy Markdown
Member

@JasonLandbridge

Yes, i am in progress of restoring access to nuget =(

Then i will regenerate api and release new version

@JasonLandbridge
Copy link
Copy Markdown
Contributor Author

@sergeyshaykhullin Thanks!

@thaxy
Copy link
Copy Markdown

thaxy commented Apr 20, 2026

Thanks, waiting for the release :) so we can rid of warnings in production. @sergeyshaykhullin

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants