Skip to content

[Bug]: can't retry: can't perform "INSERT INTO pod_owner #56

@ngoeddel-openi

Description

@ngoeddel-openi

Affected Chart

icinga-stack

Which version of the app contains the bug?

0.3.0

Please describe your problem

Actually I am using my fork here: https://github.com/open-i-gmbh/icinga-helm-charts

But at the moment there are only minor changes locally on my machine because I am trying to get HA working and parent zones and satellites and all that good stuff.

Anyway. The bug I encountered comes from the icinga-kubernetes Subchart. It deploys fine but the Pod is not getting healthy.
This is what the Pod shows:

E0625 10:57:32.777860       1 runtime.go:79] Observed a panic: "send on closed channel" (send on closed channel)
goroutine 6316 [running]:
k8s.io/apimachinery/pkg/util/runtime.logPanic({0x18aeca0, 0x1db96e0})
	/go/pkg/mod/k8s.io/apimachinery@v0.30.1/pkg/util/runtime/runtime.go:75 +0x85
k8s.io/apimachinery/pkg/util/runtime.HandleCrash({0x0, 0x0, 0xc0008c8e00?})
	/go/pkg/mod/k8s.io/apimachinery@v0.30.1/pkg/util/runtime/runtime.go:49 +0x6b
panic({0x18aeca0?, 0x1db96e0?})
	/usr/local/go/src/runtime/panic.go:770 +0x132
github.com/icinga/icinga-kubernetes/pkg/database.(*hasMany[...]).StreamInto(0x1dbc300?, {0x1dd7a30, 0xc0038a3c70}, 0xc003d38960)
	/build/pkg/database/relations.go:76 +0x125
github.com/icinga/icinga-kubernetes/pkg/database.(*Database).UpsertStreamed.func3.1()
	/build/pkg/database/database.go:572 +0xa5
golang.org/x/sync/errgroup.(*Group).Go.func1()
	/go/pkg/mod/golang.org/x/sync@v0.7.0/errgroup/errgroup.go:78 +0x56
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 3647
	/go/pkg/mod/golang.org/x/sync@v0.7.0/errgroup/errgroup.go:75 +0x96
panic: send on closed channel [recovered]
	panic: send on closed channel

goroutine 6316 [running]:
k8s.io/apimachinery/pkg/util/runtime.HandleCrash({0x0, 0x0, 0xc0008c8e00?})
	/go/pkg/mod/k8s.io/apimachinery@v0.30.1/pkg/util/runtime/runtime.go:56 +0xcd

And it also shows this a lot of times:

F0625 10:40:08.672499       1 main.go:204] can't retry: can't perform "INSERT INTO `pod_owner` (`controller`, `name`, `pod_uuid`, `owner_uuid`, `uid`, `block_owner_deletion`, `kind`) VALUES (:controller, :name, :pod_uuid, :owner_uuid, :uid, :block_owner_deletion, :kind) ON DUPLICATE KEY UPDATE `controller` = VALUES(`controller`), `name` = VALUES(`name`), `pod_uuid` = VALUES(`pod_uuid`), `owner_uuid` = VALUES(`owner_uuid`), `uid` = VALUES(`uid`), `block_owner_deletion` = VALUES(`block_owner_deletion`), `kind` = VALUES(`kind`)": Error 1265 (01000): Data truncated for column 'kind' at row 11

And the database pod shows this:

<...>
2024-06-25 10:57:32 1219 [Warning] Aborted connection 1219 to db: 'kubernetes' user: 'icinga' host: '10.42.22.220' (Got an error reading communication packets)
2024-06-25 10:57:32 1231 [Warning] Aborted connection 1231 to db: 'kubernetes' user: 'icinga' host: '10.42.22.220' (Got an error reading communication packets)
2024-06-25 10:57:32 1232 [Warning] Aborted connection 1232 to db: 'kubernetes' user: 'icinga' host: '10.42.22.220' (Got an error reading communication packets)
2024-06-25 10:57:32 1223 [Warning] Aborted connection 1223 to db: 'kubernetes' user: 'icinga' host: '10.42.22.220' (Got an error reading communication packets)
2024-06-25 11:00:29 1282 [Warning] Aborted connection 1282 to db: 'kubernetes' user: 'icinga' host: '10.42.22.220' (Got an error reading communication packets)
2024-06-25 11:00:29 1288 [Warning] Aborted connection 1288 to db: 'kubernetes' user: 'icinga' host: '10.42.22.220' (Got an error reading communication packets)
2024-06-25 11:00:29 1275 [Warning] Aborted connection 1275 to db: 'kubernetes' user: 'icinga' host: '10.42.22.220' (Got an error reading communication packets)
2024-06-25 11:00:29 1287 [Warning] Aborted connection 1287 to db: 'kubernetes' user: 'icinga' host: '10.42.22.220' (Got an error reading communication packets)
2024-06-25 11:00:29 1252 [Warning] Aborted connection 1252 to db: 'kubernetes' user: 'icinga' host: '10.42.22.220' (Got an error reading communication packets)

On the other hand it seemed to be able to create all the necessary tables in the database and even in pod_owner there are a lot of entries. But the Pod still does not get healthy and restarts itself the whole time.

This is my values.yaml:

icinga2:
  replicas: 1
  features:
    icingadb:
      enabled: false
  config:
    is_master: true
    zone_name: o-mgmt-zone
    create_endpoints: true
    ticket_salt:
      value: abcdefghijklmnopqrstuvwxyz
      credSecret: # Or use existing secret
      secretKey:
    disable_confd: true
    endpoints:
      - name: o-dev-icinga-1
        host: o-dev-icinga-1
      - name: o-dev-icinga-2
        host: o-dev-icinga-2
    zones:
      - name: o-dev-zone
        parent: o-mgmt-zone
        endpoints:
          - o-dev-icinga-1
          - o-dev-icinga-2

  persistence:
    enabled: true

icingadb:
  enabled: false

icingaweb2:
  enabled: false

global:
  api:
    users:
      director:
        enabled: false
      icingaweb:
        enabled: false
  databases:
    director:
      enabled: false
    icingadb:
      enabled: false
    icingaweb2:
      enabled: false
    kubernetes:
      password:
        value: icinga
      username:
        value: icinga
      persistence:
        enabled: true
    redis:
      enabled: false

Just ignore the config for icinga2 because I changed a lot there.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingtriageNeeds to be triaged

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions