glon edited a comment on issue #10063:
URL: 
https://github.com/apache/shardingsphere/issues/10063#issuecomment-819180886


   1. We've set `sql.show = true`
   
   When executing `select * from city`, could not get the answer, and the 
selected database will lost, like :
   ```sql
   sharding_user@localhost:6033 [sharding_db]>select * from city;
   Query OK, 0 rows affected, 25971 warnings (0.01 sec)
   
   sharding_user@localhost:6033 [(none)]>
   ```
   
   Here's the logs/stdout.log recording when executing the SQL :
   ```
   [INFO ] 10:37:36.364 [ShardingSphere-Command-4] ShardingSphere-SQL - Logic 
SQL: select * from city
   [INFO ] 10:37:36.364 [ShardingSphere-Command-4] ShardingSphere-SQL - 
SQLStatement: 
SelectStatementContext(super=CommonSQLStatementContext(sqlStatement=org.apache.shardingsphere.sql.parser.sql.statement.dml.SelectStatement@4c958aed,
 
tablesContext=org.apache.shardingsphere.sql.parser.binder.segment.table.TablesContext@4365ad34),
 
tablesContext=org.apache.shardingsphere.sql.parser.binder.segment.table.TablesContext@4365ad34,
 projectionsContext=ProjectionsContext(startIndex=7, stopIndex=7, 
distinctRow=false, projections=[ShorthandProjection(owner=Optional.empty, 
actualColumns=[])]), 
groupByContext=org.apache.shardingsphere.sql.parser.binder.segment.select.groupby.GroupByContext@25372307,
 
orderByContext=org.apache.shardingsphere.sql.parser.binder.segment.select.orderby.OrderByContext@35e56d5a,
 
paginationContext=org.apache.shardingsphere.sql.parser.binder.segment.select.pagination.PaginationContext@55474be9,
 containsSubquery=false)
   [INFO ] 10:37:36.364 [ShardingSphere-Command-4] ShardingSphere-SQL - Actual 
SQL: ds_0 ::: select * from city
   [WARN ] 10:37:36.364 [ShardingSphere-Command-4] 
com.zaxxer.hikari.pool.PoolBase - HikariPool-1 - Failed to validate connection 
com.mysql.jdbc.JDBC4Connection@3ba54078 (No operations allowed after connection 
closed.). Possibly consider using a shorter maxLifetime value.
   [ERROR] 10:37:36.500 [ShardingSphere-Command-4] 
o.a.s.s.f.c.CommandExecutorTask - Exception occur: 
   java.lang.NullPointerException: null
        at com.mysql.jdbc.ResultSetImpl.next(ResultSetImpl.java:6300)
        at 
com.zaxxer.hikari.pool.HikariProxyResultSet.next(HikariProxyResultSet.java)
        at 
org.apache.shardingsphere.sharding.execute.sql.execute.result.StreamQueryResult.next(StreamQueryResult.java:50)
        at 
org.apache.shardingsphere.sharding.merge.dql.iterator.IteratorStreamMergedResult.next(IteratorStreamMergedResult.java:41)
        at 
org.apache.shardingsphere.shardingproxy.backend.communication.jdbc.JDBCDatabaseCommunicationEngine.next(JDBCDatabaseCommunicationEngine.java:138)
        at 
org.apache.shardingsphere.shardingproxy.backend.text.query.QueryBackendHandler.next(QueryBackendHandler.java:57)
        at 
org.apache.shardingsphere.shardingproxy.frontend.mysql.command.query.text.query.MySQLComQueryPacketExecutor.next(MySQLComQueryPacketExecutor.java:135)
        at 
org.apache.shardingsphere.shardingproxy.frontend.mysql.command.MySQLCommandExecuteEngine.writeQueryData(MySQLCommandExecuteEngine.java:81)
        at 
org.apache.shardingsphere.shardingproxy.frontend.command.CommandExecutorTask.executeCommand(CommandExecutorTask.java:101)
        at 
org.apache.shardingsphere.shardingproxy.frontend.command.CommandExecutorTask.run(CommandExecutorTask.java:71)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
   [INFO ] 10:37:36.501 [ShardingSphere-Command-5] ShardingSphere-SQL - Logic 
SQL: SELECT DATABASE()
   [INFO ] 10:37:36.501 [ShardingSphere-Command-5] ShardingSphere-SQL - 
SQLStatement: 
SelectStatementContext(super=CommonSQLStatementContext(sqlStatement=org.apache.shardingsphere.sql.parser.sql.statement.dml.SelectStatement@46fe6fd1,
 
tablesContext=org.apache.shardingsphere.sql.parser.binder.segment.table.TablesContext@18a691b4),
 
tablesContext=org.apache.shardingsphere.sql.parser.binder.segment.table.TablesContext@18a691b4,
 projectionsContext=ProjectionsContext(startIndex=7, stopIndex=16, 
distinctRow=false, projections=[ExpressionProjection(expression=DATABASE(), 
alias=Optional.empty)]), 
groupByContext=org.apache.shardingsphere.sql.parser.binder.segment.select.groupby.GroupByContext@7660743e,
 
orderByContext=org.apache.shardingsphere.sql.parser.binder.segment.select.orderby.OrderByContext@4a1ab3ef,
 
paginationContext=org.apache.shardingsphere.sql.parser.binder.segment.select.pagination.PaginationContext@7fafcd9a,
 containsSubquery=false)
   [INFO ] 10:37:36.501 [ShardingSphere-Command-5] ShardingSphere-SQL - Actual 
SQL: ds_1 ::: SELECT DATABASE()
   [WARN ] 10:37:36.501 [ShardingSphere-Command-5] 
com.zaxxer.hikari.pool.PoolBase - HikariPool-2 - Failed to validate connection 
com.mysql.jdbc.JDBC4Connection@5328c8ea (No operations allowed after connection 
closed.). Possibly consider using a shorter maxLifetime value.
   ```
   
   server.yaml :
   ```
   authentication:
     users:
       root:
         password: root
       sharding:
         password: sharding
         authorizedSchemas: sharding_db
   
   props:
     max.connections.size.per.query: 9
     acceptor.size: 16  # The default value is available processors count * 2.
     executor.size: 16  # Infinite by default.
     proxy.frontend.flush.threshold: 128  # The default value is 128.
     proxy.transaction.type: LOCAL
     proxy.opentracing.enabled: false
     proxy.hint.enabled: false
     query.with.cipher.column: true
     sql.show: true
     allow.range.query.with.inline.sharding: false
   ```
   
   2. SQL that specified fields like :
   `select id, name from city`, 
   `insert into city (id, name) values (...)[,(...)]`,
   `update city set name = xx where id = N`,
   `delete from city where id = N`,
   `truncate table city`,
   add column, add index  work well.
   
   otherwise, `insert into city values (...)[,(...)]` does not work well.
   
   3. Other broadcast tables  have the same problem, but sharding tables work 
well.
   
   ---
   
   For MySQL driver, we used `mysql-connector-java-5.1.49.jar`, downloaded from 
https://mvnrepository.com/artifact/mysql/mysql-connector-java 
   
   When we tried 8.0.*,  datetime item cannot return the right format, values 
contains 'T'.
   


-- 
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.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to