Class MySqlWeaselStoreBuilderExtensions
- Namespace
- Quartz
- Assembly
- Quartz.Weasel.MySQL.dll
Hands a MySQL job store's schema to Weasel.
public static class MySqlWeaselStoreBuilderExtensions
- Inheritance
-
MySqlWeaselStoreBuilderExtensions
- Inherited Members
Methods
UseWeaselForMySql(IPersistentStoreBuilder, Action<MySqlWeaselOptions>?)
Lets Weasel create and migrate this store's tables: at startup, and from JasperFx's
db-apply, db-assert, db-patch and resources commands.
public static IPersistentStoreBuilder UseWeaselForMySql(this IPersistentStoreBuilder store, Action<MySqlWeaselOptions>? configure = null)
Parameters
storeIPersistentStoreBuilderThe persistent store being configured.
configureAction<MySqlWeaselOptions>Adjusts MySqlWeaselOptions.
Returns
- IPersistentStoreBuilder
The same store builder, for chaining.
Remarks
The store must be on MySQL through MySqlConnector — UseMySqlConnector(...) on the same store,
because Weasel speaks no other MySQL driver — and must not also call ProvisionSchema(); both
are checked at startup. Weasel reaches the database through the store's own connections, and finds
the tables through its table prefix: a database before the last dot, the connection's database
otherwise.
The tables are add-only: columns, indexes and foreign keys the application added to them are kept.
The index names Quartz 3.x created and 4.x retired are dropped. Every apply takes the user lock
LockName first. MySQL 8.0 or later: 5.7 ignores the descending
column of IDX_QRTZ_T_NFT_ST, so the index would read as changed on every apply.
The dialect is in the name so that an application referencing more than one Quartz.Weasel package never has two candidates for one call.