Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: Setting systemScaling.system_scaling_maxsubscriptioncount parameter for broker size >= PubSub+ENT-100K breaks deployment #88

Open
JanGrosse opened this issue Oct 15, 2024 · 1 comment
Labels
bug Something isn't working documentation Improvements or additions to documentation tracked Has an associated Solace Tracking ID

Comments

@JanGrosse
Copy link

Bug Description

Tested with Solace Operator version 1.2.0

According to the solace calculator when one defines the broker size to be PubSub+ENT-100K the systemScaling parameters should be set to the following value

  systemScaling:
    system_scaling_maxconnectioncount: 100000
    system_scaling_maxqueuemessagecount: 240
    system_scaling_maxkafkabridgecount: 0
    system_scaling_maxkafkabrokerconnectioncount: 0
    system_scaling_maxbridgecount: 500
    system_scaling_maxsubscriptioncount: 5000000
    messagespool_maxspoolusage: 200000
    messagingNodeCpu: "8"
    messagingNodeMemory: "30925Mi"

creating a PubSubPlusEventBroker manifest with those parameters will result in a pod which is stuck in a CrashLoopBackoff the reason for that is that the 5.000.000 of the maxSubscriptionCount get somehow transformed into the exponential format "5+e06"
which results in a statefulset containing the following environment variable

        - name: SYSTEM_SCALING_MAXSUBSCRIPTIONCOUNT
          value: "5e+06"

during the pod startup the container crashes because it can not read the undefined scaling key `5\n'
(I have already manually fixed my deployment and did not copy the correct error message, but it is something like this)

Expected Behavior

Setting a systemScaling paramater above 1 million should not result in it being transformed into the exponential format.

Steps to Reproduce

Create a PubSubPlusEventBroker manifest file with the systemScaling parameters for PubSub+ENT-100K (or higher).

apiVersion: pubsubplus.solace.com/v1beta1
kind: PubSubPlusEventBroker
metadata:
  name: demo
spec:
  podDisruptionBudgetForHA: true
  redundancy: true
  systemScaling:
    system_scaling_maxconnectioncount: 100000
    system_scaling_maxqueuemessagecount: 240
    system_scaling_maxkafkabridgecount: 0
    system_scaling_maxkafkabrokerconnectioncount: 0
    system_scaling_maxbridgecount: 500
    system_scaling_maxsubscriptioncount: 5000000
    messagespool_maxspoolusage: 200000
    messagingNodeCpu: "8"
    messagingNodeMemory: "30925Mi"
  storage:
    messagingNodeStorageSize: "228700MB"
    monitorNodeStorageSize: 3Gi

Apply the manifest file kubectl apply -f <manifest.yaml> and you should see in the resulting statefulset the wrong environment variable set for SYSTEM_SCALING_MAXSUBSCRIPTIONCOUNT and the messaging nodes keep on crashing.

Solace Broker version

10.8.1.52

Solace API

No response

Solace API version

No response

@JanGrosse JanGrosse added the bug Something isn't working label Oct 15, 2024
@LewisKSaint
Copy link
Collaborator

Hello @JanGrosse, thanks for reporting this. It's being tracked. For a temporal fix, use the scaling parameters in quotes.

@LewisKSaint LewisKSaint added tracked Has an associated Solace Tracking ID documentation Improvements or additions to documentation labels Oct 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working documentation Improvements or additions to documentation tracked Has an associated Solace Tracking ID
Projects
None yet
Development

No branches or pull requests

2 participants