chengh1 opened a new issue #13461: URL: https://github.com/apache/shardingsphere/issues/13461
## Bug Report **For English only**, other languages will not accept. Before report a bug, make sure you have: - Searched open and closed [GitHub issues](https://github.com/apache/shardingsphere/issues). - Read documentation: [ShardingSphere Doc](https://shardingsphere.apache.org/document/current/en/overview). Please pay attention on issues you submitted, because we maybe need more details. If no response anymore and we cannot reproduce it on current information, we will **close it**. Please answer these questions before submitting your issue. Thanks! ### Which version of ShardingSphere did you use? 5.0.0-RC1-SNAPSHOT ### Which project did you use? ShardingSphere-JDBC or ShardingSphere-Proxy? ShardingSphere-Proxy ### Expected behavior The proxy is not restarted after modifying the table structure without proxy, the all fields of the returned queryheader are from the same column, and the returned columns are not expected. ### Actual behavior The proxy is not restarted after modifying the table structure without proxy, the all fields of the returned queryheader are not from the same column, and the returned columns arenot expected. ### Reason analyze (If you can)  The parameter columnName and columnIndex of the build method comes from the projectionsContext of executionContext, they are all comes from metadata, but the other fields of the queryheader are all from queryResultMetaData by columnIndex, so if the field's index in proxy meta and queryresult is different, then will cause the all fields of the returned queryheader are not from the same column, and the returned columns are not expected. **If we want to avoid this problem, we should ensure that the columnIndex is the actual index in the queryresult,this will ensure that all fields of the queryheader are from the same column, and the returned columns are expected.** ### Steps to reproduce the behavior, such as: SQL to execute, sharding rule configuration, when exception occur etc. **There is a single table t_user, it has three fields, they are id, name, age. Sharding table has the same problem.** 1. start the proxy. 2. add a new column birthday after id, then the actual column are id, birthday, name, age. 3. assuming that proxy is not restarted at this time, execute the sql: select * from t_user, at this time, there are some problems: - the all fields of the returned queryheader are not from the same column   - the returned columns are not expected  ### Example codes for reproduce this issue (such as a github link). -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
