Fixed Issues in Phoenix
Review the list of Phoenix issues that are resolved in Cloudera Runtime 7.2.17.
- CDPD-26858: Phoenix timezone handling to be fixed
- Phoenix now supports the
phoenix.query.applyTimeZoneDisplacement
property, which enables a more consistent and standards-compliant handling of java.sql.Date/Time/Timestamp types. The property is set as FALSE by default for backwards compatibility, and it must be set to TRUE explicitly for the new behaviour. Using the java.time.LocalDate/LocalTime types are also directly supported according to the JDBC 4.2 specifications.
Apache Patch Information
- PHOENIX-5066
Calcite Avatica new features:
- [CALCITE-4536] Add support for BIT data type (Zeng Rui)
Calcite Avatica improvements:
- CALCITE-5581 Implement Basic client side load balancing in Avatica Driver
- CALCITE-5327 Make SSL key-store type configurable
- CALCITE-5218 Verify HTTP client class before instantiating it
- CALCITE-4877 Make the exception information more explicit for instantiate plugin.
- CALCITE-4757 Allow columns of type Null in ResultSet (NobiGo)
- CALCITE-3401 Assume empty keystore passwords by default (Istvan Toth, Alessandro Solimando)
Calcite Avatica bugfixes:
- CALCITE-4752 PreparedStatement#SetObject() fails for BigDecimal values
- CALCITE-4971 Update httpclient and httpcore to latest 5.1 release
- CALCITE-5009 Transparent JDBC connection re-creation may lead to data loss
- CALCITE-4962 Protobuf debug does not show request/response type
- CALCITE-4152 Upgrade Avatica to use the configurable SPNEGO Jetty implementation
- CALCITE-4828 Standard exception console output
- CALCITE-4837 FLOOR/CEIL for DECADE, CENTURY, MILLENIUM return wrong results
- CALCITE-4573 NullPointerException while fetching from a column of type ARRAY
- CALCITE-4602 ClassCastException retrieving from ARRAY that has mixed INTEGER and DECIMAL elements
- CALCITE-4600 ClassCastException retrieving from an ARRAY that has DATE, TIME or TIMESTAMP elements
- CALCITE-4767 Add Quoting.BACK_TICK_BACKSLASH (Jack Scott)
- CALCITE-4752 PreparedStatement#SetObject() fails for BigDecimal values
- CALCITE-4676 Avatica client leaks TCP connections
- CALCITE-4503 Order of fields in records should follow that of the SQL types (Alessandro Solimando)
- CALCITE-3163 Incorrect mapping of JDBC float/real array types to Java types (Ralph Gasser)
- CALCITE-3881 DateTimeUtils.addMonths yields incorrect results (Zhenghua Gao)
- CALCITE-4476 DateTimeUtils.timeStringToUnixDate may produce wrong time (Vladimir Ozerov)
- CALCITE-4181 Avatica throws exception when select field is a List<Object> (Kent Nguyen)
- CALCITE-4379 Meta.Frame created with java float values in rows hits a ClassCastException in toProto()
- CALCITE-4196 Consume all data from client before replying with HTTP/401
- CALCITE-4138 Metadata operations via Avatica turn empty string args to null
Phoenix improvements:
- PHOENIX-6944 Randomize mapper task ordering for Index MR tools
- PHOENIX-6873 Use cached Connection in IndexHalfStoreFileReaderGenerator
- PHOENIX-6395 Reusing Connection instance object instead of creating everytime in PhoenixAccessController class (addendum: don't close the shared Connection on stop)
- PHOENIX-6881 Implement the applicable Date/Time features from JDBC 4.2
- PHOENIX-6834 Use Pooled HConnection for Server Side Upsert Select
Phoenix bugfixes:
- PHOENIX-6969 Projection bug in hinted uncovered index query with order by
- PHOENIX-6953 Creating indexes on a table with old indexing leads to inconsistent co-processors
- PHOENIX-6874 Support older HBase versions with broken ShortCircuitConnection
- PHOENIX-6872 Use ServerUtil.getConnection() in UngroupedAggregateRegionScanner
- PHOENIX-6395 Reusing Connection instance object instead of creating everytime in PhoenixAccessController class
- PHOENIX-5066 The TimeZone is incorrectly used during writing or reading data
- PHOENIX-6823 calling Joda-based round() function on temporal PK field causes division by zero error
- PHOENIX-6889 Improve extraction of ENCODED_QUALIFIERs
- PHOENIX-6720 CREATE TABLE can't recreate column encoded tables that had columns dropped
- PHOENIX-6855 Upgrade from 4.7 to 5+ fails if any of the local indexes exist.
- PHOENIX-6818 Remove dependency on the i18n-util library to fix CVE
- PHOENIX-6841 Depend on omid-codahale-metrics
- PHOENIX-5894 Table versus Table Full Outer join on Salted tables not … (#1395)
Phoenix connectors bugfixes:
- PHOENIX-6667: Spark3 connector requires that all columns are specified when writing
Phoenix Omid improvements:
- OMID-239: OMID TLS support (#129)
Phoenix Query Server improvements:
- PHOENIX-6810 Make SSL key-store type configurable
Phoenix Query Server bugfixes:
- PHOENIX-6908 KerberosName$NoMatchingRule exception in QueryServer.PhoenixRemoteUserExtractor
- PHOENIX-6704 sqlline-thin.py doesn't work woth python3
- PHOENIX-6762 Phoenix QueryServer cannot run correctly with python 3.8+