Skip to content

fix: server run race#7964

Merged
zirain merged 17 commits intoenvoyproxy:mainfrom
zirain:fix/waitgroup-race
Jan 22, 2026
Merged

fix: server run race#7964
zirain merged 17 commits intoenvoyproxy:mainfrom
zirain:fix/waitgroup-race

Conversation

@zirain
Copy link
Copy Markdown
Member

@zirain zirain commented Jan 15, 2026

xref: envoyproxy/ai-gateway#1770 (comment) #7880

AIGW required Wait for the runners to close, see #5560.
There's a problem is that runnersDone is blocked until ctx.Done(), which cause goroutine leak when config reloading.

#7880 fix the leak, but there's a race when using WaitGroup with multi goroutinues.

This PR use semaphore with weight 2, to handle all of these cases. see Loader.Wait().

@zirain zirain requested a review from a team as a code owner January 15, 2026 11:09
@netlify
Copy link
Copy Markdown

netlify bot commented Jan 15, 2026

Deploy Preview for cerulean-figolla-1f9435 ready!

Name Link
🔨 Latest commit 0c735b9
🔍 Latest deploy log https://app.netlify.com/projects/cerulean-figolla-1f9435/deploys/697181ff4eac600008cd18e2
😎 Deploy Preview https://deploy-preview-7964--cerulean-figolla-1f9435.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@zirain
Copy link
Copy Markdown
Member Author

zirain commented Jan 15, 2026

failed as excepted:

WARNING: DATA RACE
Write at 0x00c00201e958 by goroutine 129:
  runtime.racewrite()
      <autogenerated>:1 +0x1e
  github.com/envoyproxy/gateway/internal/cmd.server()
      /home/runner/work/gateway/gateway/internal/cmd/server.go:113 +0x491
  github.com/envoyproxy/gateway/internal/cmd.TestServerRun.func1()
      /home/runner/work/gateway/gateway/internal/cmd/server_test.go:43 +0x92

Previous read at 0x00c00201e958 by goroutine 131:
  runtime.raceread()
      <autogenerated>:1 +0x1e
  github.com/envoyproxy/gateway/internal/cmd.server.func1()
      /home/runner/work/gateway/gateway/internal/cmd/server.go:83 +0x84
  github.com/envoyproxy/gateway/internal/envoygateway/config/loader.(*Loader).runHook.func1()
      /home/runner/work/gateway/gateway/internal/envoygateway/config/loader/configloader.go:126 +0xc3
  github.com/envoyproxy/gateway/internal/envoygateway/config/loader.(*Loader).runHook.gowrap1()
      /home/runner/work/gateway/gateway/internal/envoygateway/config/loader/configloader.go:132 +0x4f

Goroutine 129 (running) created at:
  github.com/envoyproxy/gateway/internal/cmd.TestServerRun()
      /home/runner/work/gateway/gateway/internal/cmd/server_test.go:42 +0x147
  testing.tRunner()
      /opt/hostedtoolcache/go/1.25.5/x64/src/testing/testing.go:1934 +0x21c
  testing.(*T).Run.gowrap1()
      /opt/hostedtoolcache/go/1.25.5/x64/src/testing/testing.go:1997 +0x44

Goroutine 131 (running) created at:
  github.com/envoyproxy/gateway/internal/envoygateway/config/loader.(*Loader).runHook()
      /home/runner/work/gateway/gateway/internal/envoygateway/config/loader/configloader.go:124 +0x309
  github.com/envoyproxy/gateway/internal/envoygateway/config/loader.(*Loader).Start()
      /home/runner/work/gateway/gateway/internal/envoygateway/config/loader/configloader.go:46 +0xc4
  github.com/envoyproxy/gateway/internal/cmd.server()
      /home/runner/work/gateway/gateway/internal/cmd/server.go:94 +0x2d7
  github.com/envoyproxy/gateway/internal/cmd.TestServerRun.func1()
      /home/runner/work/gateway/gateway/internal/cmd/server_test.go:43 +0x92

@codecov
Copy link
Copy Markdown

codecov bot commented Jan 15, 2026

Codecov Report

❌ Patch coverage is 66.66667% with 11 lines in your changes missing coverage. Please review.
✅ Project coverage is 73.53%. Comparing base (fc43a31) to head (0c735b9).
⚠️ Report is 4 commits behind head on main.

Files with missing lines Patch % Lines
internal/cmd/server.go 57.14% 6 Missing ⚠️
...nternal/envoygateway/config/loader/configloader.go 73.68% 3 Missing and 2 partials ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #7964      +/-   ##
==========================================
+ Coverage   72.85%   73.53%   +0.68%     
==========================================
  Files         237      237              
  Lines       35623    35631       +8     
==========================================
+ Hits        25952    26203     +251     
+ Misses       7824     7567     -257     
- Partials     1847     1861      +14     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@mathetake
Copy link
Copy Markdown
Member

nice!

jukie
jukie previously approved these changes Jan 16, 2026
@arkodg
Copy link
Copy Markdown
Contributor

arkodg commented Jan 16, 2026

can we enable the -race flag before releasing this

@zhaohuabing
Copy link
Copy Markdown
Member

Hi @zirain is it easy to hit this?

@zirain
Copy link
Copy Markdown
Member Author

zirain commented Jan 16, 2026

Hi @zirain is it easy to hit this?

the testcase is reproducible.

@zirain
Copy link
Copy Markdown
Member Author

zirain commented Jan 16, 2026

can we enable the -race flag before releasing this

go.test.coverage: go.test.cel ## Run go unit and integration tests in GitHub Actions
	@$(LOG_TARGET)
	KUBEBUILDER_ASSETS="$$($(GO_TOOL) setup-envtest use $(ENVTEST_K8S_VERSION) -p path)" \
		go test ./... --tags=integration -race -coverprofile=coverage.xml -covermode=atomic -coverpkg=./...

it's enabled, the problem is lack of test case.

@zirain zirain force-pushed the fix/waitgroup-race branch 2 times, most recently from 9699599 to 6483c24 Compare January 16, 2026 07:56
@zirain zirain changed the title fix: WaitGroup race fix: server run race Jan 16, 2026
@nacx
Copy link
Copy Markdown
Member

nacx commented Jan 16, 2026

We would love to have this merged, as there is an Envoy AI Gateway release waiting for this. @arkodg @jukie mind having another review?

},
)
return server(cmd.Context(), cmd.OutOrStdout(), cmd.ErrOrStderr(), runnerErrors)
started := &atomic.Bool{}
Copy link
Copy Markdown
Contributor

@jukie jukie Jan 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It doesn't look like this is being read or used anywhere, can this be removed?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this's useful to allow us konw when the server is ready and when to trigger a config update.
we can update this to a callback.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could we structure the tests differently if that's the only place it's being used?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Only a minor nit so non-blocking

@zirain zirain force-pushed the fix/waitgroup-race branch from a5fad1d to de06900 Compare January 17, 2026 10:36
@arkodg
Copy link
Copy Markdown
Contributor

arkodg commented Jan 17, 2026

this is the 3rd fix in this area, can we take a step back and redesign what server/runner initialization, handling partial failures, and config restarts should look like ?

Signed-off-by: zirain <zirain2009@gmail.com>
Signed-off-by: zirain <zirain2009@gmail.com>
Signed-off-by: zirain <zirain2009@gmail.com>
Signed-off-by: zirain <zirain2009@gmail.com>
Signed-off-by: zirain <zirain2009@gmail.com>
Signed-off-by: zirain <zirain2009@gmail.com>
Signed-off-by: zirain <zirain2009@gmail.com>
@zirain
Copy link
Copy Markdown
Member Author

zirain commented Jan 18, 2026

this is the 3rd fix in this area, can we take a step back and redesign what server/runner initialization, handling partial failures, and config restarts should look like ?

the main reason of the regssion is lack of reason.

I think the new test case cover them.

Signed-off-by: zirain <zirain2009@gmail.com>
@arkodg
Copy link
Copy Markdown
Contributor

arkodg commented Jan 18, 2026

can you elaborate on what the logic is / should be for

  • dealing with partial runner termination
  • config reloads that impact runner restarts

@zirain
Copy link
Copy Markdown
Member Author

zirain commented Jan 18, 2026

can you elaborate on what the logic is / should be for

  • dealing with partial runner termination
  • config reloads that impact runner restarts

AIGW required Wait for the runners to close, see https://github.com/envoyproxy/gateway/pull/5560/changes.
There's a problem is that runnersDone is blocked until ctx.Done(), which cause goroutine leak when config reloading.

#7880 fix the leak, but there's a race when using WaitGroup with multi goroutinues.

This PR use semaphore with weight 2, to handle all of these cases. see Loader.Wait().

Update above to PR description.

@nacx
Copy link
Copy Markdown
Member

nacx commented Jan 19, 2026

this is the 3rd fix in this area, can we take a step back and redesign what server/runner initialization, handling partial failures, and config restarts should look like ?

I agree with the sentiment here, but I also think that given we're close to the desired date for 1.7 release, and the fact that this should be ideally cherry-picked to previous versions, it is convenient to merge the fix (it's safer to cherry-pick a small fix than a refactoring), unblock the projects that depend on this, and then plan and work for a proper redesign.


// TODO: we need to make sure that all runners are stopped, before we start the new ones
// Otherwise we might end up with error listening on:8081
time.Sleep(3 * time.Second)
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we check whether the ports used by the goaway runners are available before starting new runners?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we didn't need if we run sequentially.

Signed-off-by: zirain <zirain2009@gmail.com>
Signed-off-by: zirain <zirain2009@gmail.com>
zhaohuabing
zhaohuabing previously approved these changes Jan 22, 2026
Copy link
Copy Markdown
Member

@zhaohuabing zhaohuabing left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM Thanks!

@zhaohuabing zhaohuabing requested a review from arkodg January 22, 2026 01:24
Signed-off-by: zirain <zirain2009@gmail.com>
@arkodg arkodg requested review from a team January 22, 2026 05:38
@zirain
Copy link
Copy Markdown
Member Author

zirain commented Jan 22, 2026

/retest

@zirain zirain merged commit 338ebea into envoyproxy:main Jan 22, 2026
141 of 151 checks passed
@zirain zirain deleted the fix/waitgroup-race branch January 22, 2026 08:18
zirain added a commit to zirain/gateway that referenced this pull request Jan 26, 2026
* add test

Signed-off-by: zirain <zirain2009@gmail.com>

* fix race

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* fix

Signed-off-by: zirain <zirain2009@gmail.com>

* fix

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* use Semaphore instead of WaitGroup

Signed-off-by: zirain <zirain2009@gmail.com>

* comments

Signed-off-by: zirain <zirain2009@gmail.com>

* lint

Signed-off-by: zirain <zirain2009@gmail.com>

* fix

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* callback

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* run hook sequentially

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* rename to cfgMux

Signed-off-by: zirain <zirain2009@gmail.com>

---------

Signed-off-by: zirain <zirain2009@gmail.com>
rudrakhp pushed a commit to rudrakhp/gateway that referenced this pull request Jan 26, 2026
* add test

Signed-off-by: zirain <zirain2009@gmail.com>

* fix race

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* fix

Signed-off-by: zirain <zirain2009@gmail.com>

* fix

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* use Semaphore instead of WaitGroup

Signed-off-by: zirain <zirain2009@gmail.com>

* comments

Signed-off-by: zirain <zirain2009@gmail.com>

* lint

Signed-off-by: zirain <zirain2009@gmail.com>

* fix

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* callback

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* run hook sequentially

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* rename to cfgMux

Signed-off-by: zirain <zirain2009@gmail.com>

---------

Signed-off-by: zirain <zirain2009@gmail.com>
Signed-off-by: Rudrakh Panigrahi <rudrakh97@gmail.com>
zirain added a commit that referenced this pull request Jan 26, 2026
* fix: fail fast when unrecoverable discovery errors happens on checking optional CRDs (#7872)

* fail fast when unrecoverable discovery errors happens

Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>

* only retry transient errors

Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>

* fix potenial dead lock

Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>

* address comments

Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>

* minor wording

Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>

* create discovery client once

Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>

* fix lint

Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>

* address comments

Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>

* remove redundant logging

Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>

* add e2e test

Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>

* fix test

Signed-off-by: Huabing(Robin) Zhao <zhaohuabing@gmail.com>

* fix test

Signed-off-by: Huabing(Robin) Zhao <zhaohuabing@gmail.com>

---------

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>

* fix: extproc is discarded with failOpen is enabled for wasm (#7956)

* fix: extproc is discarded with failOpen is enabled for wasm

Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>

* add test

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>

* polish code

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>

* add test

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>

---------

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>

* fix: sanitize control plane config dump (#7901)

* mask secrets

Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>

* address comments

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>

---------

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>

* fix: server run race (#7964)

* add test

Signed-off-by: zirain <zirain2009@gmail.com>

* fix race

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* fix

Signed-off-by: zirain <zirain2009@gmail.com>

* fix

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* use Semaphore instead of WaitGroup

Signed-off-by: zirain <zirain2009@gmail.com>

* comments

Signed-off-by: zirain <zirain2009@gmail.com>

* lint

Signed-off-by: zirain <zirain2009@gmail.com>

* fix

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* callback

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* run hook sequentially

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* rename to cfgMux

Signed-off-by: zirain <zirain2009@gmail.com>

---------

Signed-off-by: zirain <zirain2009@gmail.com>

* fix: wrong cluster type with mixed FQDN backend and service backend refs (#7994)

* fix: wrong cluster type with mixed FQDN backend and service backend refs

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>

* fix mirror cluster endpoint type

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>

* simplify the test

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>

* update comment

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>

---------

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>

* fix: merge route match rule with match all route (#8011)

Signed-off-by: zirain <zirain2009@gmail.com>

* fix gen

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* fix for golang 11.24

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* fix watch CRD version

Signed-off-by: zirain <zirain2009@gmail.com>

---------

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>
Signed-off-by: zirain <zirain2009@gmail.com>
Co-authored-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>
rudrakhp added a commit that referenced this pull request Jan 26, 2026
* fix: extproc is discarded with failOpen is enabled for wasm (#7956)

* fix: extproc is discarded with failOpen is enabled for wasm

Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>

* add test

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>

* polish code

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>

* add test

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>

---------

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>
Signed-off-by: Rudrakh Panigrahi <rudrakh97@gmail.com>

* fix: sanitize control plane config dump (#7901)

* mask secrets

Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>

* address comments

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>

---------

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>
Signed-off-by: Rudrakh Panigrahi <rudrakh97@gmail.com>

* fix: server run race (#7964)

* add test

Signed-off-by: zirain <zirain2009@gmail.com>

* fix race

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* fix

Signed-off-by: zirain <zirain2009@gmail.com>

* fix

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* use Semaphore instead of WaitGroup

Signed-off-by: zirain <zirain2009@gmail.com>

* comments

Signed-off-by: zirain <zirain2009@gmail.com>

* lint

Signed-off-by: zirain <zirain2009@gmail.com>

* fix

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* callback

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* run hook sequentially

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* rename to cfgMux

Signed-off-by: zirain <zirain2009@gmail.com>

---------

Signed-off-by: zirain <zirain2009@gmail.com>
Signed-off-by: Rudrakh Panigrahi <rudrakh97@gmail.com>

* fix: wrong cluster type with mixed FQDN backend and service backend refs (#7994)

* fix: wrong cluster type with mixed FQDN backend and service backend refs

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>

* fix mirror cluster endpoint type

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>

* simplify the test

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>

* update comment

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>

---------

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>
Signed-off-by: Rudrakh Panigrahi <rudrakh97@gmail.com>

* fix: fail fast when unrecoverable discovery errors happens on checking optional CRDs (#7872)

* fail fast when unrecoverable discovery errors happens

Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>

* only retry transient errors

Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>

* fix potenial dead lock

Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>

* address comments

Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>

* minor wording

Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>

* create discovery client once

Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>

* fix lint

Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>

* address comments

Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>

* remove redundant logging

Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>

* add e2e test

Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>

* fix test

Signed-off-by: Huabing(Robin) Zhao <zhaohuabing@gmail.com>

* fix test

Signed-off-by: Huabing(Robin) Zhao <zhaohuabing@gmail.com>

---------

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>
Signed-off-by: Rudrakh Panigrahi <rudrakh97@gmail.com>

* fix: merge route match rule with match all route (#8011)

Signed-off-by: zirain <zirain2009@gmail.com>
Signed-off-by: Rudrakh Panigrahi <rudrakh97@gmail.com>

* fix: do not set autoHTTPConfig when used mixed(HTTP + HTTPS) backends (#7950)

* fix: do not set autoHTTPConfig when used mixed backend

Signed-off-by: zirain <zirain2009@gmail.com>

* release notes

Signed-off-by: zirain <zirain2009@gmail.com>

* fix

Signed-off-by: zirain <zirain2009@gmail.com>

* add e2e

Signed-off-by: zirain <zirain2009@gmail.com>

---------

Signed-off-by: zirain <zirain2009@gmail.com>
Signed-off-by: Rudrakh Panigrahi <rudrakh97@gmail.com>

* fix: backend tls default namespace (#7987)

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>
Signed-off-by: Rudrakh Panigrahi <rudrakh97@gmail.com>

* fix: race in gatewaapi runner (#8037)

* add testcase

Signed-off-by: zirain <zirain2009@gmail.com>

* fix

Signed-off-by: zirain <zirain2009@gmail.com>

* simply

Signed-off-by: zirain <zirain2009@gmail.com>

---------

Signed-off-by: zirain <zirain2009@gmail.com>
Signed-off-by: Rudrakh Panigrahi <rudrakh97@gmail.com>

* [release/v1.6] v1.6.3 release notes (#8054)

Signed-off-by: Rudrakh Panigrahi <rudrakh97@gmail.com>

* v1.6.3 version

Signed-off-by: Rudrakh Panigrahi <rudrakh97@gmail.com>

* fix gen-check

Signed-off-by: Rudrakh Panigrahi <rudrakh97@gmail.com>

* fix lint

Signed-off-by: Rudrakh Panigrahi <rudrakh97@gmail.com>

---------

Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>
Signed-off-by: Rudrakh Panigrahi <rudrakh97@gmail.com>
Signed-off-by: zirain <zirain2009@gmail.com>
Co-authored-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com>
Co-authored-by: zirain <zirain2009@gmail.com>
SadmiB pushed a commit to SadmiB/gateway that referenced this pull request Jan 30, 2026
* add test

Signed-off-by: zirain <zirain2009@gmail.com>

* fix race

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* fix

Signed-off-by: zirain <zirain2009@gmail.com>

* fix

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* use Semaphore instead of WaitGroup

Signed-off-by: zirain <zirain2009@gmail.com>

* comments

Signed-off-by: zirain <zirain2009@gmail.com>

* lint

Signed-off-by: zirain <zirain2009@gmail.com>

* fix

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* callback

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* run hook sequentially

Signed-off-by: zirain <zirain2009@gmail.com>

* fix lint

Signed-off-by: zirain <zirain2009@gmail.com>

* rename to cfgMux

Signed-off-by: zirain <zirain2009@gmail.com>

---------

Signed-off-by: zirain <zirain2009@gmail.com>
Signed-off-by: Sadmi Bouhafs <sadmibouhafs@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants