Azure / Azure/azure-functions-python-worker
[Bug] Azure Table row key not honoured
- Dominant language
- Python
- Stars
- 357
- Forks
- 116
- Avg merge
- 32m
- Merged PRs (30d)
- 1
Description
### Expected Behavior
I want to read only rows for specific row key and partition key from a table storage in azure.
### Actual Behavior
The function returned all rows for the partition instead of filtering on row key.
### Steps to Reproduce
1. Create a python v2 function in vs code on mac.
2. Specify the table as input binding with the relevant details
3. Print the table data read
### Relevant code being tried
```shell
import logging
import azure.functions as func
import json
app = func.FunctionApp()
@app.table_input(arg_name="messageJSON",
connection="table_conn",
table_name="lastSyncStatus",
row_key="inspector",
partition_key="category")
@app.timer_trigger(schedule="0 */5 * * * *", arg_name="myTimer", run_on_startup=False, use_monitor=False)
def table_in_binding(myTimer: func.TimerRequest, messageJSON):
message = json.loads(messageJSON)
logging.info(message)
```
### Relevant log output
```shell
Executing 'Functions.table_in_binding' (Reason='This function was programmatically called via the host APIs.', Id=33c96dd8-2a8a-4182-af0c-fe5b884e4373)
[2025-07-28T18:44:02.465Z] [{'PartitionKey': 'category', 'RowKey': 'infrastructure', 'last_sync_time': '2025-07-28T18:15:00.004945+00:00', 'pipeline_succeeded': False}, {'PartitionKey': 'category', 'RowKey': 'inspector', 'last_sync_time': '2025-07-28T18:15:00.004945+00:00', 'pipeline_succeeded': True}]
[2025-07-28T18:44:02.476Z] Executed 'Functions.table_in_binding' (Succeeded, Id=33c96dd8-2a8a-4182-af0c-fe5b884e4373, Duration=1025ms)
```
### requirements.txt file
```shell
azure-functions
```
### Where are you facing this problem?
Local - Core Tools
### Function app name
_No response_
### Additional Information
_No response_
Contributor guide
Research direction
The issue provides a Python v2 function using the Azure table_input binding, along with reproduction steps and logs. Start by reproducing the binding with the shown row_key and partition_key, then trace how the table input is resolved. Done means the binding returns only the requested row and a regression check covers that behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- azure, python
- Domain
- cloud, databases
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100