apache / apache/incubator-seata

xid in RootContext null xid in RpcContext null

Open
#2,881 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
26k
Forks
8.8k
Avg merge
1d 8h
Merged PRs (30d)
4

Description

- [ ] I have searched the [issues](https://github.com/seata/seata/issues) of this repository and believe that this is not a duplicate.

### Ⅰ. Issue Description
环境说明,本地订单服务、营销服务,nginx 做营销服务代理;
由订单服务调用营销服务,TX_XID能正常传递;
发布到CN环境,TX_XID无法传递,经过多方测试,是nginx环境对下划线请求头不能支持,
underscores_in_headers on;
设置局部开启下划线设置,本地测试OK;
再次CN 环境测试,依然无法得到分布式id。

### Ⅱ. Describe what happened

If there is an exception, please attach the exception trace:

```
Just paste your stack trace here!
临时解决方案,fegin拦截器中发送请求头过滤掉下划线(更换请求头参数key,再nginx中做取值还原seata原有设置);
期望:分布式TX_XID可自定义或有降级传递措施,如:TX_XID -> TXXID -> XID

### Ⅵ. Environment:

- JDK version : 1.8
- OS : Linux
- Others: seata 1.2

Contributor guide

Open the contributing guide

Research direction

Start with the Feign interceptor and the request-header path described in the issue, then reproduce the difference between the local setup and the CN environment with nginx. Compare propagation of TX_XID when underscores_in_headers is enabled and when it is not. Done should mean a distributed transaction ID remains transferable through the reported proxy setup, either with a supported custom header or a documented fallback.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, nginx
Domain
distributed-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.