Unable to vote - worker pod issue

Hello,
I am trying the voting app lab. I can see both voting app and result app up in the ui. However, when I try to vote I am getting an internal server error. I have been looking at older post but that didn’t help. I think there is an issue with the worker pod

All are running except the worker one

NAME READY STATUS RESTARTS AGE
pod/postgre-deploy-784549dd6-vwl7h 1/1 Running 1 (7m31s ago) 8h
pod/redis-deploy-6d9b9765bb-hsqk5 1/1 Running 1 (7m32s ago) 8h
pod/result-deploy-679d956844-57jwr 1/1 Running 1 (7m31s ago) 8h
pod/result-deploy-679d956844-6gdr8 1/1 Running 1 (7m31s ago) 8h
pod/result-deploy-679d956844-jsv9p 1/1 Running 1 (7m31s ago) 8h
pod/voting-deploy-688d4dcdf-n6kmp 1/1 Running 1 (7m31s ago) 8h
pod/voting-deploy-688d4dcdf-pgrtm 1/1 Running 1 (7m31s ago) 8h
pod/voting-deploy-688d4dcdf-vt9zm 1/1 Running 1 (7m31s ago) 8h
pod/worker-deploy-688db8576b-j77lm 0/1 Error 0 8m33s

We can see it connects to db and then there is an issue

Connected to db
System.AggregateException: One or more errors occurred. (Resource temporarily unavailable) —> System.Net.Internals.SocketExceptionFactory+ExtendedSocketException: Resource temporarily unavailable
at System.Net.Dns.InternalGetHostByName(String hostName, Boolean includeIPv6)
at System.Net.Dns.ResolveCallback(Object context)
— End of stack trace from previous location where exception was thrown —
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Net.Dns.HostResolutionEndHelper(IAsyncResult asyncResult)
at System.Net.Dns.EndGetHostEntry(IAsyncResult asyncResult)
at System.Net.Dns.<>c.b__27_1(IAsyncResult asyncResult)
at System.Threading.Tasks.TaskFactory1.FromAsyncCoreLogic(IAsyncResult iar, Func2 endFunction, Action1 endAction, Task1 promise, Boolean requiresSynchronization)
— End of inner exception stack trace —
at System.Threading.Tasks.Task1.GetResultCore(Boolean waitCompletionNotification) at Worker.Program.GetIp(String hostname) in /code/src/Worker/Program.cs:line 127 at Worker.Program.OpenRedisConnection(String hostname) in /code/src/Worker/Program.cs:line 108 at Worker.Program.Main(String[] args) in /code/src/Worker/Program.cs:line 20 ---> (Inner Exception #0) System.Net.Internals.SocketExceptionFactory+ExtendedSocketException (0x00000001): Resource temporarily unavailable at System.Net.Dns.InternalGetHostByName(String hostName, Boolean includeIPv6) at System.Net.Dns.ResolveCallback(Object context) --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Net.Dns.HostResolutionEndHelper(IAsyncResult asyncResult) at System.Net.Dns.EndGetHostEntry(IAsyncResult asyncResult) at System.Net.Dns.<>c.<GetHostEntryAsync>b__27_1(IAsyncResult asyncResult) at System.Threading.Tasks.TaskFactory1.FromAsyncCoreLogic(IAsyncResult iar, Func2 endFunction, Action1 endAction, Task`1 promise, Boolean requiresSynchronization)<—

Which lab is this (link please)?

If you use the manifests from here, it should work.

Checked again, noticed Redis In the logs :
Worker.Program.OpenRedisConnection(String hostname)

Checked if Redis was listening :
/ # nc -zv redis-svc 6379
redis-svc (10.105.215.33:6379) open

It’s not mentionned in the demo but just like postgre must be be nammed “db”, redis must be nammed “redis” so If you face System.Net.Dns.HostResolution, check postgre is nammed “db” and redis “redis”

Changed it accordingly and it’s all good