4paradigm / 4paradigm/OpenMLDB

Zk too many connections when too many online loaddata jobs or too many work threads

Offen
#3,219 1 Kommentar 0 Reaktionen 1 zugewiesene Person Beansprucht von @vagetablechicken Auf GitHub ansehen
batch-engine bug
Vorherrschende Sprache
C++
Sterne
1.7k
Forks
331
Ø Merge
12 T. 12 Std.
Gemergte PRs (30 T.)
1

Beschreibung

Too many **load online jobs** create too many connections with zk. And zk default setting `maxClientCnxns=60`.
(Online loaddata will generate too many clients, one zk client for each one.)

If `too many connections` occur, offine job will fail at `fail to init zk handler with hosts`, zk client error is `110(Connection timed out)`, we can't know it's too many connections of zk from offline jobs.

So if you can use diag tool or CLI to connect cluster, but the new offline job will get failed, it may be the zk connections error. To check it, `grep "Too many" `.

If you just run a onebox cluster(taskmanager is local) and just submit one job(no other running jobs), still get the `Too many` error, you might have got it wrong. You should check `show jobs`, no other running jobs in list, and `jps -v` to ensure no orphan offline jobs.

Diag tool can do the checks, it should support:
1. inspect offline --running to get all running jobs
2. execute jps and grep to get all running jobs in system
3. zk log parse(but maybe it’s not allowed to ssh the zk host)

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

The issue describes a ZooKeeper connection limit problem under high load from online jobs. Look at the ZooKeeper client initialization code and connection pooling. Check the error handling for 'Too many connections' in the logs. The diag tool or CLI needs enhancements to detect orphan jobs and parse ZK logs. Understanding the job submission and ZK client lifecycle in the codebase is required to propose a fix.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Bereich
databases, devops, distributed-systems
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.