fission version
client:
fission/core:
BuildDate: "2023-11-30T15:47:54Z"
GitCommit: 9b57f1f2
Version: v1.20.0
server:
fission/core:
BuildDate: "2023-11-30T15:47:54Z"
GitCommit: 9b57f1f2
Version: v1.20.0
kubectl version
Client Version: v1.28.4
Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3
Server Version: v1.23.8
Kubernetes platform (e.g. Google Kubernetes Engine)
OpenStack
Describe the bug
It looks like Redis-backed queues are no longer listened to once a list is empty (hence deleted from Redis, since it has no concept of an empty list).
fission function log -f --name producer
fission function log -f --name consumer
Execute:
fission function test --name producer
fission function test --name producer
fission function test --name producer
fission function test --name producer
The producer function log should now show the messages being produced.
Now the consumer function log should show the messages being consumed.
Let's add some more messages:
fission function test --name producer
fission function test --name producer
fission function test --name producer
fission function test --name producer
The logs should show the messages being produced, but NO message is consumed.
Deleting and recreating the trigger fixes the issue:
fission mqtrigger delete --name redisbug
Expected result
The messaged should be consumed even after the Redis list is emptied.
Fission/Kubernetes version
Kubernetes platform (e.g. Google Kubernetes Engine) OpenStack
Describe the bug It looks like Redis-backed queues are no longer listened to once a list is empty (hence deleted from Redis, since it has no concept of an empty list).
To Reproduce
Pre-requirements:
Create a
producer.py
script:Create a
consumer.py
script:Test setup:
On two different shells start log observers:
Execute:
The producer function log should now show the messages being produced.
Let's create a trigger to consume the messages:
Now the consumer function log should show the messages being consumed.
Let's add some more messages:
The logs should show the messages being produced, but NO message is consumed.
Deleting and recreating the trigger fixes the issue:
fission mqtrigger delete --name redisbug
Expected result The messaged should be consumed even after the Redis list is emptied.
Actual result No messages are further consumed.
Screenshots/Dump file