@shenli shenli released this Apr 27, 2018 · 177 commits to release-2.0 since this release

Assets 2
  • SQL Optimizer
    • Use more compact data structure to reduce the memory usage of statistics information
    • Speed up the loading statistics information when starting a tidb-server process
    • Support updating statistics information dynamically [experimental]
    • Optimize the cost model to provide more accurate query cost evaluation
    • Use Count-Min Sketch to estimate the cost of point queries more accurately
    • Support analyzing more complex conditions to make full use of indexes
    • Support manually specifying the Join order using the STRAIGHT_JOIN syntax
    • Use the Stream Aggregation operator when the GROUP BY clause is empty to improve the performance
    • Support using indexes for the MAX/MIN function
    • Optimize the processing algorithms for correlated subqueries to support decorrelating more types of correlated subqueries and transform them to Left Outer Join
    • Extend IndexLookupJoin to be used in matching the index prefix
  • SQL Execution Engine
    • Refactor all operators using the Chunk architecture, improve the execution performance of analytical queries, and reduce memory usage.There is a significant improvement in the TPC-H benchmark result.
    • Support the Streaming Aggregation operators pushdown
    • Optimize the Insert Into Ignore statement to improve the performance by over 10 times
    • Optimize the Insert On Duplicate Key Update statement to improve the performance by over 10 times
    • Optimize Load Data to improve the performance by over 10 times
    • Push down more data types and functions to TiKV
    • Support computing the memory usage of physical operators, and specifying the processing behavior in the configuration file and system variables when the memory usage exceeds the threshold
    • Support limiting the memory usage by a single SQL statement to reduce the risk of OOM
    • Support using implicit RowID in CRUD operations
    • Improve the performance of point queries
  • Server
    • Support the Proxy Protocol
    • Add more monitoring metrics and refine the log
    • Support validating the configuration files
    • Support obtaining the information of TiDB parameters through HTTP API
    • Resolve Lock in the Batch mode to speed up garbage collection
    • Support multi-threaded garbage collection
    • Support TLS
  • Compatibility
    • Support more MySQL syntaxes
    • Support modifying the lower_case_table_names system variable in the configuration file to support the OGG data synchronization tool
    • Improve compatibility with the Navicat management tool
    • Support displaying the table creating time in Information_Schema
    • Fix the issue that the return types of some functions/expressions differ from MySQL
    • Improve compatibility with JDBC
    • Support more SQL Modes
  • DDL
    • Optimize the Add Index operation to greatly improve the execution speed in some scenarios
    • Attach a lower priority to the Add Index operation to reduce the impact on online business
    • Output more detailed status information of the DDL jobs in Admin Show DDL Jobs
    • Support querying the original statements of currently running DDL jobs using Admin Show DDL Job Queries JobID
    • Support recovering the index data using Admin Recover Index for disaster recovery
    • Support modifying Table Options using the Alter statement