Skip to content

Fix Azurite Table/Queue services not starting during durable function debugging#4632

Merged
nturinski merged 5 commits intomainfrom
copilot/fix-4551
Aug 7, 2025
Merged

Fix Azurite Table/Queue services not starting during durable function debugging#4632
nturinski merged 5 commits intomainfrom
copilot/fix-4551

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Aug 6, 2025

When debugging durable function projects and selecting "Run Emulator" in the prompt dialog, only the Azurite Blob service was being started. This caused durable functions to fail during execution because they require all three Azurite services (Blob, Table, and Queue) to function properly.

The issue was in the validateEmulatorIsRunning function in src/debug/validatePreDebug.ts, which only executed the azurite.start_blob command when users clicked "Run Emulator".

Root Cause:
Durable functions rely on:

  • Table storage to persist orchestration state and execution history
  • Queue storage for reliable message delivery between orchestrators and activity functions
  • Blob storage for checkpointing and general file storage

Starting only the Blob service left the Table and Queue services unavailable, causing connection errors when durable functions attempted to access these services.

Solution:
Modified the emulator startup logic to start all three required services:

// Before (only blob service)
await vscode.commands.executeCommand('azurite.start_blob');

// After (all required services)
await vscode.commands.executeCommand('azurite.start_blob');
await vscode.commands.executeCommand('azurite.start_table');
await vscode.commands.executeCommand('azurite.start_queue');

Benefits:

  • Durable functions now work immediately after clicking "Run Emulator"
  • Improves development experience for all function types that use Table/Queue storage
  • Maintains backward compatibility
  • No breaking changes - only adds functionality

Fixes #4551.

Warning

Firewall rules blocked me from connecting to one or more addresses

I tried to connect to the following addresses, but was blocked by firewall rules:

  • aka.ms
    • Triggering command: gulp preTest (dns block)
  • marketplace.visualstudio.com
    • Triggering command: curl -s REDACTED (dns block)

If you need me to access, download, or install something from one of these locations, you can either:


💬 Share your feedback on Copilot coding agent for the chance to win a $200 gift card! Click here to start the survey.

Copy link
Copy Markdown
Contributor Author

Copilot AI commented Aug 6, 2025

@motm32 👋 This repository doesn't have Copilot instructions. With Copilot instructions, I can understand the repository better, work faster and produce higher quality PRs.

I can generate a .github/copilot-instructions.md file for you automatically. Click here to open a pre-filled issue and assign it to me. I'll write the instructions, and then tag you for review.

Copilot AI and others added 2 commits August 6, 2025 18:28
Co-authored-by: motm32 <59709511+motm32@users.noreply.github.com>
… debugging

Co-authored-by: motm32 <59709511+motm32@users.noreply.github.com>
Copilot AI changed the title [WIP] Azurite Table/Queue service are not started after selecting 'Run Emulator' during debugging a durable function project Fix Azurite Table/Queue services not starting during durable function debugging Aug 6, 2025
Copilot AI requested a review from motm32 August 6, 2025 18:39
Comment thread main.js Outdated
Comment thread src/debug/validatePreDebug.ts Outdated
Co-authored-by: MicroFish91 <40250218+MicroFish91@users.noreply.github.com>
Co-authored-by: MicroFish91 <40250218+MicroFish91@users.noreply.github.com>
@nturinski nturinski marked this pull request as ready for review August 7, 2025 18:06
@nturinski nturinski requested a review from a team as a code owner August 7, 2025 18:06
@nturinski nturinski merged commit 3bb06ae into main Aug 7, 2025
2 checks passed
@nturinski nturinski deleted the copilot/fix-4551 branch August 7, 2025 19:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Azurite Table/Queue service are not started after selecting 'Run Emulator' during debugging a durable function project

5 participants