apache / apache/openwhisk

Question : Controllers standby test

Open
#5,416 6 comments 0 reactions 0 assignees View on GitHub
Dominant language
Scala
Stars
6.8k
Forks
1.2k
Avg merge
2d 14h
Merged PRs (30d)
2

Description

https://github.com/apache/openwhisk/blob/ba871e59f7b77f02689a13e4e24e438645d67a47/tests/src/test/scala/ha/ShootComponentsTests.scala#L142-L145

'use controller1 if controller0 goes down' test in ShootComponentsTests.scala does following procedures.

1. restart controller0 container
2. /ping controller0 until it’s down
3. /ping controller1 to check it’s still up
4. ( Invoke Action(POST) + Get Action(GET) ) * 96 to nginx

Isn't there a case when nginx will forward the first POST request to controller0 that is not ready to take requests? ( in state container up, but the backend in the container not)

Such behaivor will result in connection reset by peer which is not in Swagger Spec, failing the test.

Contributor guide

Open the contributing guide

Research direction

Read tests/src/test/scala/ha/ShootComponentsTests.scala at lines 142-145 and trace the standby test's restart, /ping, and nginx request sequence. Check whether the first POST can reach controller0 while its backend is unavailable, and compare any observed failure with the Swagger behavior. Done means the concern has a confirmed result and the test or issue records the resolution.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, nginx, scala
Domain
cloud, infrastructure, testing
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.