apache / apache/pulsar

[Functions] Function workers require more memory on Pulsar 2.8.x+

Open
#12,974 3 comments 0 reactions 0 assignees View on GitHub
lifecycle/stale type/bug
Dominant language
Java
Stars
15.3k
Forks
3.8k
Avg merge
1d 14h
Merged PRs (30d)
160

Description

**Describe the bug**
Function workers consume more resident RAM memory on Pulsar 2.8.x compared to Pulsar 2.7.x .
The "built-in" NAR files from the connectors directory are loaded and retained in memory as NARClassLoaders.
This change was made as part of #9413.
This could lead to OOM killer killing the function worker on Kubernetes when there are low limits for the function worker. ​

**Expected behavior**
The expectation is that a function worker on Pulsar 2.8.x+ wouldn't require more memory that Pulsar 2.7.x .

Contributor guide

Open the contributing guide

Research direction

The issue names no files or tests; start by tracing how built-in NAR files from the connectors directory are loaded and retained as NARClassLoaders in the function worker. Compare memory behavior between Pulsar 2.7.x and 2.8.x+, then verify that the worker no longer requires increased resident RAM under the reported Kubernetes limits.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, kubernetes
Domain
devops, distributed-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.