Skip to Main Content
InterSystems Ideas

Have an idea, suggestion, or something that doesn’t work as expected in InterSystems products or services? Share it here on the InterSystems Ideas Portal.

The Ideas Portal is where community members can propose improvements, report bugs, and help influence the product roadmap across InterSystems products and the overall developer experience. 22% of submitted ideas are implemented by InterSystems or members of the Developer Community.

💡 Ideas and bugs are both welcome, no matter how big or small. You can submit feature requests, usability improvements, workflow suggestions, and bug reports. Whether you’re an experienced expert or just getting started, your fresh perspective is valuable.

🛠️ About bugs and fixes. If you have access to InterSystems WRC, please submit bugs there for immediate action. Bug reports submitted through the Ideas Portal are reviewed and tracked, but do not guarantee immediate resolution.

Start by sharing what could be better - the community and our teams will help take it from there.

Status Community Opportunity
Created by Alexey Maslov
Created on Jun 15, 2024

Distributed Work Manager

Imagine Distributed Work Manager (DWMgr) that can:

  • Call methods or $$-functions in background on any reachable IRIS server (e.g. on Asynchronous or Failover Mirror Member), so called target server,

    • pushing all necessary input data in local or global variables,

    • checking status and progress of such work items.

    • getting results from the work items, be it in local or global variables, in one of two different ways:

      • by checking execution status and getting the results explicitly,

      • by calling callback methods.

  • Manage the status of any configured target server:

    • get or set its status (online or offline)

    • evaluate its load by getting the execution queue length, etc.

Possible use cases of DWMgr can be:

  • Freeing resources of Primary database server by running reports and other resource consuming jobs on a target server

    • with full control on such a job and

    • getting their results into the primary database.

  • Querying remote servers that can respond with noticeable delays, so it's better to run such requests asynchronously.

  • ADMIN RESPONSE
    Nov 25, 2024

    Thank you for submitting the idea. The status has been changed to "Community Opportunity".

    Stay tuned!

  • Alexey Maslov
    Nov 22, 2024

    I disagree with a sentence that this functionality already exists because it differs from ShardWorkMgr in several ways.

    ShardWorkMgr:

    • works upon ECP, so can't offload the main database from extra payload,

    • provides unidirectional way of exchange data with to functions being remotely called.

    DWMgr:

    • works upon Mirroring, so can offload the main database,

    • can proceed on read only mirror members without <PROTECT> errors,

    • provides bidirectional way of exchange data with functions being remotely called; yes, it uses temporary globals, but this is not a problem even on read only members.

    Besides, why so many people voted for the idea despite its existence?

    Don't you think that changing its status to "Community opportunity" would be fair solution?


  • Admin
    Vadim Aniskin
    Aug 8, 2024

    This idea is the Experts Nomination🥇 2nd place winner of the 3rd InterSystems Ideas Contest