-
Notifications
You must be signed in to change notification settings - Fork 262
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
Exception swallowed in "AndFieldValueGenerator" #423
Comments
@jamescosford thank you for reporting this. May we ask you to contribute a PR with some tests that would reproduce the issue? Thanks! |
@jmrozanec it looks like things have moved on a little since the version that was causing my issue; now I don't see an exception logged but I still get strange results from the scheduler. I will create a PR with a test around this issue. |
@jamescosford glad to hear that! That things moved on and the exception no longer appears, as well that you sent a PR 😄 Thanks! We will merge soon. Best! |
I did some digging into the code. The issue is that even though the parser allows overflowing ranges I feel this could be a rather larger change than expected. As in quartz, the expression needs to be overflowed to the next hour / day / month.. |
@IndeedSi thank you for the insight! |
In
AndFieldValueGenerator
, in the functionthere is a try/catch which just logs the exception and returns an empty list.
So I have a situation where a client generates cron expressions interactively using the parser, and expressions which are "valid" then generate completely unexpected results when used with the
ExecutionTime
class.The exception is printed, but there is no way to guard against this behaviour because the exception is not propagated.
An example expression is
0 0 0-07,17-0 ? * SAT
which is parsed asevery hour between 0 and 7 and every hour between 17 and 0 at Saturday day
.If this is expression is not usable, it should not be accepted by the parser. If that's too hard, at least when an
ExecutionTime
is created using a Cron which it can't use, an exception should be generated so it is possible to validate against that, and keep junk out of the system.The text was updated successfully, but these errors were encountered: