we would like to use hangfire to automate the management of our background tasks. Our software supports both SQL Server and Oracle. I’ve seen that you do not support Oracle at the moment. I would like to know if you expect to support it in future versions?
I checkout your code and i saw that you have a specific implementation for SQL Server (hangefire.SqlServer project) with a lot of specific (hard coded) SQL queries. I saw also that these queries are optimized with Hints.
Unfortunately, you do not have any interface to implement new database storage easily. From what I’ve seen, the fastest way to support Oracle is to duplicate the Hangfire.SqlServer project (Hangfire.Oracle) and review all SQL queries to make them compatible with Oracle. But this is a bad solution because we will have a bench of duplicated code and any modification will be costed twice because we should take in account the two projects (sql server and oracle).
So I would like to know if you are open to include in your project a new implementation based on Entity framework (Hangfire.EntityFramework) which will be made obviously using Entity framework to support several types of database easily (Oracle). This version will not necessarily be optimized for SQL Server but it will allow those who use other type of database to use hangFire easily. For those who want to use the optimized version, they can still use Hangfire.SqlServer.
If you are okey with this solution, we will develope it and create a pull request to integrate it in the Hangfire project.