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

panic when define a 'Echo' service #2084

Open
weiyuanke opened this issue Oct 18, 2022 · 6 comments
Open

panic when define a 'Echo' service #2084

weiyuanke opened this issue Oct 18, 2022 · 6 comments
Assignees
Labels
good first issue Good for newcomers

Comments

@weiyuanke
Copy link

服务端proto文件
image

客户端测试代码
image

报错信息:
image

`2022-10-17T20:02:15.705+0800 INFO config/root_config.go:150 [Config Center] Config center doesn't start
2022-10-17T20:02:15.706+0800 INFO dubbo3/dubbo3_protocol.go:141 [Triple Protocol] Refer service: tri://localhost:20000/api.EchoService?app.version=3.0.0&application=dubbo.io&async=false&bean.name=EchoServiceClientImpl&cluster=failover&config.tracing=&environment=dev&generic=&group=&interface=api.EchoService&loadbalance=&metadata-type=local&module=sample&name=dubbo.io&organization=dubbo-go&owner=dubbo-go&provided-by=&reference.filter=cshutdown&registry.role=0&release=dubbo-golang-3.0.0&retries=&serialization=&side=consumer&sticky=false&timestamp=1666008135&version=
2022-10-17T20:02:15.707+0800 INFO dubbo3/dubbo3_protocol.go:141 [Triple Protocol] Refer service: tri://localhost:20000/api.Greeter?app.version=3.0.0&application=dubbo.io&async=false&bean.name=GreeterClientImpl&cluster=failover&config.tracing=&environment=dev&generic=&group=&interface=api.Greeter&loadbalance=&metadata-type=local&module=sample&name=dubbo.io&organization=dubbo-go&owner=dubbo-go&provided-by=&reference.filter=cshutdown&registry.role=0&release=dubbo-golang-3.0.0&retries=&serialization=&side=consumer&sticky=false&timestamp=1666008135&version=
name:"Hello laurence" id:"12345" age:21
panic: reflect: call of reflect.Value.IsZero on zero Value

goroutine 1 [running]:
reflect.Value.IsZero({0x0?, 0x0?, 0x10?})
/opt/homebrew/Cellar/go/1.19.1/libexec/src/reflect/value.go:1602 +0x488
github.com/dubbogo/triple/pkg/triple.(*TripleClient).Invoke(0x140001080f0, {0x10365a8cf, 0x5}, {0x1400035d500, 0x2, 0x10}, {0x103b0a600?, 0x140000e3b80})
/Users/yuankewei/go/pkg/mod/github.com/dubbogo/triple@v1.1.8/pkg/triple/dubbo3_client.go:111 +0x1f0
dubbo.apache.org/dubbo-go/v3/protocol/dubbo3.(*DubboInvoker).Invoke(0x140002c0140, {0x103c4ee08, 0x140000c0000}, {0x103c5e3d0, 0x1400027c0d0})
/Users/yuankewei/go/pkg/mod/dubbo.apache.org/dubbo-go/v3@v3.0.1/protocol/dubbo3/dubbo3_invoker.go:204 +0x870
dubbo.apache.org/dubbo-go/v3/filter/graceful_shutdown.(*consumerGracefulShutdownFilter).Invoke(0x10?, {0x103c4ee08?, 0x140000c0000?}, {0x103c4f2d8?, 0x140002c0140?}, {0x103c5e3d0?, 0x1400027c0d0?})
/Users/yuankewei/go/pkg/mod/dubbo.apache.org/dubbo-go/v3@v3.0.1/filter/graceful_shutdown/consumer_filter.go:63 +0x88
dubbo.apache.org/dubbo-go/v3/protocol/protocolwrapper.(*FilterInvoker).Invoke(0x1400007ebd0, {0x103c4ee08, 0x140000c0000}, {0x103c5e3d0, 0x1400027c0d0})
/Users/yuankewei/go/pkg/mod/dubbo.apache.org/dubbo-go/v3@v3.0.1/protocol/protocolwrapper/protocol_filter_wrapper.go:128 +0x58
dubbo.apache.org/dubbo-go/v3/cluster/cluster/failover.(*failoverClusterInvoker).Invoke(0x1400007ec00, {0x103c4ee08, 0x140000c0000}, {0x103c5e3d0, 0x1400027c0d0})
/Users/yuankewei/go/pkg/mod/dubbo.apache.org/dubbo-go/v3@v3.0.1/cluster/cluster/failover/cluster_invoker.go:85 +0x370
dubbo.apache.org/dubbo-go/v3/common/proxy.DefaultProxyImplementFunc.func1.1({0x1400027e000, 0x2, 0x4?})
/Users/yuankewei/go/pkg/mod/dubbo.apache.org/dubbo-go/v3@v3.0.1/common/proxy/proxy.go:200 +0x844
main.main()
/Users/yuankewei/project/hcs-server/test/dubboclient/client.go:53 +0x150
exit status 2`

将服务侧的service name从Echo改为Echo2之后,调用正常,怀疑与内部的Echo filter命名冲突

What happened:

What you expected to happen:

How to reproduce it (as minimally and precisely as possible):

Anything else we need to know?:

@AlexStocks AlexStocks added the good first issue Good for newcomers label Oct 18, 2022
@AlexStocks
Copy link
Contributor

dubbogo 内部存在一个 Echo 的内置服务 filter,用户也定义了一个同名的,所以发生了冲突

@AlexStocks AlexStocks changed the title 测试代码运行报错 panic when define a 'Echo' Oct 18, 2022
@AlexStocks AlexStocks changed the title panic when define a 'Echo' panic when define a 'Echo' service Oct 18, 2022
@zhaoyunxing92 zhaoyunxing92 reopened this Oct 28, 2022
@mooleetzi
Copy link

Is this solved? if not, I'd like to work on it.

@justxuewei
Copy link
Member

justxuewei commented Dec 2, 2022

Thanks, @mooleetzi. I assigned this issue to you. If you encounter any problems, you are welcome to discuss them in our Dingtalk group listed in the readme.

@justxuewei justxuewei added the bug Something isn't working label Dec 2, 2022
@mooleetzi
Copy link

Thanks, @mooleetzi. I assigned this issue to you. If you encounter any problems, you are welcome to discuss them in our Dingtalk group listed in the readme.

Ok~

@AlexStocks
Copy link
Contributor

@justxuewei @mooleetzi this is not a bug.

@mooleetzi
Copy link

@justxuewei @mooleetzi this is not a bug.

OK.

@justxuewei justxuewei removed the bug Something isn't working label Dec 7, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good for newcomers
Projects
None yet
Development

No branches or pull requests

5 participants