-
Notifications
You must be signed in to change notification settings - Fork 19
Closed
Labels
bugSomething isn't workingSomething isn't working
Description
Bug Report
After installing MeasurementLink on a clean system, running a Python measurement service fails.
Repro or Code Sample
- Reimage PC
- Install MeasurementLink and drivers
- Do not run InstrumentStudio or MeasurementLink UI Editor
- Install Python, Poetry, etc.
- Run a Python measurement service
Expected Behavior
The Python measurement service starts the MeasurementLink discovery service.
Current Behavior
The Python measurement service starts the MeasurementLink discovery service (visible in Task Manager), but it also raises an unhandled exception:
PS D:\dev\measurementlink-python\examples\sample_measurement> poetry run python .\measurement.py -v
2023-09-06 13:52:04,696 INFO: Measurement service hosted on port: 52461
2023-09-06 13:52:04,723 ERROR: Error in registering with discovery service.
Traceback (most recent call last):
File "D:\dev\measurementlink-python\ni_measurementlink_service\_internal\discovery_client.py", line 128, in register_measurement_service
register_response = self.stub.RegisterService(request)
File "D:\dev\measurementlink-python\ni_measurementlink_service\_internal\discovery_client.py", line 85, in stub
address = _get_discovery_service_address()
File "D:\dev\measurementlink-python\ni_measurementlink_service\_internal\discovery_client.py", line 223, in _get_discovery_service_address
_ensure_discovery_service_started(key_file_path)
File "D:\dev\measurementlink-python\ni_measurementlink_service\_internal\discovery_client.py", line 237, in _ensure_discovery_service_started
_discovery_service_subprocess = _start_service(exe_file_path, key_file_path)
File "D:\dev\measurementlink-python\ni_measurementlink_service\_internal\discovery_client.py", line 284, in _start_service
with _open_key_file(str(key_file_path)) as _:
File "D:\dev\measurementlink-python\ni_measurementlink_service\_internal\discovery_client.py", line 335, in _open_key_file
win32_file_handle = win32file.CreateFile(
pywintypes.error: (3, 'CreateFile', 'The system cannot find the path specified.')
Traceback (most recent call last):
File "D:\dev\measurementlink-python\examples\sample_measurement\measurement.py", line 115, in <module>
main()
File "D:\dev\measurementlink-python\examples\sample_measurement\.venv\lib\site-packages\click\core.py", line 1157, in __call__
return self.main(*args, **kwargs)
File "D:\dev\measurementlink-python\examples\sample_measurement\.venv\lib\site-packages\click\core.py", line 1078, in main
rv = self.invoke(ctx)
File "D:\dev\measurementlink-python\examples\sample_measurement\.venv\lib\site-packages\click\core.py", line 1434, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "D:\dev\measurementlink-python\examples\sample_measurement\.venv\lib\site-packages\click\core.py", line 783, in invoke
return __callback(*args, **kwargs)
File "D:\dev\measurementlink-python\examples\sample_measurement\measurement.py", line 110, in main
with sample_measurement_service.host_service():
File "D:\dev\measurementlink-python\ni_measurementlink_service\measurement\service.py", line 396, in host_service
self.grpc_service.start(
File "D:\dev\measurementlink-python\ni_measurementlink_service\_internal\service_manager.py", line 109, in start
self.discovery_client.register_measurement_service(port, service_info, measurement_info)
File "D:\dev\measurementlink-python\ni_measurementlink_service\_internal\discovery_client.py", line 128, in register_measurement_service
register_response = self.stub.RegisterService(request)
File "D:\dev\measurementlink-python\ni_measurementlink_service\_internal\discovery_client.py", line 85, in stub
address = _get_discovery_service_address()
File "D:\dev\measurementlink-python\ni_measurementlink_service\_internal\discovery_client.py", line 223, in _get_discovery_service_address
_ensure_discovery_service_started(key_file_path)
File "D:\dev\measurementlink-python\ni_measurementlink_service\_internal\discovery_client.py", line 237, in _ensure_discovery_service_started
_discovery_service_subprocess = _start_service(exe_file_path, key_file_path)
File "D:\dev\measurementlink-python\ni_measurementlink_service\_internal\discovery_client.py", line 284, in _start_service
with _open_key_file(str(key_file_path)) as _:
File "D:\dev\measurementlink-python\ni_measurementlink_service\_internal\discovery_client.py", line 335, in _open_key_file
win32_file_handle = win32file.CreateFile(
pywintypes.error: (3, 'CreateFile', 'The system cannot find the path specified.')
Workaround
Run it again.
Your Environment
- OS & Device: Windows
ni-measurementlink-serviceversion: 1.2.0-dev2 from main- MeasurementLink version: 23.8.0d578
- Python version: 3.9.13
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working