Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

#7895: Hangfire Dashboard does not know job names of missing assemblies #1715

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

rolfik
Copy link

@rolfik rolfik commented Jul 27, 2020

I have started to use Hangfire for some of our applications. Thank You for the work.
One of applications is UWP one which cannot host Hangfire Dashboard itself. So I have created Windows service Hangfire Dashboard server monitoring the application externally via shared SQLite database.
To see actions in the Dashboard instead of "Missing type etc." messages, I have augmented it to load action information from InvocationData when Type cannot be found/loaded.
This allows me to manage jobs even without action assemblies.

@rolfik
Copy link
Author

rolfik commented Jul 27, 2020

I see the conflict with my solution with newly added DBG properties which try to solve similar thing, but only on Job Details page.
More discussion is required how to solve the conflict.

@odinserj
Copy link
Member

Unfortunately I see breaking changes in JobName method and it will not work without InvocationData argument – NullReferenceException will be thrown, so we can’t simply add method overload and pass null. And I also see InvocationData class is changed itself and that’s dangerous – did you try to run unit tests at least for Hangfire.Core? AppVeyor needs merge conflicts to be resolved first to see whether all the unit tests passed.

It’s not hard to build a feature, it’s hard to build it in a way which will not break processing in anyone’s environment. Breaking changes are the simplest problems to find, but there are much harder ones – forward (i.e. older versions can process data generated from the newer ones, for making rolling upgrades possible) and backward (vice versa) compatibility.

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

Successfully merging this pull request may close these issues.

3 participants