-
Notifications
You must be signed in to change notification settings - Fork 324
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
Update Rufus-Scheduler version #11
Conversation
How have the memory leaks been? Did they go away with the update to Rufus Scheduler 3? |
Looked at Rufus-Scheduler 3, and at least from looking at app.rb, I found no problem in our simple usage creating a scheduler. Our default jobs in buzzwords, convergence, sample and twitter.rb should work fine too. +1 for merging. Let's leave it open for a while, so that others can review this change too. In the meantime, I'll try to test it locally, with a few sample jobs, and also try to write a couple of unit tests using a rufus scheduler and a few methods, so that next time we have to bump up the version we can check for simple backward compatibility (e.g. scheduler.every is a valid method). |
I'd like to merge this too, anyone have a chance to test it? |
Hi, I just forked the repo and changed the dependency, changed my Gemfile like so: I'll keep an eye out the next couple of days for memory leaking (which was/is bothering my dashboard). |
One thing did with my scheduling was add a property to avoid overlapping.
Not saying its your "fix", but it may smooth a few things out for you. |
@MartynKeigher - The |
@MartynKeigher the allow_overlapping property defintely helped! The dashboard is now running at a steady memory usage. |
Any update on this? Any chance it could be merged? |
I just pushed a rebased version of the branch and commit to avoid merge conflicts. I haven't bumped the Rufus-Scheduler version beyond what it was before (3.2.0) although more recent versions have been released as I haven't actually tested backwards compat or drop in replace-ability with this newer version. Glancing at the changelog, I note that they've dropped Ruby 1.9 support outright in the latest release; so those changes don't suggest to me that they're trivial. For what it's worth, we've been running Dashing with this change on it for a while now and saw memory improvements and stability. |
Uses a new (rewritten) version of Rufus-Scheduler.
This is mostly backwards compatible, and it works out of the box with our Dashboards; but others may find they require some minor compat changes to existing jobs. It's probably best to check with the rufus-scheduler README under the notable changes section if anything here is likely to affect your jobs.
I'm hoping that using a new Rufus-Scheduler won't exhibit some nasty memory leaking behaviour we observed where objects from previous jobs aren't properly dereferenced.
At the very least, this makes any future updates a bit less of a leap and a bit easier to accomodate for.