diff --git a/src/Hangfire.PostgreSql/Scripts/Install.v23.sql b/src/Hangfire.PostgreSql/Scripts/Install.v23.sql new file mode 100644 index 0000000..0a67168 --- /dev/null +++ b/src/Hangfire.PostgreSql/Scripts/Install.v23.sql @@ -0,0 +1,13 @@ +SET search_path = 'hangfire'; + +DO $$ +BEGIN + IF EXISTS(SELECT 1 FROM "schema" WHERE "version"::integer >= 23) THEN + RAISE EXCEPTION 'version-already-applied'; +END IF; +END $$; + +DROP INDEX IF EXISTS ix_hangfire_job_statename_is_not_null; +CREATE INDEX ix_hangfire_job_statename_is_not_null ON job USING btree(statename) INCLUDE (id) WHERE statename IS NOT NULL; + +RESET search_path; diff --git a/tests/Hangfire.PostgreSql.Tests/PostgreSqlInstallerFacts.cs b/tests/Hangfire.PostgreSql.Tests/PostgreSqlInstallerFacts.cs index 1fb173a..80d9002 100644 --- a/tests/Hangfire.PostgreSql.Tests/PostgreSqlInstallerFacts.cs +++ b/tests/Hangfire.PostgreSql.Tests/PostgreSqlInstallerFacts.cs @@ -20,7 +20,7 @@ public void InstallingSchemaUpdatesVersionAndShouldNotThrowAnException() PostgreSqlObjectsInstaller.Install(connection, schemaName); int lastVersion = connection.Query($@"SELECT version FROM ""{schemaName}"".""schema""").Single(); - Assert.Equal(22, lastVersion); + Assert.Equal(23, lastVersion); connection.Execute($@"DROP SCHEMA ""{schemaName}"" CASCADE;"); }); @@ -39,7 +39,7 @@ public void InstallingSchemaWithCapitalsUpdatesVersionAndShouldNotThrowAnExcepti PostgreSqlObjectsInstaller.Install(connection, schemaName); int lastVersion = connection.Query($@"SELECT version FROM ""{schemaName}"".""schema""").Single(); - Assert.Equal(22, lastVersion); + Assert.Equal(23, lastVersion); connection.Execute($@"DROP SCHEMA ""{schemaName}"" CASCADE;"); });