Describe the Bug
All Logic App integration tests are currently failing due to a known kernel32 platform/runtime issue during shared test host initialization. Since every integration test uses the same startup infrastructure, initialization fails before individual workflows execute, causing a full-suite failure. This is an infrastructure/runtime problem rather than a workflow logic regression.
Extension Bundle Microsoft.Azure.Functions.ExtensionBundle.Workflows version 1.165.50 appears to contain Windows-only performance counter code that is executed on Linux.
This causes System.DllNotFoundException for kernel32.dll and blocks workflow execution in Linux CI/CD.
Environment
- Extension Bundle:
Microsoft.Azure.Functions.ExtensionBundle.Workflows 1.165.50
- OS: Ubuntu Linux (GitHub Actions
ubuntu-latest and custom Ubuntu runners)
- Azure Functions Core Tools: v4
- First observed: between
2026-05-07 and 2026-05-20
- Last known good: bundle
1.138.54 (and older versions in our pipeline)
Actual Behavior
Workflows fail at runtime with DllNotFoundException for kernel32.dll.
Key stack trace excerpt
System.DllNotFoundException: Unable to load shared library 'kernel32.dll' or one of its dependencies.
In order to help diagnose loading problems, consider using a tool like strace.
If you're using glibc, consider setting the LD_DEBUG environment variable:
/usr/local/lib/node_modules/azure-functions-core-tools/bin/in-proc8/kernel32.dll.so: cannot open shared object file: No such file or directory
/home/runner/.azure-functions-core-tools/Functions/ExtensionBundles/Microsoft.Azure.Functions.ExtensionBundle.Workflows/1.165.50/bin/kernel32.dll.so: cannot open shared object file: No such file or directory
/usr/local/lib/node_modules/azure-functions-core-tools/bin/in-proc8/libkernel32.dll.so: cannot open shared object file: No such file or directory
/home/runner/.azure-functions-core-tools/Functions/ExtensionBundles/Microsoft.Azure.Functions.ExtensionBundle.Workflows/1.165.50/bin/libkernel32.dll.so: cannot open shared object file: No such file or directory
/usr/local/lib/node_modules/azure-functions-core-tools/bin/in-proc8/kernel32.dll: cannot open shared object file: No such file or directory
/home/runner/.azure-functions-core-tools/Functions/ExtensionBundles/Microsoft.Azure.Functions.ExtensionBundle.Workflows/1.165.50/bin/kernel32.dll: cannot open shared object file: No such file or directory
/usr/local/lib/node_modules/azure-functions-core-tools/bin/in-proc8/libkernel32.dll: cannot open shared object file: No such file or directory
/home/runner/.azure-functions-core-tools/Functions/ExtensionBundles/Microsoft.Azure.Functions.ExtensionBundle.Workflows/1.165.50/bin/libkernel32.dll: cannot open shared object file: No such file or directory
at Microsoft.Azure.Workflows.Common.PerformanceCounters.WebAppWorkerMemoryUsageCounter.NativeMethods.GlobalMemoryStatusEx(MEMORYSTATUSEX& lpBuffer)
at Microsoft.Azure.Workflows.Common.PerformanceCounters.WebAppWorkerMemoryUsageCounter.ReadCounter()
at Microsoft.Azure.Workflows.Common.PerformanceCounters.FlowPerformance.get_CurrentMemoryUtilization()
at Microsoft.Azure.Workflows.Data.Configuration.EdgeResourceGovernancePolicy.<>c.<.ctor>b__21_0()
at Microsoft.Azure.Workflows.Data.Configuration.EdgeResourceGovernancePolicy.ShouldThrottleWorkerPulsation(JobTriggerEvent trigger, String& throttledTraceMessage)
at Microsoft.WindowsAzure.ResourceStack.Common.BackgroundJobs.Execution.JobDispatchingWorkerRegistry.PulseNextWaitingWorker(JobTriggerEvent trigger)
at Microsoft.WindowsAzure.ResourceStack.Common.BackgroundJobs.Execution.JobDispatchingWorkerRegistry.PulseWorkers()
at Microsoft.WindowsAzure.ResourceStack.Common.BackgroundJobs.JobDispatcherClient.PulseDispatchingWorkers(CancellationToken cancellationToken)
Observed root cause after decompilation
- Assembly:
Microsoft.Azure.Workflows.EventSource.Common.dll
- Namespace:
Microsoft.Azure.Workflows.Common.PerformanceCounters
- Class:
WebAppWorkerMemoryUsageCounter
- Method:
ReadCounter()
- Uses hard-coded P/Invoke to
kernel32.dll GlobalMemoryStatusEx without platform check.
Plan Type
Standard
Steps to Reproduce the Bug or Issue
Steps to Reproduce
- Create or run a Logic App Standard project using extension bundle
1.165.50.
- Run on Ubuntu (local container or GitHub Actions runner).
- Start host / execute workflow.
- Observe
DllNotFoundException for kernel32.dll and workflow failure.
Workflow JSON
Screenshots or Videos
No response
Additional context
Expected Behavior
Logic Apps should execute on Linux, as supported by Azure Functions/Logic Apps and as seen in prior bundle versions.
Impact
- Severity: High
- Blocks Linux-based CI/CD for Logic Apps
- Forces temporary migration to Windows runners or bundle pinning
Workarounds
- Pin bundle version to
1.138.54 in host.json
- Use Windows runners instead of Linux
WEBSITE_DISABLE_PERFORMANCE_COUNTERS=1 did not prevent this failure in our tests
Suggested Fix
Use cross-platform memory usage APIs, for example:
GC.GetGCMemoryInfo()
Process.WorkingSet64
Or guard Windows-only calls with RuntimeInformation.IsOSPlatform(OSPlatform.Windows).
This report may be a related root cause for Linux-hosted scenarios.
Describe the Bug
All Logic App integration tests are currently failing due to a known kernel32 platform/runtime issue during shared test host initialization. Since every integration test uses the same startup infrastructure, initialization fails before individual workflows execute, causing a full-suite failure. This is an infrastructure/runtime problem rather than a workflow logic regression.
Extension Bundle
Microsoft.Azure.Functions.ExtensionBundle.Workflowsversion1.165.50appears to contain Windows-only performance counter code that is executed on Linux.This causes
System.DllNotFoundExceptionforkernel32.dlland blocks workflow execution in Linux CI/CD.Environment
Microsoft.Azure.Functions.ExtensionBundle.Workflows1.165.50ubuntu-latestand custom Ubuntu runners)2026-05-07and2026-05-201.138.54(and older versions in our pipeline)Actual Behavior
Workflows fail at runtime with
DllNotFoundExceptionforkernel32.dll.Key stack trace excerpt
Observed root cause after decompilation
Microsoft.Azure.Workflows.EventSource.Common.dllMicrosoft.Azure.Workflows.Common.PerformanceCountersWebAppWorkerMemoryUsageCounterReadCounter()kernel32.dllGlobalMemoryStatusExwithout platform check.Plan Type
Standard
Steps to Reproduce the Bug or Issue
Steps to Reproduce
1.165.50.DllNotFoundExceptionforkernel32.dlland workflow failure.Workflow JSON
Screenshots or Videos
No response
Additional context
Expected Behavior
Logic Apps should execute on Linux, as supported by Azure Functions/Logic Apps and as seen in prior bundle versions.
Impact
Workarounds
1.138.54inhost.jsonWEBSITE_DISABLE_PERFORMANCE_COUNTERS=1did not prevent this failure in our testsSuggested Fix
Use cross-platform memory usage APIs, for example:
GC.GetGCMemoryInfo()Process.WorkingSet64Or guard Windows-only calls with
RuntimeInformation.IsOSPlatform(OSPlatform.Windows).This report may be a related root cause for Linux-hosted scenarios.