dhiaayachi / temporal

Temporal service
https://docs.temporal.io
MIT License
0 stars 0 forks source link

SchedulesClientListOptions is missing SearchAttributes param #226

Open dhiaayachi opened 2 months ago

dhiaayachi commented 2 months ago

Is your feature request related to a problem? Please describe. https://pkg.go.dev/go.temporal.io/sdk@v1.25.1/internal#ScheduleOptions has a description for the field SearchAttributes: "SearchAttributes - Indexed info that can be used in query of List schedules APIs". But the List API of a https://pkg.go.dev/go.temporal.io/sdk@v1.25.1/internal#ScheduleClient take https://pkg.go.dev/go.temporal.io/sdk@v1.25.1/internal#ScheduleListOptions param, which has only PazeSize and no SearchAttributes.

A clear and concise description of what the problem : Either the SearchAttributes field description is incorrect or (what is more likely) it should be one of the parameters in ScheduleListOptions.SearchAttributes field.

Describe the solution you'd like Add ScheduleListOptions and do the filtering based on it in ScheduleClient.List API.

Additional context Am I missing any other List schedules API?

dhiaayachi commented 1 month ago

Thanks for reporting this issue.

The SearchAttributes field description in ScheduleOptions is indeed incorrect. The ScheduleClient.List API doesn't currently support filtering by SearchAttributes.

You can use the temporal workflow list command with the --query flag to filter by Search Attributes for Workflow Executions started by a Schedule.

For example:

temporal workflow list --query 'ExecutionStatus = "Running" AND TemporalScheduledById="your-schedule-id"'

This command will list all Workflow Executions that are currently running and were started by the Schedule with the your-schedule-id.

We are working to add support for SearchAttributes to the ScheduleClient.List API in a future release.

dhiaayachi commented 1 month ago

Thank you for reporting this issue!

The description of the SearchAttributes field in the ScheduleOptions struct is indeed incorrect.

You are correct that the SearchAttributes field should be a parameter of the ScheduleListOptions struct. The ScheduleClient.List API allows filtering by PageSize, and you can work around this limitation by using the temporal CLI to list Schedules using the --query modifier with Search Attributes.

This is a known issue that we are working on resolving. You can track the progress of this issue on the Temporal GitHub repository.

dhiaayachi commented 1 month ago

Thanks for reporting this issue! It looks like the description for the SearchAttributes field in ScheduleOptions is currently incorrect.

There is no SearchAttributes field available on the ScheduleListOptions struct, but you can filter Workflow Executions in a Batch Job with the --query flag that supports Search Attributes.

If you need to retrieve Workflow Executions based on Search Attributes, you can use the Temporal CLI's workflow list command with the --query flag.

Let me know if you have any other questions.