FlyingZC opened a new issue, #30287:
URL: https://github.com/apache/shardingsphere/issues/30287

   ## Bug Report
   Thread safety Issues with Inline expressions
   
   ### Which version of ShardingSphere did you use?
   Master.
   
   ### Which project did you use? ShardingSphere-JDBC or ShardingSphere-Proxy?
   Proxy
   
   ### Expected behavior
   Inline expressions can be correctly routed in concurrent scenarios.
   
   ### Actual behavior
   Can't.
   
   ### Reason analyze (If you can)
   
   ### Steps to reproduce the behavior, such as: SQL to execute, sharding rule 
configuration, when exception occur etc.
   1.Start the proxy using the following YAML configuration.
   ```yaml
   #
   # Licensed to the Apache Software Foundation (ASF) under one or more
   # contributor license agreements.  See the NOTICE file distributed with
   # this work for additional information regarding copyright ownership.
   # The ASF licenses this file to You under the Apache License, Version 2.0
   # (the "License"); you may not use this file except in compliance with
   # the License.  You may obtain a copy of the License at
   #
   #     http://www.apache.org/licenses/LICENSE-2.0
   #
   # Unless required by applicable law or agreed to in writing, software
   # distributed under the License is distributed on an "AS IS" BASIS,
   # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   # See the License for the specific language governing permissions and
   # limitations under the License.
   #
   
   
######################################################################################################
   #
   # Here you can configure the rules for the proxy.
   # This example is configuration of sharding rule.
   #
   
######################################################################################################
   
   databaseName: sharding_db
   
   dataSources:
     ds_0:
       url: 
jdbc:mysql://127.0.0.1:3306/demo_ds_0?serverTimezone=UTC&useSSL=false&allowPublicKeyRetrieval=true
       username: root
       password: root
       connectionTimeoutMilliseconds: 30000
       idleTimeoutMilliseconds: 60000
       maxLifetimeMilliseconds: 1800000
       maxPoolSize: 50
       minPoolSize: 1
     ds_1:
       url: 
jdbc:mysql://127.0.0.1:3306/demo_ds_1?serverTimezone=UTC&useSSL=false&allowPublicKeyRetrieval=true
       username: root
       password: root
       connectionTimeoutMilliseconds: 30000
       idleTimeoutMilliseconds: 60000
       maxLifetimeMilliseconds: 1800000
       maxPoolSize: 50
       minPoolSize: 1
   
   rules:
     - !SINGLE
       tables:
         - "*.*"
     - !SHARDING
       tables:
         account:
           actualDataNodes: ds_${0..1}.account_${0..1}
           databaseStrategy:
             standard:
               shardingColumn: id
               shardingAlgorithmName: database_id_inline
           tableStrategy:
             standard:
               shardingColumn: id
               shardingAlgorithmName: account_inline
           keyGenerateStrategy:
             column: id
             keyGeneratorName: snowflake
       defaultTableStrategy:
         none:
   
       shardingAlgorithms:
         database_id_inline:
           type: INLINE
           props:
             algorithm-expression: ds_${id % 2}
         account_inline:
           type: INLINE
           props:
             algorithm-expression: 
account_${Math.floorMod(Math.floorDiv(id.longValue(), 2L), 2L)}
   
       keyGenerators:
         snowflake:
           type: SNOWFLAKE
   
   ```
   
   2.Create `account` table and insert test data through the proxy.
   ```sql
   use sharding_db;
   mysql> CREATE TABLE account(id int, balance float, transaction_id int, 
primary key (id));
   Query OK, 0 rows affected (0.10 sec)
   
   mysql> insert into account values(1,1,1),(2,2,2);
   Query OK, 2 rows affected (0.04 sec)
   
   mysql> preview select * from account;
   
+------------------+-----------------------------------------------------------+
   | data_source_name | actual_sql                                              
  |
   
+------------------+-----------------------------------------------------------+
   | ds_0             | select * from account_0 UNION ALL select * from 
account_1 |
   | ds_1             | select * from account_0 UNION ALL select * from 
account_1 |
   
+------------------+-----------------------------------------------------------+
   2 rows in set (0.42 sec)
   
   mysql> preview select * from account where id=1;
   +------------------+------------------------------------+
   | data_source_name | actual_sql                         |
   +------------------+------------------------------------+
   | ds_1             | select * from account_0 where id=1 |
   +------------------+------------------------------------+
   1 row in set (0.01 sec)
   
   mysql> preview select * from account where id=2;
   +------------------+------------------------------------+
   | data_source_name | actual_sql                         |
   +------------------+------------------------------------+
   | ds_0             | select * from account_1 where id=2 |
   +------------------+------------------------------------+
   1 row in set (0.00 sec)
   
   ```
   From the above preview result, it can be seen that the data with `id=1` is 
stored in `ds_1.account_0`, and the data with `id=2` is stored in 
`ds_0.account_1`.
   
   3.Perform concurrent operations in multiple threads, enable the `sql-show` 
of the proxy, and observe whether the routing result logs match the 
expectations.
   ```java
   @Test
       public void testInline() throws Exception {
           int threadCount = 2;
           ExecutorService executorService = 
Executors.newFixedThreadPool(threadCount);
           List<Future> futures = new ArrayList<>(threadCount);
           DataSource dataSource = getProxyDataSource();
           {
               Future<Boolean> future = executorService.submit(() -> {
                   Connection connection = dataSource.getConnection();
                   for (int j = 0; j < 20; j++) {
                       executeWithLog(connection, "UPDATE account SET balance = 
balance - 1 WHERE id = 1");
                       executeWithLog(connection, "UPDATE account SET balance = 
balance + 1 WHERE id = 2");
                   }
                   return null;
               });
               futures.add(future);
           }
           {
               Future<Boolean> future = executorService.submit(() -> {
                   Connection connection = dataSource.getConnection();
                   for (int j = 0; j < 20; j++) {
                       executeWithLog(connection, "UPDATE account SET balance = 
balance + 1 WHERE id = 2");
                       executeWithLog(connection, "UPDATE account SET balance = 
balance - 1 WHERE id = 1");
                   }
                   return null;
               });
               futures.add(future);
           }
           try {
               for (Future future : futures) {
                   future.get();
               }
           } catch (InterruptedException | ExecutionException e) {
               e.printStackTrace();
           }
       }
   ```
   
   4.Proxy sql-show log is as  is as follows;
   I have noticed that some of the routing results do not match the 
expectations:
   `[INFO ] 2024-02-26 10:31:18.796 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_0 SET balance = 
balance - 1 WHERE id = 1`
   `[INFO ] 2024-02-26 10:31:18.739 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_1 SET balance = 
balance + 1 WHERE id = 2`
   
   ```log
   [INFO ] 2024-02-26 10:31:18.738 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.739 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_0 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.739 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.739 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_1 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.753 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.753 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.753 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_0 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.753 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_0 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.760 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.760 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.760 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_0 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.760 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_0 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.767 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.767 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.767 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_0 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.767 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_0 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.772 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.772 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.773 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_0 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.773 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_0 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.784 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.784 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.784 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.784 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_0 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.790 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.790 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.792 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.792 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_0 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.796 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.796 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.796 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_0 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.796 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_0 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.800 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.801 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.801 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.801 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.806 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.806 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.806 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_1 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.806 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_0 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.811 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.811 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.811 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.811 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.817 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.817 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_0 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.817 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.817 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_1 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.822 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.822 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.822 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.822 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.828 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.828 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.828 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.828 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.833 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.833 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.833 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_1 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.833 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_1 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.839 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.839 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_1 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.839 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.839 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_1 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.844 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.844 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.844 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_0 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.844 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_0 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.850 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.850 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.850 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_0 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.850 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_0 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.855 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.855 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.855 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_1 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.855 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_1 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.862 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.862 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.862 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_1 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.862 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_1 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.870 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.871 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.870 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.871 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.877 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.877 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.877 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_0 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.877 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_0 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.882 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.882 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.882 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.882 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.888 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.888 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.888 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.888 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.894 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.894 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.894 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.894 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.899 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.899 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.899 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_0 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.899 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_0 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.903 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.903 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.903 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.903 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.908 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.908 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.908 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.908 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.914 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.914 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.914 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_0 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.914 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_0 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.919 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.919 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.920 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.920 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.925 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.925 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.925 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_0 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.925 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_0 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.931 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.931 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.931 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.931 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.936 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.936 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.936 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_1 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.936 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_0 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.943 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.943 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.943 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_0 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.943 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_0 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.949 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.949 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.949 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_0 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.949 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_0 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.956 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.956 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.956 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.956 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.963 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.963 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.964 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_0 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.964 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_0 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.971 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.971 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.971 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.971 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_1 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.977 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.977 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.977 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_0 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.977 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_0 ::: UPDATE account_0 SET balance = 
balance - 1 WHERE id = 1
   [INFO ] 2024-02-26 10:31:18.983 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance + 1 WHERE 
id = 2
   [INFO ] 2024-02-26 10:31:18.983 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Logic SQL: UPDATE account SET balance = balance - 1 WHERE 
id = 1
   [INFO ] 2024-02-26 10:31:18.983 [ShardingSphere-Command-1] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_0 SET balance = 
balance + 1 WHERE id = 2
   [INFO ] 2024-02-26 10:31:18.983 [ShardingSphere-Command-0] 
ShardingSphere-SQL - Actual SQL: ds_1 ::: UPDATE account_0 SET balance = 
balance - 1 WHERE id = 1
   ```
   ### 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]

Reply via email to