Unable to Start Up DataConnect Emulator
[REQUIRED] Environment info
firebase-tools: 14.4.0
Platform: Windows
nodejs: 22
vscode dataconnect extention: 1.4.0
[REQUIRED] Test case
Unable to start up dataconnect emulator. I have been working with it for a few months, but now I am unable to launch the firebase emulators because dataconnect will crash saying
Error: Data Connect emulator: undefined
error Command failed with exit code 1.
[REQUIRED] Steps to reproduce
Run the emulators starting command firebase emulators:start or start emulators through the dataconnect vscode extension's Start emulators button
[REQUIRED] Expected behavior
Launch the emulators servers normally and allows operating on dataconnect database
[REQUIRED] Actual behavior
Throwing the error
Error: Data Connect emulator: undefined
error Command failed with exit code 1.
and exiting before emulator suite starts
Hey @Cruzor-Blade, thanks for reaching out. Currently, I can't reproduce the issue when starting the emulator using the Data Connect VS Code extension or with firebase emulators:start.
Could you try running firebase emulators:start --debug, then share the generated firebase-debug.log with us? This should give us additional information on what could've caused the error. Please omit any PIIs before sharing the contents of the file.
I'm using the ff to reproduce the issue:
- platform: macOS 15.5
- firebase-tools: v14.4.0
- node: v20.19.1
edit: Also please include the contents of dataconnect-debug.log.
Hello @aalej ! These are the contens of the two mentioned files:
dataconnect-debug.log:
I0530 10:00:02.590091 26564 load.go:37] Reloading schema and connectors...
I0530 10:00:02.681082 26564 control.go:73] [/emulator/backend 02c3] UpdateResources(): done
Schema: sources: schema\schema.gql [2459B]
Connector "default": sources: connector\applications.queries.gql [2376B] connector\users.mutations.gql [969B] connector\users.queries.gql [791B] connector\applications.mutations.gql [3603B]
I0530 10:00:02.770059 26564 codegen.go:82] [connector "default" javascriptSdk] Generating sources into "C:\\Petit p\\densograph_2\\citygraph\\lib\\js\\default-connector"
I0530 10:00:02.808552 26564 collector.go:107] schema extensions wrote into "C:\\Petit p\\densograph_2\\backend\\dataconnect\\.dataconnect\\schema"
Generated sources: prelude.gql [71531B] main\mutation.gql [27480B] main\implicit.gql [3786B] main\input.gql [70283B] main\relation.gql [41228B] main\query.gql [10088B]
I0530 10:00:02.820083 26564 collector.go:107] connector "default" javascriptSdk wrote into "C:\\Petit p\\densograph_2\\citygraph\\lib\\js\\default-connector"
Generated sources: package.json [848B] react\esm\package.json [17B] react\esm\index.esm.js [9766B] react\README.md [130107B] react\index.cjs.js [10377B] index.d.ts [26740B] esm\index.esm.js [11259B] esm\package.json [17B] index.cjs.js [13004B] README.md [125595B] react\index.d.ts [13204B] react\package.json [456B]
I0530 10:00:02.828919 26564 installsdk.go:80] Running command: C:\Users\USER\AppData\Local\fnm_multishells\30576_1748595423183\npm.cmd install file:lib\js\default-connector
and firebase-debug.log:
[debug] [2025-05-30T08:59:48.771Z] ----------------------------------------------------------------------
[debug] [2025-05-30T08:59:48.776Z] Command: C:\Users\USER\AppData\Local\fnm_multishells\30576_1748595423183\node.exe C:\Users\USER\AppData\Local\fnm_multishells\30576_1748595423183\node_modules\firebase-tools\lib\bin\firebase.js emulators:start --project hashbet-364708 --import ./persisted_data --debug
[debug] [2025-05-30T08:59:48.776Z] CLI Version: 14.5.0
[debug] [2025-05-30T08:59:48.776Z] Platform: win32
[debug] [2025-05-30T08:59:48.777Z] Node Version: v22.14.0
[debug] [2025-05-30T08:59:48.777Z] Time: Fri May 30 2025 09:59:48 GMT+0100 (West Africa Standard Time)
[debug] [2025-05-30T08:59:48.777Z] ----------------------------------------------------------------------
[debug]
[debug] [2025-05-30T08:59:49.112Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
[debug] [2025-05-30T08:59:49.114Z] > authorizing via signed-in user ([email protected])
[debug] [2025-05-30T08:59:49.278Z] openjdk version "17.0.10" 2024-01-16
[debug] [2025-05-30T08:59:49.279Z] OpenJDK Runtime Environment (build 17.0.10+0--11572160)
OpenJDK 64-Bit Server VM (build 17.0.10+0--11572160, mixed mode)
[debug] [2025-05-30T08:59:49.300Z] Parsed Java major version: 17
[info] i emulators: Starting emulators: auth, functions, storage, dataconnect, extensions {"metadata":{"emulator":{"name":"hub"},"message":"Starting emulators: auth, functions, storage, dataconnect, extensions"}}
[debug] [2025-05-30T08:59:49.304Z] Checked if tokens are valid: true, expires at: 1748598816312
[debug] [2025-05-30T08:59:49.305Z] Checked if tokens are valid: true, expires at: 1748598816312
[debug] [2025-05-30T08:59:49.308Z] >>> [apiv2][query] GET https://serviceusage.googleapis.com/v1/projects/hashbet-364708/services/cloudresourcemanager.googleapis.com [none]
[debug] [2025-05-30T08:59:49.309Z] >>> [apiv2][(partial)header] GET https://serviceusage.googleapis.com/v1/projects/hashbet-364708/services/cloudresourcemanager.googleapis.com x-goog-quota-user=projects/hashbet-364708
[debug] [2025-05-30T08:59:50.602Z] <<< [apiv2][status] GET https://serviceusage.googleapis.com/v1/projects/hashbet-364708/services/cloudresourcemanager.googleapis.com 200
[debug] [2025-05-30T08:59:50.603Z] <<< [apiv2][body] GET https://serviceusage.googleapis.com/v1/projects/hashbet-364708/services/cloudresourcemanager.googleapis.com [omitted]
[debug] [2025-05-30T08:59:50.604Z] Checked if tokens are valid: true, expires at: 1748598816312
[debug] [2025-05-30T08:59:50.604Z] Checked if tokens are valid: true, expires at: 1748598816312
[debug] [2025-05-30T08:59:50.605Z] >>> [apiv2][query] GET https://cloudresourcemanager.googleapis.com/v1/projects/hashbet-364708 [none]
[debug] [2025-05-30T08:59:51.832Z] <<< [apiv2][status] GET https://cloudresourcemanager.googleapis.com/v1/projects/hashbet-364708 200
[debug] [2025-05-30T08:59:51.832Z] <<< [apiv2][body] GET https://cloudresourcemanager.googleapis.com/v1/projects/hashbet-364708 {"projectNumber":"758098839584","projectId":"hashbet-364708","lifecycleState":"ACTIVE","name":"Hashbet","labels":{"firebase":"enabled"},"createTime":"2022-10-06T08:26:24.549Z"}
[debug] [2025-05-30T08:59:51.852Z] [logging] Logging Emulator only supports listening on one address (127.0.0.1). Not listening on ::1
[debug] [2025-05-30T08:59:51.852Z] [auth] Authentication Emulator only supports listening on one address (127.0.0.1). Not listening on ::1
[debug] [2025-05-30T08:59:51.853Z] [storage] Storage Emulator only supports listening on one address (127.0.0.1). Not listening on ::1
[debug] [2025-05-30T08:59:51.854Z] [dataconnect.postgres] postgres server for dataconnect only supports listening on one address (127.0.0.1). Not listening on ::1
[debug] [2025-05-30T08:59:51.854Z] assigned listening specs for emulators {"user":{"hub":[{"address":"127.0.0.1","family":"IPv4","port":4400},{"address":"::1","family":"IPv6","port":4400}],"ui":[{"address":"127.0.0.1","family":"IPv4","port":4000},{"address":"::1","family":"IPv6","port":4000}],"logging":[{"address":"127.0.0.1","family":"IPv4","port":4500}],"auth":[{"address":"127.0.0.1","family":"IPv4","port":9099}],"storage":[{"address":"127.0.0.1","family":"IPv4","port":9199}],"dataconnect":[{"address":"127.0.0.1","family":"IPv4","port":9399},{"address":"::1","family":"IPv6","port":9399}],"dataconnect.postgres":[{"address":"127.0.0.1","family":"IPv4","port":5432}]},"metadata":{"message":"assigned listening specs for emulators"}}
[debug] [2025-05-30T08:59:51.863Z] [hub] writing locator at C:\Users\USER\AppData\Local\Temp\hub-hashbet-364708.json
[debug] [2025-05-30T08:59:51.871Z] [Extensions] Started Extensions emulator, this is a noop.
[debug] [2025-05-30T08:59:51.878Z] [functions] Functions Emulator only supports listening on one address (127.0.0.1). Not listening on ::1
[debug] [2025-05-30T08:59:51.879Z] [eventarc] Eventarc Emulator only supports listening on one address (127.0.0.1). Not listening on ::1
[debug] [2025-05-30T08:59:51.879Z] [tasks] Cloud Tasks Emulator only supports listening on one address (127.0.0.1). Not listening on ::1
[debug] [2025-05-30T08:59:51.880Z] late-assigned ports for functions and eventarc emulators {"user":{"hub":[{"address":"127.0.0.1","family":"IPv4","port":4400},{"address":"::1","family":"IPv6","port":4400}],"ui":[{"address":"127.0.0.1","family":"IPv4","port":4000},{"address":"::1","family":"IPv6","port":4000}],"logging":[{"address":"127.0.0.1","family":"IPv4","port":4500}],"auth":[{"address":"127.0.0.1","family":"IPv4","port":9099}],"storage":[{"address":"127.0.0.1","family":"IPv4","port":9199}],"dataconnect":[{"address":"127.0.0.1","family":"IPv4","port":9399},{"address":"::1","family":"IPv6","port":9399}],"dataconnect.postgres":[{"address":"127.0.0.1","family":"IPv4","port":5432}],"functions":[{"address":"127.0.0.1","family":"IPv4","port":5001}],"eventarc":[{"address":"127.0.0.1","family":"IPv4","port":9299}],"tasks":[{"address":"127.0.0.1","family":"IPv4","port":9499}]},"metadata":{"message":"late-assigned ports for functions and eventarc emulators"}}
[warn] ! functions: The following emulators are not running, calls to these services from the Functions emulator will affect production: apphosting, firestore, database, hosting, pubsub {"metadata":{"emulator":{"name":"functions"},"message":"The following emulators are not running, calls to these services from the Functions emulator will affect production: \u001b[1mapphosting, firestore, database, hosting, pubsub\u001b[22m"}}
[debug] [2025-05-30T08:59:51.903Z] defaultcredentials: writing to file C:\Users\USER\AppData\Roaming\firebase\myemail_gmail_com_application_default_credentials.json
[debug] [2025-05-30T08:59:51.905Z] Setting GAC to C:\Users\USER\AppData\Roaming\firebase\myemail_gmail_com_application_default_credentials.json {"metadata":{"emulator":{"name":"functions"},"message":"Setting GAC to C:\\Users\\USER\\AppData\\Roaming\\firebase\\myemail_gmail_com_application_default_credentials.json"}}
[debug] [2025-05-30T08:59:51.907Z] Checked if tokens are valid: true, expires at: 1748598816312
[debug] [2025-05-30T08:59:51.907Z] Checked if tokens are valid: true, expires at: 1748598816312
[debug] [2025-05-30T08:59:51.908Z] >>> [apiv2][query] GET https://firebase.googleapis.com/v1beta1/projects/hashbet-364708/adminSdkConfig [none]
[debug] [2025-05-30T08:59:53.162Z] <<< [apiv2][status] GET https://firebase.googleapis.com/v1beta1/projects/hashbet-364708/adminSdkConfig 200
[debug] [2025-05-30T08:59:53.163Z] <<< [apiv2][body] GET https://firebase.googleapis.com/v1beta1/projects/hashbet-364708/adminSdkConfig {"projectId":"hashbet-364708","storageBucket":"hashbet-364708.appspot.com","locationId":"us-central"}
[info] i auth: Importing config from C:\Petit p\densograph_2\backend\persisted_data\auth_export\config.json {"metadata":{"emulator":{"name":"auth"},"message":"Importing config from C:\\Petit p\\densograph_2\\backend\\persisted_data\\auth_export\\config.json"}}
[info] i auth: Importing accounts from C:\Petit p\densograph_2\backend\persisted_data\auth_export\accounts.json {"metadata":{"emulator":{"name":"auth"},"message":"Importing accounts from C:\\Petit p\\densograph_2\\backend\\persisted_data\\auth_export\\accounts.json"}}
[info] i dataconnect: Importing data from C:\Petit p\densograph_2\backend\persisted_data\dataconnect_export {"metadata":{"emulator":{"name":"dataconnect"},"message":"Importing data from C:\\Petit p\\densograph_2\\backend\\persisted_data\\dataconnect_export"}}
[debug] [2025-05-30T09:00:02.535Z] I0530 10:00:02.488349 16804 control.go:73] [/emulator/backend 3204] UpdateResources(): done
Schema: sources: schema\schema.gql [2459B]
Connector "default": sources: connector\applications.mutations.gql [3603B] connector\applications.queries.gql [2376B] connector\users.mutations.gql [969B] connector\users.queries.gql [791B]
{"metadata":{"emulator":{"name":"dataconnect"},"message":"I0530 10:00:02.488349 16804 control.go:73] [/emulator/backend 3204] UpdateResources(): done\nSchema: sources: schema\\schema.gql [2459B] \nConnector \"default\": sources: connector\\applications.mutations.gql [3603B] connector\\applications.queries.gql [2376B] connector\\users.mutations.gql [969B] connector\\users.queries.gql [791B] \n"}}
[debug] [2025-05-30T09:00:02.538Z] Ignoring unsupported arg: auto_download {"metadata":{"emulator":{"name":"dataconnect"},"message":"Ignoring unsupported arg: auto_download"}}
[debug] [2025-05-30T09:00:02.539Z] Ignoring unsupported arg: port {"metadata":{"emulator":{"name":"dataconnect"},"message":"Ignoring unsupported arg: port"}}
[debug] [2025-05-30T09:00:02.540Z] Starting Data Connect Emulator with command {"binary":"C:\\Users\\USER\\.cache\\firebase\\emulators\\dataconnect-emulator-2.6.2.exe","args":["--logtostderr","-v=2","dev","--listen=127.0.0.1:9399,[::1]:9399","--config_dir=C:\\Petit p\\densograph_2\\backend\\dataconnect","--enable_output_schema_extensions=true","--enable_output_generated_sdk=true"],"optionalArgs":["listen","config_dir","enable_output_schema_extensions","enable_output_generated_sdk"],"joinArgs":true,"shell":false,"port":9399} {"metadata":{"emulator":{"name":"dataconnect"},"message":"Starting Data Connect Emulator with command {\"binary\":\"C:\\\\Users\\\\USER\\\\.cache\\\\firebase\\\\emulators\\\\dataconnect-emulator-2.6.2.exe\",\"args\":[\"--logtostderr\",\"-v=2\",\"dev\",\"--listen=127.0.0.1:9399,[::1]:9399\",\"--config_dir=C:\\\\Petit p\\\\densograph_2\\\\backend\\\\dataconnect\",\"--enable_output_schema_extensions=true\",\"--enable_output_generated_sdk=true\"],\"optionalArgs\":[\"listen\",\"config_dir\",\"enable_output_schema_extensions\",\"enable_output_generated_sdk\"],\"joinArgs\":true,\"shell\":false,\"port\":9399}"}}
[info] i dataconnect: Data Connect Emulator logging to dataconnect-debug.log {"metadata":{"emulator":{"name":"dataconnect"},"message":"Data Connect Emulator logging to \u001b[1mdataconnect-debug.log\u001b[22m"}}
[info] i dataconnect: Started up Postgres server, listening on {"address":"127.0.0.1","family":"IPv4","port":5432} {"metadata":{"emulator":{"name":"dataconnect"},"message":"Started up Postgres server, listening on {\"address\":\"127.0.0.1\",\"family\":\"IPv4\",\"port\":5432}"}}
[debug] [2025-05-30T09:00:02.575Z] [Data Connect] Connecting to postgres://127.0.0.1:5432/fdcdb?sslmode=disable}...
[debug] [2025-05-30T09:00:02.576Z] >>> [apiv2][query] POST http://127.0.0.1:9399/emulator/configure [none]
[debug] [2025-05-30T09:00:02.577Z] >>> [apiv2][body] POST http://127.0.0.1:9399/emulator/configure {"connectionString":"postgres://127.0.0.1:5432/fdcdb?sslmode=disable","database":"fdcdb","serviceId":"backend","maxOpenConnections":1}
[debug] [2025-05-30T09:00:02.580Z] *** [apiv2] error from fetch(http://127.0.0.1:9399/emulator/configure, {"headers":{},"method":"POST","body":"{\"connectionString\":\"postgres://127.0.0.1:5432/fdcdb?sslmode=disable\",\"database\":\"fdcdb\",\"serviceId\":\"backend\",\"maxOpenConnections\":1}"}): FetchError: request to http://127.0.0.1:9399/emulator/configure failed, reason: connect ECONNREFUSED 127.0.0.1:9399
[debug] [2025-05-30T09:00:02.581Z] [Data Connect] Retrying connectToPostgress call (1 of 3 attempts): FirebaseError: Data Connect emulator: undefined
[debug] [2025-05-30T09:00:02.587Z] I0530 10:00:02.590091 26564 load.go:37] Reloading schema and connectors...
{"metadata":{"emulator":{"name":"dataconnect"},"message":"I0530 10:00:02.590091 26564 load.go:37] Reloading schema and connectors...\n"}}
[debug] [2025-05-30T09:00:02.681Z] I0530 10:00:02.681082 26564 control.go:73] [/emulator/backend 02c3] UpdateResources(): done
Schema: sources: schema\schema.gql [2459B]
Connector "default": sources: connector\applications.queries.gql [2376B] connector\users.mutations.gql [969B] connector\users.queries.gql [791B] connector\applications.mutations.gql [3603B]
{"metadata":{"emulator":{"name":"dataconnect"},"message":"I0530 10:00:02.681082 26564 control.go:73] [/emulator/backend 02c3] UpdateResources(): done\nSchema: sources: schema\\schema.gql [2459B] \nConnector \"default\": sources: connector\\applications.queries.gql [2376B] connector\\users.mutations.gql [969B] connector\\users.queries.gql [791B] connector\\applications.mutations.gql [3603B] \n"}}
[debug] [2025-05-30T09:00:02.770Z] I0530 10:00:02.770059 26564 codegen.go:82] [connector "default" javascriptSdk] Generating sources into "C:\\Petit p\\densograph_2\\citygraph\\lib\\js\\default-connector"
{"metadata":{"emulator":{"name":"dataconnect"},"message":"I0530 10:00:02.770059 26564 codegen.go:82] [connector \"default\" javascriptSdk] Generating sources into \"C:\\\\Petit p\\\\densograph_2\\\\citygraph\\\\lib\\\\js\\\\default-connector\"\n"}}
[debug] [2025-05-30T09:00:02.808Z] I0530 10:00:02.808552 26564 collector.go:107] schema extensions wrote into "C:\\Petit p\\densograph_2\\backend\\dataconnect\\.dataconnect\\schema"
Generated sources: prelude.gql [71531B] main\mutation.gql [27480B] main\implicit.gql [3786B] main\input.gql [70283B] main\relation.gql [41228B] main\query.gql [10088B]
{"metadata":{"emulator":{"name":"dataconnect"},"message":"I0530 10:00:02.808552 26564 collector.go:107] schema extensions wrote into \"C:\\\\Petit p\\\\densograph_2\\\\backend\\\\dataconnect\\\\.dataconnect\\\\schema\"\nGenerated sources: prelude.gql [71531B] main\\mutation.gql [27480B] main\\implicit.gql [3786B] main\\input.gql [70283B] main\\relation.gql [41228B] main\\query.gql [10088B] \n"}}
[debug] [2025-05-30T09:00:02.817Z] I0530 10:00:02.820083 26564 collector.go:107] connector "default" javascriptSdk wrote into "C:\\Petit p\\densograph_2\\citygraph\\lib\\js\\default-connector"
Generated sources: package.json [848B] react\esm\package.json [17B] react\esm\index.esm.js [9766B] react\README.md [130107B] react\index.cjs.js [10377B] index.d.ts [26740B] esm\index.esm.js [11259B] esm\package.json [17B] index.cjs.js [13004B] README.md [125595B] react\index.d.ts [13204B] react\package.json [456B]
{"metadata":{"emulator":{"name":"dataconnect"},"message":"I0530 10:00:02.820083 26564 collector.go:107] connector \"default\" javascriptSdk wrote into \"C:\\\\Petit p\\\\densograph_2\\\\citygraph\\\\lib\\\\js\\\\default-connector\"\nGenerated sources: package.json [848B] react\\esm\\package.json [17B] react\\esm\\index.esm.js [9766B] react\\README.md [130107B] react\\index.cjs.js [10377B] index.d.ts [26740B] esm\\index.esm.js [11259B] esm\\package.json [17B] index.cjs.js [13004B] README.md [125595B] react\\index.d.ts [13204B] react\\package.json [456B] \n"}}
[debug] [2025-05-30T09:00:02.829Z] I0530 10:00:02.828919 26564 installsdk.go:80] Running command: C:\Users\USER\AppData\Local\fnm_multishells\30576_1748595423183\npm.cmd install file:lib\js\default-connector
{"metadata":{"emulator":{"name":"dataconnect"},"message":"I0530 10:00:02.828919 26564 installsdk.go:80] Running command: C:\\Users\\USER\\AppData\\Local\\fnm_multishells\\30576_1748595423183\\npm.cmd install file:lib\\js\\default-connector\n"}}
[debug] [2025-05-30T09:00:04.590Z] [Data Connect] Connecting to postgres://127.0.0.1:5432/fdcdb?sslmode=disable}...
[debug] [2025-05-30T09:00:04.591Z] >>> [apiv2][query] POST http://127.0.0.1:9399/emulator/configure [none]
[debug] [2025-05-30T09:00:04.591Z] >>> [apiv2][body] POST http://127.0.0.1:9399/emulator/configure {"connectionString":"postgres://127.0.0.1:5432/fdcdb?sslmode=disable","database":"fdcdb","serviceId":"backend","maxOpenConnections":1}
[debug] [2025-05-30T09:00:04.595Z] *** [apiv2] error from fetch(http://127.0.0.1:9399/emulator/configure, {"headers":{},"method":"POST","body":"{\"connectionString\":\"postgres://127.0.0.1:5432/fdcdb?sslmode=disable\",\"database\":\"fdcdb\",\"serviceId\":\"backend\",\"maxOpenConnections\":1}"}): FetchError: request to http://127.0.0.1:9399/emulator/configure failed, reason: connect ECONNREFUSED 127.0.0.1:9399
[debug] [2025-05-30T09:00:04.596Z] [Data Connect] Retrying connectToPostgress call (2 of 3 attempts): FirebaseError: Data Connect emulator: undefined
[debug] [2025-05-30T09:00:06.604Z] [Data Connect] Connecting to postgres://127.0.0.1:5432/fdcdb?sslmode=disable}...
[debug] [2025-05-30T09:00:06.605Z] >>> [apiv2][query] POST http://127.0.0.1:9399/emulator/configure [none]
[debug] [2025-05-30T09:00:06.605Z] >>> [apiv2][body] POST http://127.0.0.1:9399/emulator/configure {"connectionString":"postgres://127.0.0.1:5432/fdcdb?sslmode=disable","database":"fdcdb","serviceId":"backend","maxOpenConnections":1}
[debug] [2025-05-30T09:00:06.608Z] *** [apiv2] error from fetch(http://127.0.0.1:9399/emulator/configure, {"headers":{},"method":"POST","body":"{\"connectionString\":\"postgres://127.0.0.1:5432/fdcdb?sslmode=disable\",\"database\":\"fdcdb\",\"serviceId\":\"backend\",\"maxOpenConnections\":1}"}): FetchError: request to http://127.0.0.1:9399/emulator/configure failed, reason: connect ECONNREFUSED 127.0.0.1:9399
[debug] [2025-05-30T09:00:06.612Z] Could not find VSCode notification endpoint: FetchError: request to http://localhost:40001/vscode/notify failed, reason: . If you are not running the Firebase Data Connect VSCode extension, this is expected and not an issue.
[info] i emulators: Shutting down emulators. {"metadata":{"emulator":{"name":"hub"},"message":"Shutting down emulators."}}
[info] i extensions: Stopping Extensions Emulator {"metadata":{"emulator":{"name":"extensions"},"message":"Stopping Extensions Emulator"}}
[debug] [2025-05-30T09:00:06.617Z] [Extensions] Stopping Extensions emulator, this is a noop.
[info] i functions: Stopping Functions Emulator {"metadata":{"emulator":{"name":"functions"},"message":"Stopping Functions Emulator"}}
[info] i auth: Stopping Authentication Emulator {"metadata":{"emulator":{"name":"auth"},"message":"Stopping Authentication Emulator"}}
[info] i eventarc: Stopping Eventarc Emulator {"metadata":{"emulator":{"name":"eventarc"},"message":"Stopping Eventarc Emulator"}}
[info] i dataconnect: Stopping Data Connect Emulator {"metadata":{"emulator":{"name":"dataconnect"},"message":"Stopping Data Connect Emulator"}}
[warn] ! Data Connect Emulator has exited upon receiving signal: SIGKILL
[info] i tasks: Stopping Cloud Tasks Emulator {"metadata":{"emulator":{"name":"tasks"},"message":"Stopping Cloud Tasks Emulator"}}
[info] i hub: Stopping emulator hub {"metadata":{"emulator":{"name":"hub"},"message":"Stopping emulator hub"}}
[debug] [2025-05-30T09:00:06.654Z] Could not find VSCode notification endpoint: FetchError: request to http://localhost:40001/vscode/notify failed, reason: . If you are not running the Firebase Data Connect VSCode extension, this is expected and not an issue.
[error]
[error] Error: Data Connect emulator: undefined
And I want to point out that I am indeed, running the dataconnect VSCode extension 1.4.0. The latest as of the publication date of this message
I wrestled with this all day today. I had to do some tricky stuff but I tracked it down to a problem with my Javascript SDK generation flopping my emulators.
With some digging, I found that it's a symlink issue where DataConnect tries to install the SDK to the frontend before firing up. What was happening for me, is that the SDK was getting an EISDIR error and wouldn't permit me to symlink my install. This error gets swallowed somewhere in the scripts / code so it gives you this fantastic "undefined" message.
However, seems like a permission issue, right? Wrong.
For me, it was that the project was build on an external SSD. That drive is exFAT; you need a NTFS drive for npm to symlink folders.
I copied the project over to my main drive and boom it works.
Yes, I hate this answer too. Not sure if this will help you, but it's how I got out of the weeds .... no thanks to the AI that sent me down a rabbit hole of crazy tail chasing.
@NovaCodeLLC Wow ! I could've never got to that... For me, sometimes it would stop launching, sometimes clearing the whole DB would work, sometimes not. Sometimes also, it would randomly starts working back again after leaving my machine a few hours online without interacting with it.
And while the issue seem to have been mostly fixed in the latest versions, my "solution" at the time was just to ditch the emulator, and I have started using dataconnect in production directly because it didn't have any of the issues the emulator has ! I think I will keep it that way for sometime again.