Comments (6)
Hi @mengccmumu, there was a pull request to fix this problem, see #2223. Could you help us verify this PR on your environment?
from dubbo-go.
already verify this PR, but OOM still occurs
from dubbo-go.
From the picture you provided, I don't see any leaks about the MergeURL
.
from dubbo-go.
From the picture you provided, I don't see any leaks about the
MergeURL
.
you are right .
I will analyze the issue with OOM again .
from dubbo-go.
@mengccmumu
你这个oom解决了吗
from dubbo-go.
We are also experiencing this problem in the production environment and hope to resolve it soon
pprof list:
(pprof) list MergeURL
Total: 489.08MB
ROUTINE ======================== dubbo.apache.org/dubbo-go/v3/common.MergeURL in dubbo.apache.org/dubbo-go/[email protected]/common/url.go
271.67MB 324.67MB (flat, cum) 66.38% of Total
. . 681:// the params of result will be (a1->v1, b1->v2, a2->v3).
. . 682:// You should notice that the value of b1 is v2, not v4.
. . 683:// due to URL is not thread-safe, so this method is not thread-safe
. . 684:func MergeURL(serviceURL *URL, referenceURL *URL) *URL {
. . 685: // After Clone, it is a new URL that there is no thread safe issue.
. 52MB 686: mergedURL := serviceURL.Clone()
. . 687: params := mergedURL.GetParams()
. . 688: // iterator the referenceURL if serviceURL not have the key ,merge in
. . 689: // referenceURL usually will not changed. so change RangeParams to GetParams to avoid the string value copy.// Group get group
. . 690: for key, value := range referenceURL.GetParams() {
. . 691: if v := mergedURL.GetParam(key, ""); len(v) == 0 {
. . 692: if len(value) > 0 {
268.67MB 268.67MB 693: params[key] = value
. . 694: }
. . 695: }
. . 696: }
. . 697:
. . 698: // loadBalance,cluster,retries strategy config
. 1MB 699: methodConfigMergeFcn := mergeNormalParam(params, referenceURL, []string{constant.LoadbalanceKey, constant.ClusterKey, constant.RetriesKey, constant.TimeoutKey})
. . 700:
from dubbo-go.
Related Issues (20)
- Sample and test-case tasks HOT 1
- Some feature plan and thoughts. HOT 1
- Failed to start using nacos as configuration center HOT 1
- the default maxMsgLength for getty param HOT 2
- sentinel.TraceError和sentinel.Exit没有被调用 HOT 2
- logger zap format bug
- client can't get attachments which is set from server HOT 5
- triple request missed http header like scheme, host etc. HOT 3
- protoc-gen-go-triple 在一个proto文件有多个service的情况下有bug
- can't go build on protoc-gen-go-triple
- 有一个panic导致应用挂了 HOT 5
- `client.WithClientCheck()` should set `check` to false instead of true. HOT 2
- Java interoperability issue, `go-client` call `java-server` failed when calling MetadataService during service discovery. HOT 1
- After the streaming call ends, client response.tailer() returns empty
- Test case bug, a contradiction in its logic.
- Community weekly meeting record (2024.04.26)
- 使用配置来提供服务,filter不生效 HOT 6
- Url.Clone HOT 1
- dubbogo-cli show show zk detail err
- Does anyone know about this bug? memory leak
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dubbo-go.