Skip to content

Testing workflow/task with priority #51

Description

@shrimank

In the latest code of netflix conductor added support for priority for workflow.
Need to understand how priority works with workflow/tasks when startWorkflow invoked.

I have tested with simple workflow, just calling an http task.
submitting 3 workflows with different priority, but the conductor server executing those workflows in order of submission(since you are scheduling the workflow for later some time).

#Few More details:
**I have followed below steps to check the priority testing:
1.Registered Task
2.Registered Workflow(SIMPLE)
3.Created Worker and started polling the registered the tasks.

Then, submitted 5 curl request to start the workflow with different priority(0-99) (used endpoint which accepts priority in query param),.
But the worker is polling the task & getting in the order of submission.

[
What are you doing here in the class RedisDynoQueue.class method public List push(final List messages) with priority how it set the priority to the message here.

double priority = message.getPriority() / 100.0;
double score = Long.valueOf(clock.millis() + message.getTimeout()).doubleValue() + priority;
String shard = shardingStrategy.getNextShard(allShards, message);
String queueShard = getQueueShardKey(queueName, shard);
quorumConn.zadd(queueShard, score, message.getId());

]

Please need your help to understand and implement the priority with workflow.

(Netflix/conductor#1224)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions