Skip to content

Roadmap 2021 #537

@zhicwu

Description

@zhicwu

0.2.x

Focus on bug fixes, small enhancements, and backward compatibility...
  • 0.2.5
    • switch to github actions for consistency
    • use testcontainer for integration test
  • 0.2.6
    • enable retry for idempotent queries(as workaround of host failed to respond)
    • new sql parser
    • use basic auth instead of query parameters for authentication
  • 0.2.7 - TBD(in case any critical issue)

0.3.x

Focus on new features, code clean up, and abstraction which may break existing interfaces/APIs...

Previous releases...
  • 0.3.0
    • BREAKING CHANGE: drop JDK7 support
    • BREAKING CHANGE: remove Guava dependency (UnsignedLong is removed, please use long(faster) or BigInteger(slower) instead for UInt64)
      ~~Note: shaded jar is now ~3.65MB(was 7.19MB in 0.2.6, and 5.68MB in 0.2.4).~~
    • JDBC 4.2 support
    • more data types (including aliases) like IPv4, IPv6, DateTime64, *Int128, *Int256, Decimal256 and Map
      Note: UInt128 will be supported soon on server side.
    • RoaringBitmap support - please use latest RoaringBitmap
    • restructure code (clickhouse-jdbc for JDBC compliance, and clickhouse-*client for efficiency and consistent behaviors like any other clickhouse client, see Proposal of restructuring code (RFC) #570)
    • performance test (clickhouse-jdbc vs. clickhouse4j vs. clickhouse-native-jdbc vs. mariadb-java-client)
    • CI enhancement: checkstyle, spellcheck & SonarCloud
  • 0.3.1
Ongoing releases...
  • 0.3.2
    • JPMS support along with multi-release jars
       19M	target/clickhouse-jdbc-0.3.2-SNAPSHOT-all.jar
       18M	target/clickhouse-jdbc-0.3.2-SNAPSHOT-grpc.jar
      664K	target/clickhouse-jdbc-0.3.2-SNAPSHOT-http.jar
      960K	target/clickhouse-jdbc-0.3.2-SNAPSHOT-javadoc.jar
      2.7M	target/clickhouse-jdbc-0.3.2-SNAPSHOT-shaded.jar
      428K	target/clickhouse-jdbc-0.3.2-SNAPSHOT.jar
      
    • introduce abstract module clickhouse-client, experimental clickhouse-grpc-client, and HttpURLConnection-based clickhouse-http-client
    • named parameter support(only available in clickhouse-client)
    • support RowBinary* format and more data types(Geo types, Date32, Tuple, Nested, mixed use of Array/Tuple/Map etc.)
    • new JDBC driver(com.clickhouse.jdbc.ClickHouseDriver) built on top of clickhouse-client
      Note: both old and new drivers will co-exist in 0.3.x series and the old one will be removed starting from 0.4.
    • show schema of remote datasources(when JDBC bridge is available)
    • fix timezone and DateTime64 related issues
    • adaptive integration test against local testcontainer or a remote server, and categorize cases under different groups
    • replace jackson-databind and jackson-core by gson
    • enhance benchmarks to cover most JDBC drivers and data types
    • alternative implementation for http(s) protocol(JDK 11 HttpClient)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions