Describe the Issue
The FHIR bulk loader fails to process NDJSON files added in subfolders. This subfolder support is required when writing from PySpark. The bug is found in ImportNDJSONQueue.cs since the code assumes that blobs are always under the root though the event grid subscription is configured to pick up anything under ndjson container regardless of nesting.
Steps to reproduce:
Create a subfolder under the ndjson container.
Add an .ndjson file
Review the NDJSON Event Grid trigger and NDJSON Queue trigger logs and see that they both fired.
Review the NDJSON queue and verify that a message was written.
Review the NDJSON queue trigger logs and see a warning that the message was skipped b/c the file was not found at the root of the ndjson container.
The following shows the queue logs and message that a file in a subfolder triggered the function but the function failed to find it at the ROOT of the container.
NDJSON Queue log entry:
2023-05-25T15:28:07Z [Information] NDJSONConverter: Processing blob at https://{storage_account_name}.blob.core.windows.net/ndjson/test/part-00002-72aa37bc-2d0d-431c-9e65-36ef92cea748-c000.json...
2023-05-25T15:28:07Z [Warning] ImportNDJSONQueue:The blob part-00002-72aa37bc-2d0d-431c-9e65-36ef92cea748-c000.json in container ndjson does not exist or cannot be read.
Describe the Issue The FHIR bulk loader fails to process NDJSON files added in subfolders. This subfolder support is required when writing from PySpark. The bug is found in ImportNDJSONQueue.cs since the code assumes that blobs are always under the root though the event grid subscription is configured to pick up anything under ndjson container regardless of nesting.
Steps to reproduce:
The following shows the queue logs and message that a file in a subfolder triggered the function but the function failed to find it at the ROOT of the container.
NDJSON Queue log entry:
NDJSON QUeue Message: