This shows you the differences between two versions of the page.
new [2017/09/10 21:39] dmtolpeko [HPL/SQL 0.3.31 - In Development] |
new [2017/09/22 19:51] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== What's New ====== | ||
- | Please check the Apache Hive repository for new changes: [[https://github.com/apache/hive/tree/master/hplsql]] | ||
- | |||
- | New HPL/SQL features: | ||
- | |||
- | ===== HPL/SQL 0.3.31 - In Development ===== | ||
- | |||
- | - [[summary|SUMMARY]] statement ([[https://issues.apache.org/jira/browse/HIVE-17253|HIVE-17253]]) | ||
- | - [[if|.IF]] statement ([[https://issues.apache.org/jira/browse/HIVE-13516|HIVE-13516]] Teradata BTEQ compatibility) | ||
- | - [[quit|.QUIT]] statement ([[https://issues.apache.org/jira/browse/HIVE-13516|HIVE-13516]] Teradata BTEQ compatibility) | ||
- | - [[errorcode|ERRORCODE]] built-in variable ([[https://issues.apache.org/jira/browse/HIVE-13516|HIVE-13516]] Teradata BTEQ compatibility) | ||
- | - COLLECT STATISTICS for columns statement parser (Teradata compatibility) | ||
- | - Supporting ${name} syntax for identifiers | ||
- | - CREATE TABLE AS SELECT | ||
- | - DELETE ALL to TRUNCATE TABLE conversion (Teradata compatibility) | ||
- | - FALLBACK option parser in CREATE TABLE (Teradata compatibility) | ||
- | - QUALIFY clause in SELECT statement (Teradata compatibility) | ||
- | - PRIMARY INDEX clause in CREATE TABLE (Teradata compatibility) | ||
- | - Subselect statement in expressions (Bug fix) | ||
- | - EXISTS clause in SELECT statement (Bug fix) | ||
- | - UPDATE FROM parser | ||
- | - INTERVAL SECOND parser | ||
- | - Calling a package procedure/function defined in INCLUDE file (Bug fix) | ||
- | - Casting STRING to INT, DECIMAL, FLOAT and DOUBLE ([[https://issues.apache.org/jira/browse/HIVE-13540|HIVE-13540]] Bug fix) | ||
- | - [[copy-from-local|COPY FROM LOCAL]] returns [[hostcode|HOSTCODE]] 2 when no files found to copy | ||
- | - If source is a directory in [[copy-from-local|COPY FROM LOCAL]], always treat target as a directory | ||
- | - Switching between connections (Bug fix) | ||
- | - STORED AS clause in CREATE TABLE for Hive (Parser fix) | ||
- | - WITH DEFAULT, WITH RESTRICT ON DROP, INDEX IN in CREATE TABLE parser (IBM DB2 compatibility) | ||
- | - [[copy-from-ftp|COPY FROM FTP]] lack of DIR option leads to NPE ([[https://issues.apache.org/jira/browse/HIVE-13721|HIVE-13721]] Bug fix) | ||
- | - [[for-range|FOR range]] - REVERSE behavior modified according Oracle PL/SQL [[https://issues.apache.org/jira/browse/HIVE-14382|HIVE-14382]] | ||
- | - CLI fails to exit after NPE using embedded connection [[https://issues.apache.org/jira/browse/HIVE-17024|HIVE-17024]] | ||
- | - hplsql.conn.convert.hiveconn seems to default to false, contrary to docs [[https://issues.apache.org/jira/browse/HIVE-17025|HIVE-17025]] | ||
- | - HPL/SQL requires single quotes for string literals, resulting in surprising behavior [[https://issues.apache.org/jira/browse/HIVE-17027|HIVE-17027]] | ||
- | - HPL/SQL function variable block is not initialized [[https://issues.apache.org/jira/browse/HIVE-17452|HIVE-17452]] | ||
- | - Casting strings to integers in HPL/SQL differs from Hive behavior [[https://issues.apache.org/jira/browse/HIVE-17028|HIVE-17028]] | ||
- | - HPL/SQL: Comparison if not null-safe [[https://issues.apache.org/jira/browse/HIVE-17029|HIVE-17029]] | ||
- | - HPL/SQL: Many cast operations are ignored without warning or notice [[https://issues.apache.org/jira/browse/HIVE-17030|HIVE-17030]] | ||
- | - HPL/SQL Addition/Subtraction only supported on integers, datetimes and intervals [[https://issues.apache.org/jira/browse/HIVE-17031|HIVE-17031]] | ||
- | - HPL/SQL Comparisons are only supported with strings and integers [[https://issues.apache.org/jira/browse/HIVE-17032|HIVE-17032]] | ||
- | |||
- | ===== HPL/SQL 0.3.17 - March 28, 2016 ===== | ||
- | |||
- | - [[copy-from-ftp|COPY FROM FTP]] statement | ||
- | - [[create-database|CREATE DATABASE]] statement | ||
- | - [[drop-database|DROP DATABASE]] statement | ||
- | - [[truncate|TRUNCATE]] statement | ||
- | - [[describe|DESCRIBE]] statement | ||
- | - [[insert-directory|INSERT DIRECTORY]] statement | ||
- | - [[replace|REPLACE]] function | ||
- | - [[now|NOW]] function | ||
- | - [[unix-timestamp|UNIX_TIMESTAMP]] function | ||
- | - [[from-unixtime|FROM_UNIXTIME]] function | ||
- | - [[plus#concatenate_two_strings|+ Operator]] to concatenate two strings | ||
- | - [[/data-types#data_type_conversion|INT(n) to INT]] data type conversion (MySQL compatibility) | ||
- | - [[/data-types#data_type_conversion|TEXT to STRING]] data type conversion (MySQL compatibility) | ||
- | - [[/data-types#data_type_conversion|INT2 to SMALLINT]] data type conversion (PostgreSQL compatibility) | ||
- | - [[/data-types#data_type_conversion|INT4 to INT]] data type conversion (PostgreSQL compatibility) | ||
- | - [[/data-types#data_type_conversion|INT8 to BIGINT]] data type conversion (PostgreSQL compatibility) | ||
- | - [[/interval|INTERVAL]] keyword in interval expressions | ||
- | - AUTO_INCREMENT, ENGINE, CHARSET, COMMENT clauses parser (MySQL compatibility) | ||
- | - BEGIN TRANSACTION and END TRANSACTION statements parser (Teradata compatibility) | ||
- | - ALTER TABLE ADD CONSTRAINT parser | ||
- | - WHERE clause in UPDATE clause of MERGE statement (Parser fix) | ||
- | - Allow expressions in PARTITION BY clause of window functions (Parser fix) | ||
- | - SET QUERY_BAND statement parser (Teradata compatibility) | ||
- | - ENABLE constraint keyword parser (Oracle compatibility) | ||
- | - Removing [dbo] schema when executing SQL (Microsoft SQL Server compatibility) | ||
- | - By default, not adding FROM [[configuration#hplsqldualtable|hplsql.dual.table]] to SELECT without FROM | ||
- | - INNER keyword is optional in join (Parser fix) | ||
- | - RAISE statement (Parser fix) | ||
- | - Variable declaration block in procedures and functions (Bug fix) | ||
- | - Subtraction ('-') operator (Bug fix) | ||
- | - Multiplication ('*') and division ('/') operators in SQL statements (Bug fix) | ||
- | - OVERWRITE keyword missed in INSERT statements (Bug fix) | ||
- | - PL/SQL-style stored procedure without parameters (Bug fix) | ||
- | - FOR cursor columns values (Bug fix) | ||
- | - EXCEPTION block in functions (Bug fix) | ||
- | ===== HPL/SQL 0.3.13 - October 30, 2015 ===== | ||
- | |||
- | - [[create-package|CREATE PACKAGE]] statement | ||
- | - [[type-attribute|%TYPE]] attribute | ||
- | - [[rowtype-attribute|%ROWTYPE]] attribute | ||
- | - [[part-count|PART_COUNT]] function | ||
- | - [[part-count-by|PART_COUNT_BY]] function | ||
- | - [[data-types|PLS_INTEGER]], [[data-types|BINARY_INTEGER]] and [[data-types|SIMPLE_INTEGER]] data types | ||
- | - [[data-types|REAL]], [[data-types|FLOAT]] and [[data-types|DOUBLE]] data types | ||
- | - [[data-types|BINARY_FLOAT]] and [[data-types|BINARY_DOUBLE]] data types | ||
- | - [[data-types|SIMPLE_FLOAT]] and [[data-types|SIMPLE_DOUBLE]] data types | ||
- | - [[data-types|BOOL]] and [[data-types|BOOLEAN]] data types | ||
- | - [[cmp|CMP]] statement to compare data in tables | ||
- | - [[copy|COPY TO HDFS]] statement to copy JDBC query results to HDFS | ||
- | - [[null|NULL]] statement (no operation) | ||
- | - TRUE and FALSE boolean literals | ||
- | - CONSTANT declarations | ||
- | - Support expressions in [[include|INCLUDE]] statement | ||
- | - BYTE and CHAR column length semantics (Parser) | ||
- | - FOREIGN KEY and UNIQUE constraint in CREATE TABLE (Parser) | ||
- | - Oracle storage clause in CREATE TABLE (Parser) | ||
- | - NOT NULL constraint in variable declaration (Parser) | ||
- | - XML data type (Parser) | ||
- | - Calling stored procedures without parameters (Bug fix) | ||
- | - AS alias in SELECT list (Bug fix) | ||
- | - Subselect in FROM clause (Bug fix) | ||
- | - Multiplication * and division / operators for integers (Bug fix) | ||
- | - NOT boolean expression (Bug fix) | ||
- | - Invoke built-in functions in lower case (Bug fix) | ||
- | - Compare DECIMAL values, DECIMAL and integer values (Bug fix) | ||
- | - NUMBER data type (Bug fix) | ||
- | - Variable scope when calling functions or procedures (Bug fix) | ||
- | - Using parameters in JDBC connection URL to specify advanced options such as Kerberos authentication (Bug fix) | ||
- | ===== HPL/SQL 0.3.11 - July 30, 2015 ===== | ||
- | |||
- | - [[data-types|SYS_REFCURSOR]] cursor variable | ||
- | - [[cursor-attributes|%ISOPEN, %FOUND and %NOTFOUND]] cursor attributes | ||
- | - Named parameters in procedure call | ||
- | - SELECT @var = col, ... FROM assignment syntax | ||
- | - [[allocate-cursor|ALLOCATE CURSOR]] statement | ||
- | - [[associate-locator|ASSOCIATE RESULT SET LOCATOR]] statement | ||
- | - [[set-session#current-schema|SET CURRENT SCHEMA]] statement | ||
- | - [[current-user|CURRENT_USER]] function | ||
- | - [[current-user|CURRENT USER]] function | ||
- | - [[instr|INSTR]] function | ||
- | - [[substring|SUBSTRING(str FROM start FOR len)]] function | ||
- | - [[user|USER]] function | ||
- | - [[data-types#data-type-conversion|VARCHAR(MAX) to STRING]] data type conversion | ||
- | - [[data-types#data-type-conversion|DATETIME and SMALLDATETIME to TIMESTAMP]] data type conversion | ||
- | - [[data-types#data-type-conversion|NUMERIC to DECIMAL]] data type conversion | ||
- | - [[data-types#data-type-conversion|NCHAR and NVARCHAR to STRING]] data type conversion | ||
- | - [[data-types#data-type-conversion|BIT to TINYINT]] data type conversion | ||
- | - [[conversion#language-elements-and-operators|Identifier]] conversion ("" and [] to ``) | ||
- | - UPDATE ELSE INSERT statement parser (UPSERT) | ||
- | - LIKE, RLIKE and REGEXP parser | ||
- | - CUME_DIST function parser | ||
- | - CHARACTER SET data type attribute | ||
- | - CASESPECIFIC data type attribute | ||
- | - DYNAMIC RESULT SETS clause parser in CREATE PROCEDURE | ||
- | - TITLE 'alias' clause parser in SELECT | ||
- | - WITH RETURN TO CALLER/CLIENT clause parser in DECLARE CURSOR | ||
- | - IDENTITY clause parser | ||
- | - SET ANSI_NULLS, ANSI_PADDING, NOCOUNT, QUOTED_IDENTIFIER and XACT_ABORT parser | ||
- | - OPEN cursor FOR SELECT (Bug fix) | ||
- | - SELECT INTO a DECIMAL, BIGINT, SMALLINT or TINYINT variable (Bug fix) | ||
- | - NULL in +/- operations (Bug fix) | ||
- | - Initialize missing parameters to NULL in -main procedure call (Bug fix) | ||
- | - Calling stored procedure without parameters (Bug fix) | ||
- | - Do not throw NOT FOUND exception in FETCH statement (Bug fix) | ||
- | - Division operator for integer values (Bug fix) | ||
- | - Assign an integer value to decimal variable (Bug fix) | ||
- | - Catch exceptions thrown during expression evaluation (Bug fix) | ||
- | ===== HPL/SQL 0.3.7 - May 19, 2015 ===== | ||
- | |||
- | - [[copy|COPY]] statement | ||
- | - [[copy-from-local|COPY FROM LOCAL]] statement | ||
- | - [[assign#assignment-from-a-select-statement|SET v = (SELECT c FROM ...)]] assignment | ||
- | - [[configuration#hplsqlconndb2conn|hplsql.conn.db2conn]] option | ||
- | - [[configuration#hplsqlconntdconn|hplsql.conn.tdconn]] option | ||
- | - DATE data type | ||
- | - TIMESTAMP data type | ||
- | - CURRENT_DATE, CURRENT DATE to TO_DATE(FROM_UNIXTIME(UNIX_TIMESTAMP())) conversion in executable SQL for Hive | ||
- | - CURRENT_TIMESTAMP, CURRENT TIMESTAMP to FROM_UNIXTIME(UNIX_TIMESTAMP()) conversion in executable SQL for Hive | ||
- | - TOP //n// to LIMIT //n// conversion in SELECT statement for Hive | ||
- | - LIMIT clause in SELECT | ||
- | - UPDATE statement parser | ||
- | - DELETE statement parser | ||
- | - MERGE statement parser | ||
- | - Common table expression (CTE) parser | ||
- | - ROW FORMAT DELIMITED, FIELDS TERMINATED, LINES TERMINATED clauses for Hive | ||
- | - Default values parser in procedure parameters | ||
- | - LANGUAGE SQL clause in CREATE PROCEDURE | ||
- | - SQL SECURITY clause in CREATE PROCEDURE | ||
- | - Procedure label in CREATE PROCEDURE | ||
- | - WITH UR, RR, RS, CS clause in SELECT | ||
- | - CREATE INDEX parser | ||
- | - GRANT EXECUTE ON PROCEDURE parser | ||
- | - #, @ and / characters can be used as the statement terminators | ||
- | - CASE expressions in SQL statements (Bug fix) | ||
- | - BETWEEN clause in boolean expressions and SQL statements (Bug fix) | ||
- | - IS NOT NULL clause in boolean expressions and SQL statements (Bug fix) | ||
- | - NOT IN clause in SQL statements (Bug fix) | ||
- | - GROUP BY parser (Bug fix) | ||
- | - ORDER BY parser (Bug fix) | ||
- | - Windows-style file path parser (Bug fix) | ||
- | ===== HPL/SQL 0.3.1 - April 30, 2015 ===== | ||
- | |||
- | - [[udf|Hive UDF]] to run HPL/SQL scripts from Hive CLI queries | ||
- | - Automatically put functions referenced in Hive queries to Distributed Cache, register [[udf|UDF]] and modify SQL statements | ||
- | - [[connections|Multiple connections]] to different systems from a single script | ||
- | - [[activity_count|ACTIVITY_COUNT]] built-in variable | ||
- | - [[concat|CONCAT]] function | ||
- | - [[decode|DECODE]] function | ||
- | - [[to-char|TO_CHAR]] function | ||
- | - [[to-timestamp|TO_TIMESTAMP]] function | ||
- | - [[call|CALL]] statement | ||
- | - [[create-function|CREATE FUNCTION]] statement | ||
- | - [[create-local-temporary-table|CREATE LOCAL TEMPORARY TABLE]] statement | ||
- | - [[create-procedure|CREATE PROCEDURE]] statement | ||
- | - [[create-volatile-table|CREATE VOLATILE TABLE]] statement | ||
- | - [[declare-condition|DECLARE CONDITION]] statement | ||
- | - [[declare-handler|DECLARE HANDLER]] statement - user-defined condition | ||
- | - [[include|INCLUDE]] statement | ||
- | - [[map-object|MAP OBJECT]] statement | ||
- | - [[signal|SIGNAL]] statement | ||
- | - [[configuration##hplsqlrc-file|.hplsqlrc]] configuration file | ||
- | - [[twopipes||| operator to CONCAT]] function conversion in SQL queries | ||
- | - Parser for column list in [[insert|INSERT]] statement | ||
- | - [[configuration#hplsqlconnhiveconn|hplsql.conn.hiveconn]] option | ||
- | - [[configuration#hplsqlconninithiveconn|hplsql.conn.init.hiveconn]] option | ||
- | - [[configuration#hplsqlconnconverthiveconn|hplsql.conn.convert.hiveconn]] option | ||
- | - [[configuration#hplsqlconnhive2conn|hplsql.conn.hive2conn]] option | ||
- | - [[configuration#hplsqlconninithive2conn|hplsql.conn.init.hive2conn]] option | ||
- | - [[configuration#hplsqlconnconverthive2conn|hplsql.conn.convert.hive2conn]] option | ||
- | - [[configuration#hplsqlconn-connection_profile|hplsql.conn.<connection_profile>]] option | ||
- | - [[configuration#hplsqlconninit-connection_profile|hplsql.conn.init.<connection_profile>]] option | ||
- | - [[configuration#hplsqlconnmysqlconn|hplsql.conn.mysqlconn]] option | ||
- | - [[assign|SET]] statement - assigning NULL to a variable (Bug fix) | ||
- | - Boolean expressions and predicates (Bug fix) | ||
- | ===== HPL/SQL 0.3 - March 31, 2015 ===== | ||
- | |||
- | - [[timestamp-literal|TIMESTAMP]] literal | ||
- | - [[interval|INTERVAL]] expressions | ||
- | - [[sqlstate|SQLSTATE]] built-in variable | ||
- | - [[cast|CAST]] function | ||
- | - [[char|CHAR]] function | ||
- | - [[coalesce|COALESCE]] function | ||
- | - [[current-timestamp|CURRENT_TIMESTAMP]] function | ||
- | - [[date|DATE]] function | ||
- | - [[len|LEN]] function | ||
- | - [[length|LENGTH]] function | ||
- | - [[lower|LOWER]] function | ||
- | - [[sysdate|SYSDATE]] function | ||
- | - [[timestamp-iso|TIMESTAMP_ISO]] function | ||
- | - [[trim|TRIM]] function | ||
- | - [[upper|UPPER]] function | ||
- | - [[create-table|CREATE TABLE]] statement | ||
- | - [[declare-temporary-table|DECLARE TEMPORARY TABLE]] statement | ||
- | - [[drop-table|DROP TABLE]] statement | ||
- | - [[for-cursor|FOR cursor]] statement | ||
- | - [[select|FROM TABLE (VALUES ...)]] in SELECT statement | ||
- | - [[insert|INSERT]] statement | ||
- | - [[get-diagnostics|GET DIAGNOSTICS EXCEPTION]] statement | ||
- | - [[resignal|RESIGNAL]] statement | ||
- | - [[values-into|VALUES INTO]] statement | ||
- | - [[configuration#hplsqlconnconvertdefault|hplsql.conn.convert.default]] option | ||
- | - [[configuration#hplsqldualtable|hplsql.dual.table]] option | ||
- | - [[configuration#hplsqlinsertvalues|hplsql.insert.values]] option | ||
- | - [[configuration#hplsqltemptables|hplsql.temp.tables]] option | ||
- | - [[configuration#hplsqltemptablesschema|hplsql.temp.tables.schema]] option | ||
- | - [[configuration#hplsqltemptableslocation|hplsql.temp.tables.location]] option | ||
- | - [[data-types#data-type-conversion|VARCHAR2 to STRING]] conversion in CREATE TABLE | ||
- | - [[data-types#data-type-conversion|NUMBER to DECIMAL]] conversion in CREATE TABLE | ||
- | ===== HPL/SQL 0.1 - February 27, 2015 ===== | ||
- | |||
- | * Initial release |