Skip to content
Snippets Groups Projects
Select Git revision
  • eju/gitaly/6506/6640/prepare-offloading
  • jc/add-teleport-to-production-training
  • 6503-offloading-config
  • qmnguyen0711/integrate-etcd-raft-with-transactions-v2
  • feat/repo-assignment-migration
  • master default protected
  • qmnguyen0711/fix-premature-log-pruning
  • jliu/gitaly-dns-tls
  • qmnguyen0711/add-go-1.24-to-test-matrix
  • 6270-restore-partition
  • 6628-persistent-routing-table
  • sh-limit-praefect-connection-age
  • ec/raft-snapshotting-streaming
  • jc/my-branch
  • jliu/bump-module-version-to-v17
  • 17-7-stable protected
  • 17-8-stable protected
  • 17-9-stable protected
  • gitaly-renovate-tools/golangci-lint/golang.org-x-tools-0.x
  • 6626-dry-run-reftable-migration-on-staging
  • v17.7.6 protected
  • v17.8.4 protected
  • v17.9.1 protected
  • v17.8.3 protected
  • v17.7.5 protected
  • v17.9.0 protected
  • v17.9.0-rc42 protected
  • v17.6.5 protected
  • v17.7.4 protected
  • v17.8.2 protected
  • v17.6.4 protected
  • v17.7.3 protected
  • v17.8.1 protected
  • v17.8.0 protected
  • v17.7.2 protected
  • v17.8.0-rc42 protected
  • v17.5.5 protected
  • v17.6.3 protected
  • v17.7.1 protected
  • v17.7.0 protected
40 results

health.go

  • Andrew Newdigate's avatar
    6e8b4bcb
    Bring back a custom dialler for Gitaly Ruby · 6e8b4bcb
    Andrew Newdigate authored
    This is a second fix for the GRPC bug related to using unix sockets
    alongside unix sockets. Previously we fixed incoming clients. This
    change fixes the connection between Gitaly and Gitaly-Ruby, which
    always relies on unix sockets, and which currently fail when http
    proxies are setup.
    
    A (too) long history of this change:
    
    * Unix sockets have never been officially supported by gRPC
    * Originally unix sockets didn't work at all, and you had to use a
      dialer
    * Attempted to upgrade from gRPC 1.9 to 1.16 and found that our dialer
      broke connectivity:
      gitlab-org/gitaly!972
    * Isolated the problem to this commit:
      https://github.com/grpc/grpc-go/commit/90dca43332f6cc944c37e16f32a82c41639e7705
    * Fixed the problem by switching to the default dialer for unix: URLs
    * (note that it's still not officially supported, but without
      integration tests with proxy configurations, it seems to work)
    * In #1447, discovered that the default dialer breaks if one has http
      proxies configured (there was a also a second failure in
      gitlab-org/gitaly!1032 which
      involved clients talking to Gitaly)
    * This change partially reverts
      gitlab-org/gitaly!972 while keeping
      the fix for the original connectivity issue
    6e8b4bcb
    History
    Bring back a custom dialler for Gitaly Ruby
    Andrew Newdigate authored
    This is a second fix for the GRPC bug related to using unix sockets
    alongside unix sockets. Previously we fixed incoming clients. This
    change fixes the connection between Gitaly and Gitaly-Ruby, which
    always relies on unix sockets, and which currently fail when http
    proxies are setup.
    
    A (too) long history of this change:
    
    * Unix sockets have never been officially supported by gRPC
    * Originally unix sockets didn't work at all, and you had to use a
      dialer
    * Attempted to upgrade from gRPC 1.9 to 1.16 and found that our dialer
      broke connectivity:
      gitlab-org/gitaly!972
    * Isolated the problem to this commit:
      https://github.com/grpc/grpc-go/commit/90dca43332f6cc944c37e16f32a82c41639e7705
    * Fixed the problem by switching to the default dialer for unix: URLs
    * (note that it's still not officially supported, but without
      integration tests with proxy configurations, it seems to work)
    * In #1447, discovered that the default dialer breaks if one has http
      proxies configured (there was a also a second failure in
      gitlab-org/gitaly!1032 which
      involved clients talking to Gitaly)
    * This change partially reverts
      gitlab-org/gitaly!972 while keeping
      the fix for the original connectivity issue
Code owners
Assign users and groups as approvers for specific file changes. Learn more.