Skip to content

Misleading error log when running on windows without unix domain socket support #298

@snps-paul

Description

@snps-paul

For certain old windows versions that do not support unix domain sockets, the following errors are printed for sil-kit-registry, sil-kit-system-controller and regular SilKit Participants because they try to open an unix socket first by default.

Registry:

Vector SIL Kit -- Registry, SIL Kit version: 5.0.3

[2026-02-18 10:19:00.087] [SilKitRegistry] [error] SIL Kit failed to listening on C:\Users\ShubhamPaul\AppData\Local\Temp\7\92SilKitRegi61e7614c0847417d.silkit: open: An address incompatible with the requested protocol was used.
[2026-02-18 10:19:00.088] [SilKitRegistry] [warning] SIL Kit Registry failed to create local listening socket: open: An address incompatible with the requested protocol was used.
[2026-02-18 10:19:00.088] [SilKitRegistry] [warning] This registry instance will only accept connections on TCP sockets. This might be caused by a second registry running on this host, or using an operating system that does not support Domain sockets.
SIL Kit Registry listening on silkit://localhost:8500
Press Ctrl-C to terminate...

SystemController:

[2026-02-18 10:21:21.108] [SystemController] [info] Creating participant, ParticipantName: SystemController, RegistryUri: silkit://localhost:8500, SilKitVersion: 5.0.3
[2026-02-18 10:21:21.109] [SystemController] [error] Unable to accept local domain connections on 'C:\Users\ShubhamPaul\AppData\Local\Temp\7\92SystemCont10a5f04c02cf6879.silkit': open: An address incompatible with the requested protocol was used.
[2026-02-18 10:21:21.114] [SystemController] [warning] Failed to start connecting to 'local://C:\Users\ShubhamPaul\AppData\Local\Temp\7\92SilKitRegi61e7614c0847417d.silkit': open: An address incompatible with the requested protocol was used.
[2026-02-18 10:21:21.114] [SystemController] [info] Connected to registry at 'tcp://127.0.0.1:8500' via 'tcp://127.0.0.1:53376' (local://C:\Users\ShubhamPaul\AppData\Local\Temp\7\92SilKitRegi61e7614c0847417d.silkit, tcp://localhost:8500)

DemoCanWriter:

[2026-02-18 10:21:56.897] [CanWriter] [info] Creating participant, ParticipantName: CanWriter, RegistryUri: silkit://localhost:8500, SilKitVersion: 5.0.3
[2026-02-18 10:21:56.897] [CanWriter] [error] Unable to accept local domain connections on 'C:\Users\ShubhamPaul\AppData\Local\Temp\7\92CanWriter132004f70dcf7515.silkit': open: An address incompatible with the requested protocol was used.
[2026-02-18 10:21:56.901] [CanWriter] [warning] Failed to start connecting to 'local://C:\Users\ShubhamPaul\AppData\Local\Temp\7\92SilKitRegi61e7614c0847417d.silkit': open: An address incompatible with the requested protocol was used.
[2026-02-18 10:21:56.902] [CanWriter] [info] Connected to registry at 'tcp://127.0.0.1:8500' via 'tcp://127.0.0.1:53521' (local://C:\Users\ShubhamPaul\AppData\Local\Temp\7\92SilKitRegi61e7614c0847417d.silkit, tcp://localhost:8500

DemoCanReader:

[2026-02-18 10:21:29.299] [CanReader] [info] Creating participant, ParticipantName: CanReader, RegistryUri: silkit://localhost:8500, SilKitVersion: 5.0.3
[2026-02-18 10:21:29.299] [CanReader] [error] Unable to accept local domain connections on 'C:\Users\ShubhamPaul\AppData\Local\Temp\7\92CanReaderbc7d29589d4c440e.silkit': open: An address incompatible with the requested protocol was used.
[2026-02-18 10:21:29.303] [CanReader] [warning] Failed to start connecting to 'local://C:\Users\ShubhamPaul\AppData\Local\Temp\7\92SilKitRegi61e7614c0847417d.silkit': open: An address incompatible with the requested protocol was used.
[2026-02-18 10:21:29.304] [CanReader] [info] Connected to registry at 'tcp://127.0.0.1:8500' via 'tcp://127.0.0.1:53409' (local://C:\Users\ShubhamPaul\AppData\Local\Temp\7\92SilKitRegi61e7614c0847417d.silkit, tcp://localhost:8500)

They eventually connect using TCP and the simulation runs fine but printing the log as an 'error' when the fallback works fine seems a bit misleading. I think this could be a source of confusion of whether the simulation is completely error free or not. Wouldn't it be clearer to maybe show it as an info\warning log if a connection is established (using fallbacks) and only show them as errors only when establising a connection fails?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions