GithubHelp home page GithubHelp logo

Comments (8)

cemremengu avatar cemremengu commented on May 13, 2024 1

You may be correct with that intituition since I am currently using redisson and it has no way of providing custom id as well (even for recurring tasks) so I guess it is users responsibility to keep track of those or linking meaningful names instead of the system. Feel free to close the issue whenever you need.

from jobrunr.

cemremengu avatar cemremengu commented on May 13, 2024

By the way, if you agree to these changes I can send a PR for any of the enhancement issues I create. Just let me know please.

from jobrunr.

rdehuyss avatar rdehuyss commented on May 13, 2024

I'm happy to foresee a delete api.

But I don't see the need for specifying a custom id. Is there a reason why you need it?

from jobrunr.

cemremengu avatar cemremengu commented on May 13, 2024

I wanted it so that deleting is easier if we could assign a label to jobs. Otherwise, you have to somehow do a book keeping of the jobids. Is there a way to know which jobid belongs to which job when deleting?

from jobrunr.

rdehuyss avatar rdehuyss commented on May 13, 2024

FYI, the delete api is progressing but was really difficult - take for example a long-running job that you want to delete (so it is already processing) when you delete it: I'm now interrupting the Thread so that the processing is cancelled and the job is stopped (even if it has not completed yet).

Regarding the book keeping of jobids - I don't understand your question: "Is there a way to know which jobid belongs to which job when deleting?"

For recurring jobs it makes sense to delete by a custom id that you can provide. But why do you need it for a normal enqueued job? Normally, if you enqueue a standard job and the queue is empty, it will be processed immediately - why would you delete it after enqueueing it?

Perhaps some extra business context can help me understand your exact problem?

from jobrunr.

cemremengu avatar cemremengu commented on May 13, 2024

Thanks for the improvements, I really would like to contribute as well once I have time too.

Maybe I am overthinking and wrong but cant you have a delayed task that will run 5 hours later? In that case you may want to cancel. Say that you schedule to send an email if you dont receive a particular event in 5 hours. Once you receive the event, you cancel the delayed job. Here you can link the job and event name so that it is easier to match.

Also for deleting, some users may want a graceful option (i.e. wait currently running instance to finish)

from jobrunr.

rdehuyss avatar rdehuyss commented on May 13, 2024

I can understand the business scenario but I don't know yet if providing the id for the job is the way to go.

I think it can result in a lot of other issues (what when you have more than one job for the same business concept, what if you enqueue 2 totally different jobs with the same id, ... ).

I'll look if I cannot find another solution that solves the problem...

from jobrunr.

rdehuyss avatar rdehuyss commented on May 13, 2024

Closing as ok with original poster

from jobrunr.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.