timotheecour / Nim

Nim is a compiled, garbage-collected systems programming language with a design that focuses on efficiency, expressiveness, and elegance (in that order of priority).
http://nim-lang.org/
Other
2 stars 0 forks source link

flaky test tests/untestable/thttpclient_ssl.nim: genericDeepCopyAux SIGSEGV #410

Open timotheecour opened 3 years ago

timotheecour commented 3 years ago

seen in https://github.com/nim-lang/Nim/pull/16196

https://github.com/nim-lang/Nim/runs/1478654079?check_suite_focus=true

deepcopy.nim(190)        genericDeepCopy
deepcopy.nim(152)        genericDeepCopyAux
SIGSEGV: Illegal storage access. (Attempt to read from nil?)
Error: execution of an external program failed: '/home/runner/work/Nim/Nim/tests/untestable/thttpclient_ssl '
[Suite] SSL certificate check - httpclient - threaded
  [OK] wrong.host
  [OK] captive-portal
  [OK] expired
  [OK] good
  [OK] self-signed
  [OK] untrusted-root
  [SKIPPED] revoked
  [SKIPPED] pinning-test
         no-common-name (dubious_broken) raised: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed
  [OK] no-common-name
         no-subject (dubious_broken) raised: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed
  [OK] no-subject
         incomplete-chain (dubious_broken) raised: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed
  [OK] incomplete-chain
  [OK] sha1-intermediate
  [OK] sha256
  [OK] sha384
  [OK] sha512
  [OK] 1000-sans
  [SKIPPED] 10000-sans
  [OK] ecc256
  [OK] ecc384
  [OK] rsa2048
  [SKIPPED] rsa8192
  [OK] regular http
  [SKIPPED] http on https URL
  [OK] cbc
  [OK] rc4-md5
  [OK] rc4
  [OK] 3des
  [OK] null
  [SKIPPED] mozilla-old
  [SKIPPED] mozilla-intermediate
  [OK] mozilla-modern
  [OK] dh480
  [OK] dh512
  [SKIPPED] dh1024
  [OK] dh2048
  [SKIPPED] dh-small-subgroup
  [SKIPPED] dh-composite
  [OK] static-rsa
  [OK] tls-v1-0
  [OK] tls-v1-1
  [OK] invalid-expected-sct
  [OK] hsts
  [OK] upgrade
  [OK] preloaded-hsts
  [OK] subdomain.preloaded-hsts
  [OK] https-everywhere
  [OK] long-extended-subdomain-name-containing-many-letters-and-dashes
  [OK] longextendedsubdomainnamewithoutdashesinordertotestwordwrapping
  [OK] (Lenovo) Superfish
  [OK] (Dell) eDellRoot
Traceback (most recent call last)
  [OK] (Dell) DSD Test Provider
thttpclient_ssl.nim(171) thttpclient_ssl
  [OK] preact-cli
threadpool.nim(263)      ^
  [OK] webpack-dev-server
deepcopy.nim(190)        genericDeepCopy
deepcopy.nim(152)        genericDeepCopyAux
SIGSEGV: Illegal storage access. (Attempt to read from nil?)
Error: execution of an external program failed: '/home/runner/work/Nim/Nim/tests/untestable/thttpclient_ssl '
Error: Process completed with exit code 1.
treeform commented 3 years ago

Also thttpclient_ssl.nim(171) thttpclient_ssl does not appear to be a real line. thttpclient_ssl.nim is only 131 lines?

timotheecour commented 3 years ago

@treeform given fact that https://github.com/nim-lang/Nim/pull/16220 is green for ssl tests, there may be some (maybe indirect) link between your PR and that test failing after all

does not appear to be a real line. thttpclient_ssl.nim is only 131 lines?

that's strange; can happen with {.line.} pragma but not case here; might be some interaction with include or template, but still unclear, we should reduce / file a bug (if you can !)

timotheecour commented 3 years ago

keeps happening:

https://github.com/nim-lang/Nim/pull/16667/checks?check_run_id=1677452346

ubuntu-18.04 (amd64)

CC: thttpclient_ssl.nim
Hint:  [Link]
Hint: 122016 lines; 89.236s; 146.328MiB peakmem; Debug build; proj: thttpclient_ssl; out: thttpclient_ssl [SuccessX]
Hint: /home/runner/work/Nim/Nim/tests/untestable/thttpclient_ssl  [Exec]

[Suite] SSL certificate check - httpclient
         no-common-name (dubious_broken) raised: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed
         no-subject (dubious_broken) raised: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed
         incomplete-chain (dubious_broken) raised: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed

[Suite] SSL certificate check - httpclient - threaded
         no-common-name (dubious_broken) raised: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed
         no-subject (dubious_broken) raised: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed
         incomplete-chain (dubious_broken) raised: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed
Traceback (most recent call last)
thttpclient_ssl.nim(171) thttpclient_ssl
threadpool.nim(263)      ^
deepcopy.nim(190)        genericDeepCopy
deepcopy.nim(152)        genericDeepCopyAux
SIGSEGV: Illegal storage access. (Attempt to read from nil?)
Error: execution of an external program failed: '/home/runner/work/Nim/Nim/tests/untestable/thttpclient_ssl '
Error: Process completed with exit code 1.