SDK Binding Bug Bash Discussion #1320
Replies: 5 comments 1 reply
-
When binding to [Function(nameof(BlobContainerClientInputFunction))]
public async Task<HttpResponseData> BlobContainerClientInputFunction(
[HttpTrigger(AuthorizationLevel.Anonymous, "get", "post")] HttpRequestData req,
[BlobInput("input-container/sample1.txt")] BlobContainerClient client) But since we are binding to a container, it doesn't make sense to have to provide a blob name in the binding; instead I would expect that you could bind to just the container like this: [Function(nameof(BlobContainerClientInputFunction))]
public async Task<HttpResponseData> BlobContainerClientInputFunction(
[HttpTrigger(AuthorizationLevel.Anonymous, "get", "post")] HttpRequestData req,
[BlobInput("input-container")] BlobContainerClient client) This does not work today and you get the following error message:
|
Beta Was this translation helpful? Give feedback.
-
Not related to this feature, but when deploying a function app from VS Code to the portal, my settings in |
Beta Was this translation helpful? Give feedback.
-
I tested blob input binding & trigger, all worked well, only failed for the large file upload ( e.g. 4.8 GB MP4 ) For the large file, my resources are here,
Repro steps :
[Function(nameof(BlobClientInputFunction))]
public async Task<HttpResponseData> BlobClientInputFunction(
[HttpTrigger(AuthorizationLevel.Anonymous, "get", "post")] HttpRequestData req,
[BlobInput("input-container/Dreamlight Ariel.mp4")] BlobClient client)
{
var downloadResult = await client.DownloadContentAsync();
var content = downloadResult.Value.Content.ToString();
_logger.LogInformation("Blob content: {content}", content);
return req.CreateResponse(HttpStatusCode.OK);
}
} the MP4 is a 4.x large file
[Function(nameof(BlobClientInputFunction))]
public async Task<HttpResponseData> BlobClientInputFunction(
[HttpTrigger(AuthorizationLevel.Anonymous, "get", "post")] HttpRequestData req,
[BlobInput("input-container/Dreamlight Ariel.mp4")] BlobClient client)
{
var downloadResult = await client.DownloadContentAsync();
var content = downloadResult.Value.Content.ToString();
_logger.LogInformation("Blob content: {content}", content);
return req.CreateResponse(HttpStatusCode.OK);
} |
Beta Was this translation helpful? Give feedback.
-
We should eval this and get a good understanding of service limits here. Using SDK type binging so functions can stream data incrementally and process larger blobs than it could before ( 100MB -> as documented here but it wasn't accurate). Adding service limits : https://learn.microsoft.com/en-us/azure/azure-functions/functions-scale#service-limits This is related item for doc update of this feature : #1344 |
Beta Was this translation helpful? Give feedback.
-
Closing discussion for completed activity |
Beta Was this translation helpful? Give feedback.
-
A general discussion page to capture any comments or feedback during the SDK Binding Bug Bash.
Beta Was this translation helpful? Give feedback.
All reactions