Skip to content

BasicTest_GetNetworkInterfaces_AtLeastOne failed with NetworkInformationException : No error information on Alpine #39242

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
danmoseley opened this issue Jul 14, 2020 · 7 comments

Comments

@danmoseley
Copy link
Member

net5.0-Linux-Release-arm64-CoreCLR_checked-(Alpine.312.Arm64.Open)[email protected]/dotnet-buildtools/prereqs:

https://dev.azure.com/dnceng/public/_build/results?buildId=727645&view=ms.vss-test-web.build-test-results-tab&runId=22528506&resultId=129574&paneView=debug

System.Net.NetworkInformation.NetworkInformationException : No error information


Stack trace
   at System.Net.NetworkInformation.LinuxNetworkInterface.GetLinuxNetworkInterfaces() in /_/src/libraries/System.Net.NetworkInformation/src/System/Net/NetworkInformation/LinuxNetworkInterface.cs:line 73
   at System.Net.NetworkInformation.NetworkInterfacePal.GetAllNetworkInterfaces() in /_/src/libraries/System.Net.NetworkInformation/src/System/Net/NetworkInformation/NetworkInterfacePal.Linux.cs:line 11
   at System.Net.NetworkInformation.NetworkInterface.GetAllNetworkInterfaces() in /_/src/libraries/System.Net.NetworkInformation/src/System/Net/NetworkInformation/NetworkInterface.cs:line 14
   at System.Net.NetworkInformation.Tests.NetworkInterfaceBasicTest.BasicTest_GetNetworkInterfaces_AtLeastOne() in /_/src/libraries/System.Net.NetworkInformation/tests/FunctionalTests/NetworkInterfaceBasicTest.cs:line 25

I guess SystemNative_GetNetworkInterfaces failed somehow but did not set error information.

#39217

@Dotnet-GitSync-Bot Dotnet-GitSync-Bot added area-System.Net untriaged New issue has not been triaged by the area owner labels Jul 14, 2020
@ghost
Copy link

ghost commented Jul 14, 2020

Tagging subscribers to this area: @dotnet/ncl
Notify danmosemsft if you want to be subscribed.

@wfurt
Copy link
Member

wfurt commented Jul 14, 2020

getifaddrs() should set errno according to man page. It would be interesting if Alpine implementation is compliant with that as well. It seems like only other place would calloc() failure.

@wfurt wfurt added this to the Future milestone Jul 14, 2020
@wfurt wfurt added os-alpine and removed untriaged New issue has not been triaged by the area owner labels Jul 14, 2020
@danmoseley
Copy link
Member Author

would it be valid to assert something like

    if (getifaddrs(&head) == -1)
    {
+      assert(errno != 0);
        return -1;
    }

@wfurt
Copy link
Member

wfurt commented Jul 14, 2020

BTW I was looking for failure history and I did not find any ;(

Searching '/root/helix/work/workitem' for test results files
Found results file /root/helix/work/workitem/testResults.xml with format xunit
Searching '/root/helix/work/workitem/uploads' for test results files
Worker 0: uploaded 243 results
2020-07-13 22:52:33,784: INFO: 547704139320: run(107): main: Main thread exiting
+ date -u '+%FT%TZ'
2020-07-13T22:52:33Z
+ export 'PYTHONPATH='
+ python -B /root/helix/work/correlation/xunit-reporter.py
Traceback (most recent call last):
  File "/root/helix/work/correlation/xunit-reporter.py", line 6, in <module>
    import helix.azure_storage
  File "/root/helix/scripts/helix/azure_storage.py", line 6, in <module>
    from azure.storage.blob import BlobClient, ContentSettings, ExponentialRetry
  File "/root/helix/scripts/azure/storage/blob/__init__.py", line 11, in <module>
    from ._blob_client import BlobClient
  File "/root/helix/scripts/azure/storage/blob/_blob_client.py", line 24, in <module>
    from ._shared.encryption import generate_blob_encryption_data
  File "/root/helix/scripts/azure/storage/blob/_shared/encryption.py", line 19, in <module>
    from cryptography.hazmat.primitives.padding import PKCS7
  File "/root/helix/scripts/cryptography/hazmat/primitives/padding.py", line 13, in <module>
    from cryptography.hazmat.bindings._padding import lib
ImportError: Error loading shared library ld-linux-aarch64.so.1: No such file or directory (needed by /root/helix/scripts/cryptography/hazmat/bindings/_padding.abi3.so)
+ exit 1

cc: @MattGal I only see BadExit status when looking for that particular JobID (fc291949-69d3-435e-a0b6-7a62c0331b12)

@MattGal
Copy link
Member

MattGal commented Jul 14, 2020

BTW I was looking for failure history and I did not find any ;(

Searching '/root/helix/work/workitem' for test results files
Found results file /root/helix/work/workitem/testResults.xml with format xunit
Searching '/root/helix/work/workitem/uploads' for test results files
Worker 0: uploaded 243 results
2020-07-13 22:52:33,784: INFO: 547704139320: run(107): main: Main thread exiting
+ date -u '+%FT%TZ'
2020-07-13T22:52:33Z
+ export 'PYTHONPATH='
+ python -B /root/helix/work/correlation/xunit-reporter.py
Traceback (most recent call last):
  File "/root/helix/work/correlation/xunit-reporter.py", line 6, in <module>
    import helix.azure_storage
  File "/root/helix/scripts/helix/azure_storage.py", line 6, in <module>
    from azure.storage.blob import BlobClient, ContentSettings, ExponentialRetry
  File "/root/helix/scripts/azure/storage/blob/__init__.py", line 11, in <module>
    from ._blob_client import BlobClient
  File "/root/helix/scripts/azure/storage/blob/_blob_client.py", line 24, in <module>
    from ._shared.encryption import generate_blob_encryption_data
  File "/root/helix/scripts/azure/storage/blob/_shared/encryption.py", line 19, in <module>
    from cryptography.hazmat.primitives.padding import PKCS7
  File "/root/helix/scripts/cryptography/hazmat/primitives/padding.py", line 13, in <module>
    from cryptography.hazmat.bindings._padding import lib
ImportError: Error loading shared library ld-linux-aarch64.so.1: No such file or directory (needed by /root/helix/scripts/cryptography/hazmat/bindings/_padding.abi3.so)
+ exit 1

cc: @MattGal I only see BadExit status when looking for that particular JobID (fc291949-69d3-435e-a0b6-7a62c0331b12)

Wow I was literally just filing dotnet/arcade#5786 . This is not the cause of your '1' exit code and the only side effect of this failure is that you won't have XUnit results ingested into the Helix Kusto DB (and thus if you use the APIs to get them, you will only be able to get work item status). Pass/Fail of your work item, core dump logging, etc should be unaffected.

The "1" exit code comes from Xunit:

=== TEST EXECUTION SUMMARY ===
   System.Net.NetworkInformation.Functional.Tests  Total: 243, Errors: 0, Failed: 1, Skipped: 0, Time: 2.874s
/root/helix/work/workitem
----- end Mon Jul 13 22:51:42 UTC 2020 ----- exit code 1 ----------------------------------------------------------

Can you please comment in the linked issue whether this is something you actually use or whether it's just "on by default"? If the latter we could just turn it off if the call stack annoys you, if the former we can prioritize the arcade issue as it's already solved for the Azure Devops reporter functionality of the Helix Arcade SDK (so it's a very straightforward fix)

@danmoseley
Copy link
Member Author

I think @ViktorHofer needs to answer that question.

@danmoseley
Copy link
Member Author

Only one hit apparently, old, closing.

@ghost ghost locked as resolved and limited conversation to collaborators Dec 27, 2021
@karelz karelz modified the milestones: Future, 7.0.0 Jan 11, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

5 participants