README
     Progress(R) DataDirect(R)
     Progress DataDirect for ODBC for Apache Hive Wire Protocol Driver 

     Windows Platforms (32- and 64-bit)
     8.0.1 Release   
     May 16, 2019

***********************************************************************
Copyright (c) 2019 Progress Software Corporation and/or its 
subsidiaries or affiliates. All Rights Reserved.  
***********************************************************************

This README file contains information for Progress(R) DataDirect(R)  
for ODBC Apache Hive(TM) Wire Protocol Driver. 

This README file contains information not included in the PROGRESS 
DATADIRECT FOR ODBC APACHE HIVE USER'S GUIDE AND REFERENCE.



CONTENTS

Driver Requirements
Installation Directory
Changes Since 8.0.1 GA
Changes for 8.0.1 GA 
Changes for 8.0.0 GA   
Driver WorkAround Options
Notes, Known Problems, and Restrictions
Documentation
Installed Files for the 32-bit Driver
Installed Files for the 64-bit Driver 



    Driver Requirements

* IMPORTANT: You must have the Microsoft Data Access Components (MDAC) 
  installed to use this product.
 
  - For 32-bit Windows systems, version 2.6 or higher is required.
  - For 64-bit Windows systems, version 2.8 or higher is required.

  Depending on the version of your Windows operating system, these 
  components may already be installed. You can download a utility that 
  determines whether MDAC is installed and its version from the following
  Microsoft site:

  http://msdn.microsoft.com/en-us/data/aa937730.aspx

  You can also download MDAC from the same site.
    
	
	    Installation Directory 

* The default installation directory for the 32-bit driver on a 64-bit 
  system is:

  C:\Program Files (x86)\Progress\DataDirect\ODBC_80

* The default installation directory for all other installations is:

  C:\Program Files\Progress\DataDirect\ODBC_80
  
  
      Changes Since 8.0.1 GA
	
Certifications 
-------------
* Certified with Hive 3.1 	
  (driver version 08.01.0242 (B0400, U0272))
	
Hive ACID Support
-----------------
The driver has been enhanced to support ACID operations for Inserts, Updates, 
and Deletes on servers that are configured to use them.

SSL Enhancement (1.0.2r) 
------------------------
The default OpenSSL library version has been updated to 1.0.2r, which fixes the 
following security vulnerabilities:
 * 0-byte record padding oracle (CVE-2019-1559)
 * Microarchitecture timing vulnerability in ECC scalar 
   multiplication (CVE-2018-5407)
 * Timing vulnerability in DSA signature generation (CVE-2018-0734)
 * Client DoS due to large DH parameter (CVE-2018-0732)
 * Cache timing vulnerability in RSA Key Generation (CVE-2018-0737)
 * Constructed ASN.1 types with a recursive definition could exceed the 
   stack (CVE-2018-0739)
 
This upgrade is available starting in build 08.02.0194 of the OpenSSL library 
file.  
 
Version 1.0.2r also addresses vulnerabilities resolved by earlier versions of 
the library.  

For more information on OpenSSL vulnerabilities resolved by this upgrade, refer
to the corresponding OpenSSL announcements at 
https://www.openssl.org/news/vulnerabilities-1.0.2.html. 
	
Apache ZooKeeper
----------------
The driver has been enhanced to support Apache ZooKeeper, which can be 
configured using the refreshed Host Name connection option and the new 
ZooKeeper Discovery and ZooKeeper Namespace connection options.

Also, the driver supports Kerberos authentication for Apache ZooKeeper.
Refer to the user's guide for details.
 
 
    Changes for 8.0.1 GA

Platform Certifications
-----------------------
* Certified with Windows Server 2016 
  (driver version 08.00.0055 (B0221, U0144))
  
Hive Version Certifications
---------------------------
* Certified with MapR 5.0, 5.1, 5.2 
  (driver version 08.00.0102 (B0257, U0172))
* Certified with Cloudera (CDH) 5.11, 5.12 
  (driver version 08.00.0081 (B0241, U0158))
  
HTTP Mode Support
-----------------
The driver has been enhanced to support HTTP mode, which allows you to access 
Apache Hive data stores using HTTP/HTTPS requests. HTTP mode can be configured 
using the new Transport Mode and HTTP Path connection options. 
   
Cookie Base Authentication
--------------------------   
The driver has been enhanced to support cookie based authentication for HTTP 
connections. Cookie based authentication can be configured using the new 
Enable Cookie Authentication and Cookie Name connection options.   
   
Support for Apache Knox 
-----------------------   
The driver has been enhanced to support HTTP connections to Apache 
Knox gateways.

Array Insert Size 
-----------------   
The new ArrayInsertSize connection option provides a workaround for memory 
and server issues that can sometimes occur when inserting a large number of 
rows that contain large values. These issues are most likely to occur 
when connecting through Apache Knox.    
   
SSL Enhancement (1.0.2n) 
------------------------
Note: OpenSSL library 1.0.2n has been replaced with version 1.0.2r. In addition
to fixing multiple new vulnerabilities, version 1.0.2r also addresses the 
vulnerabilities resolved by version 1.0.2n. 

Version 1.0.2n of the OpenSSL library fixes the following security 
vulnerabilities:
 * rsaz_1024_mul_avx2 overflow bug on x86_64(CVE-2017-3738)
 * Read/write after SSL object in error state (CVE-2017-3737)
 * bn_sqrx8x_internal carry bug on x86_64 (CVE-2017-3736)
 * Malformed X.509 IPAddressFamily could cause OOB read (CVE-2017-3735)	


    Changes for the 8.0.0 GA 
  
Certifications 
-------------
* Certified with Hive 2.0.x, 2.1.x  
* Certified with Cloudera (CDH) 5.4, 5.5, 5.6, 5.7, 5.8, 5.9, 5.10 
* Certified with Hortonworks (HDP) 2.4, 2.5 
* Certified with IBM BigInsights v4.2, v4.3         

Fetch Performance Enhancement
-----------------------------
The driver has been enhanced to optimize the performance of fetches.  

SSL Enhancement (1.0.2k) 
------------------------
Note: OpenSSL library 1.0.2k has been replaced with version 1.0.2r. In addition
to fixing multiple new vulnerabilities, version 1.0.2r also addresses the 
vulnerabilities resolved by version 1.0.2k. 

The default OpenSSL library version has been updated to 1.0.2k, which fixes the 
following security vulnerabilities:
 * Truncated packet could crash via OOB read (CVE-2017-3731)
 * BN_mod_exp may produce incorrect results on x86_64 (CVE-2017-3732)
 * Montgomery multiplication may produce incorrect results (CVE-2016-7055)

SSL Enhancement (1.0.2j) 
------------------------
Note: OpenSSL library 1.0.2j has been replaced with version 1.0.2r. In addition
to fixing multiple new vulnerabilities, version 1.0.2r also addresses the 
vulnerabilities resolved by version 1.0.2j. 

Version 1.0.2j of the OpenSSL library fixes the following security 
vulnerabilities:
 * "Missing CRL sanity check" (CVE-2016-7052)
 * "OCSP Status Request extension unbounded memory growth" (CVE-2016-6304)
 * "SWEET32 Mitigation" (CVE-2016-2183)
 * "OOB write in MDC2_Update()" (CVE-2016-6303)
 * "Malformed SHA512 ticket DoS" (CVE-2016-6302)
 * "OOB write in BN_bn2dec()" (CVE-2016-2182)
 * "OOB read in TS_OBJ_print_bio()" (CVE-2016-2180)
 * "Pointer arithmetic undefined behaviour" (CVE-2016-2177)
 * "Constant time flag not preserved in DSA signing" (CVE-2016-2178)
 * "DTLS buffered message DoS" (CVE-2016-2179)
 * "DTLS replay protection DoS" (CVE-2016-2181)
 * "Certificate message OOB reads" (CVE-2016-6306)

Max Varchar Size Connection Option Replaced by Max String Size 
--------------------------------------------------------------
The new Max String Size connection option allows you to determine the maximum 
size of columns of the String data type that the driver describes through 
result set descriptions and catalog functions. 

This option replaces the Max Varchar Size connection option. The MaxVarcharSize
attribute will continue to be supported for this release, but will be 
deprecated in subsequent versions of the product.

Use Native Catalog Functions Connection Option Replace by Catalog Mode
----------------------------------------------------------------------
The new Catalog Mode connection option allows you to determine whether the 
driver uses native catalog functions to retrieve information returned by the 
SQLTables, SQLColumns, and SQLStatistics catalog functions. In the default 
setting, the driver employs a balance of native functions and driver-discovered
information for the optimal balance of performance and accuracy when retrieving
catalog information. 

This option replaces the Use Native Catalog Functions option. The 
UseNativeCatalogFunctions attribute will continue to be supported for this 
release, but will be deprecated in subsequent versions of the product. 

Min Long Varchar Size Connection Option 
---------------------------------------
The new Min Long Varchar Size connection option allows you to fetch 
SQL_LONGVARCHAR columns whose size is smaller than the minimum imposed by some
third-party applications, such as SQL Server Linked Server. 

Varchar Threshold Connection Option
-----------------------------------
The new Varchar Threshold connection option allows you to fetch columns that 
would otherwise exceed the upper limit of the SQL_VARCHAR type for some 
third-party applications, such as SQL Server Linked Server. 

Enhanced Tableau Support
-----------------------
The driver includes a new Tableau data source file (Windows only) that provides
improved functionality when accessing your data with Tableau. 

Valid Values for Authentication Method
--------------------------------------
The Authentication Method connection option has been refreshed with a new 
valid value for enabling Kerberos Authentication. To use Kerberos 
authentication with the driver, set AuthenticationMethod=4.

Note: Specifying the legacy setting for enabling Kerberos 
      (AuthenticationMethod=1) will return an error message at connection. 

Default Value for Crypto Protocol Version 
-----------------------------------------
The default value for Crypto Protocol Version has been updated to 
TLSv1.2,TLSv1.1,TLSv1. This change improves the security of the driver by 
employing only the most secure cryptographic protocols as the default behavior.	  
	  
Valid Values for String Describe Type
-------------------------------------
The valid and default values for the String Describe Type connection have 
been updated:
 - Valid values: -10 (SQL_WLONGVARCHAR) | -9 (SQL_WVARCHAR)
 - Default value: -9 (SQL_WVARCHAR)	
 
Hive Version Support
--------------------
The driver supports Hive versions 1.0 and higher. Support has been deprecated 
for earlier Hive versions.

Hive Protocol Support 
---------------------
The driver supports the HiveServer2 protocol and higher, and as a result:
 - Support for the HiveServer1 protocol has been deprecated
 - The Wire Protocol Version connection option has been deprecated

Deprecated Distribution Support 
-------------------------------
Support has been deprecated for the following distributions:
 - Amazon Elastic MapReduce (Amazon EMR) 2.1.4, 2.24-3.1.4, 3.2-3.7
 - Cloudera's Distribution Including Apache Hadoop (CDH) 4.0, 4.1, 4.2, 4.5,
   5.0, 5.1, 5.2, 5.3
 - Hortonworks (HDP), versions 1.3, 2.0, 2.1, 2.2
 - IBM BigInsights 3.0
 - MapR Distribution for Apache Hadoop 1.2, 2.0
 - Pivotal Enterprise HD 2.0.1, 2.1
 
For more information about these features, refer to THE PROGRESS DATADIRECT FOR
ODBC FOR APACHE HIVE WIRE PROTOCOL DRIVER USER'S GUIDE AND REFERENCE.  
	  

     Driver WorkAround Options

Progress DataDirect has included non-standard connection options 
(workarounds) for the drivers that enable you to take full advantage of 
packaged ODBC-enabled applications requiring non-standard or extended 
behavior.

Refer to the chapter "WorkAround Options" in the User's Guide and Reference
for a description of these options.


     Notes, Known Problems, and Restrictions

The following are notes, known problems, or restrictions with 
Release 8.0.0 of the DataDirect Connect Series for ODBC drivers.

126 Error When Modifying Data Sources on Windows 10
---------------------------------------------------
You may receive a 126 error when adding or configuring a data source stored
on a network location. This is caused by the settings of the User Account 
Control (UAC) security feature on Windows 10. To work around this issue:

Important: Implementing this fix disables security safeguards that are designed
to protect your machine. Before starting, refer to the following Microsoft 
documentation for potential risks associated with disabling the UAC feature:  
http://windows.microsoft.com/en-us/
windows/what-are-user-account-control-settings

1.  From the Start menu, type regedit in the search field; then, select regedit
    from the results list. The Registry Editor window opens. 

2.  Navigate to the following registry subkey: 

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System

3.  Right-click on the subkey; then, select New > DWORD Value. 

4.  Rename the new value EnableLinkedConnections. 

5.  Right-click EnableLinkedConnections, and then click Modify. The Edit DWORD 
    Value window opens. 

6.  In the Value data field, type 1. Click OK. 

7.  Close the Registry Editor; then, restart your computer.   

For SSL Users
-------------
When trying to connect to a database using SSL encryption, you may 
receive an error message similar to: "PRNG not seeded". This is because 
certain versions of some operating systems do not generate truly random 
numbers necessary for encryption. For more information about this error 
and available patches, please refer to the Web site:

http://www.openssl.org/support/faq.html#USER1

SQLColAttribute(s)
------------------
The column attributes 1001 and 1002, which were assigned as DataDirect- 
specific attributes, were inadvertently used as system attributes by
the Microsoft 3.0 ODBC implementation. Applications using those 
attributes must now use 1901 and 1902, respectively.

SQL_C_NUMERIC
-------------
Because of inconsistencies in the ODBC specification, users attempting 
to use SQL_C_NUMERIC parameters must set the precision and scale values 
of the corresponding structure and the descriptor fields in the 
Application Parameter Descriptor.

For Developers Using IIS
------------------------
One of the most common connectivity issues encountered while using IIS 
(Microsoft's Internet Information Server) concerns the use and settings 
of the account permissions. If you encounter problems using DataDirect 
drivers with an IIS server, refer to KnowledgeBase document number 4274 
on the Progress DataDirect web site:

http://knowledgebase.datadirect.com.

For Users of the Driver for Apache Hive(TM) 
-------------------------------------------
The following are notes, known problems, and restrictions with the 
driver. These restrictions are based on using Apache Hive 1.2.0; other 
versions of Apache Hive will have their own restrictions. You may 
find a more complete listing of Apache Hive known issues and limitations 
for your version of Apache Hive in the Apache Hive user 
documentation here: 

https://cwiki.apache.org/confluence/display/Hive/Home

Note that Apache Hive is not designed for OLTP workloads and does not 
offer real-time queries or row-level updates. Apache Hive is instead 
designed for batch type jobs over large data sets with high latency.

Known Issues for Apache Hive(TM)
-------------------------------
* No support for row-level updates or deletes
* No difference between "NULL" and null values
* No support for auto-commit transactions 

HiveQL
------
Apache Hive uses HiveQL, which provides much of the functionality of
SQL, but has some limitation syntax differences. For more information, 
refer to the Hive Language Manual. 
https://cwiki.apache.org/confluence/display/Hive/LanguageManual.

* A single quote within a string literal must be escaped 
using a \ instead of using a single quote.

* Join support is limited to equi-joins.


    Documentation	 	 

THE PROGRESS DATADIRECT FOR ODBC FOR APACHE HIVE WIRE PROTOCOL DRIVER
USER'S GUIDE AND REFERENCE
----------------------------------------------------------------------
This guide is provided in PDF and HTML versions. Both versions are installed
in the SQLServerHelp subdirectory of your product installation directory. You 
can access the help by opening the index.html file or by clicking the Help 
button on the driver setup dialog.

The complete documentation library is available on the Progress DataDirect 
Web site at https://www.progress.com/documentation/datadirect-connectors.


    Uninstalling the Driver 

You can uninstall the product or individual drivers through the Uninstall 
DataDirect for ODBC 8.0 option in the DataDirect program group.


     Installed Files the 32-bit Driver

This file list assumes a full installation of the driver and 
documentation.

The installer copies the following file to the Windows system 
directory:

ivtrc28.dll           DataDirect trace library

The installer copies the following files and subdirectories to the 
product installation directory, by default:

For the 32-bit driver on 64-bit machines:

  C:\Program Files (x86)\Progress\DataDirect\ODBC_80

For all other installations:

  C:\Program Files\Progress\DataDirect\ODBC_80
  
fixes.txt                         List of fixes since last release
license.txt                       Progress DataDirect license agreement
 
\drivers:
ivcurl28.dll                      Library used for HTTP connection
ivicu28.dll                       Unicode conversion tables
ivhive28.dll                      DataDirect Driver for Apache Hive
ivhive28r.dll                     DataDirect Driver for Apache Hive
                                  resource file		
IVODBC.LIC                        DataDirect license file
ivssl28.dll                       SSL support file (1.0.2r)
ivtrc28.dll                       DataDirect trace library							
qesqlext.h                        Header file for DataDirect-specific ODBC 
                                  Definitions
								  
\OpenSSL:
\latest\ivssl28.dll                SSL support file 
                                  (OpenSSL library file, version 1.0.2r)

\help\HiveHelp: 
index.html                        HTML help system entry file
\*.*                              Support folders for the HTML help system

\jre
*.*                               Files associated with the Apache Hive WP driver

\NOTICES:
ODBC for Apache Hive
8.0 NOTICES.TXT	                  Third-party vendor license agreements

\READMES:
ODBC FOR Apache Hive 
8.0 README.TXT	                  This file

\samples:
\bulk\bulk.c                      Bulk example source
\bulk\bulk.exe                    Bulk application
\bulk\bulk.mak                    Bulk example make file
\bulk\bulk.sln                    Bulk example solution file
\bulk\bulk.vcproj                 Bulk example project file
                       
\bulkstrm\bulk.cpp                Bulk streaming example source
\bulkstrm\bulk.hpp                Bulk streaming example header
\bulkstrm\bulk.rc                 Bulk streaming example resource file
\bulkstrm\bulkstreaming.sln       Bulk streaming example solution file
\bulkstrm\bulkstreaming.vcproj    Bulk streaming example project file
\bulkstrm\bulkstrm.exe            Bulk streaming example application
\bulkstrm\bulkstrm.txt            Bulk streaming description
\bulkstrm\msgprintf.hpp           Bulk streaming example header file
\bulkstrm\ProgressDataDirect.bmp
\bulkstrm\ProgressDataDirect.ico
\bulkstrm\winmain.cpp             Bulk streaming example source file

\example\example.c                Example source
\example\Example.exe              Example application
\example\example.h                Example header
\example\Example.mak              Example make file
\example\Example.sln              Example solution file
\example\Example.vcproj           Example project file
\example\example.txt              Example description

\Tableau:
DataDirect Apache Hive.tdc        Tableau data source file 

\TOOLS:
ddextwin.exe                      License Extender utility
ddprocinfo.exe                    Processor Information utility
DSNConverterSIL.exe               Data Source Converter utility
XMLP.exe                          A GUI demo tool that persists a result set to 
                                  an XML data file
								
\UNINSTALL\*.*                    Files used to uninstall the product


    Installed Files for the 64-bit Driver

This file list assumes a full installation of all drivers and 
documentation. 

The installer copies the following file to the Windows system 
directory:

ddtrc28.dll           DataDirect trace library

The installer copies the following files and subdirectories to the 
product installation directory, by default:

   C:\Program Files\Progress\DataDirect\ODBC_80\:	
		
fixes.txt                         List of fixes since last release
license.txt                       Progress DataDirect license agreement
 
\drivers:
ddcurl28.dll                      Library used for HTTP connection
ddicu28.dll                       Unicode conversion tables
ddhive28.dll                      DataDirect Driver for Apache Hive
ddhive28r.dll                     DataDirect Driver for Apache Hive 
                                  resource file		
DDODBC.LIC                        DataDirect license file
ddssl28.dll                       SSL support file (1.0.2r)
ddtrc28.dll                       DataDirect trace library
qesqlext.h                        Header file for DataDirect-specific ODBC 
                                  Definitions

\OpenSSL:
\latest\ddssl28.dll               SSL support file 
                                  (OpenSSL library file, version 1.0.2r)

\help\HiveHelp: 
index.html                        HTML help system entry file
\*.*                              Support folders for the HTML help system

\jre
*.*                               Files associated with the Apache Hive WP driver

\NOTICES:
ODBC for Apache Hive
8.0 NOTICES.TXT	                  Third-party vendor license agreements

\READMES:
ODBC for Apache Hive 
8.0 README.TXT	                  This file

\samples:
\bulk\bulk.c                      Bulk example source
\bulk\bulk.exe                    Bulk application
\bulk\bulk.mak                    Bulk example make file
\bulk\bulk.sln                    Bulk example solution file
\bulk\bulk.vcproj                 Bulk example project file
                       
\bulkstrm\bulk.cpp                Bulk streaming example source
\bulkstrm\bulk.hpp                Bulk streaming example header
\bulkstrm\bulk.rc                 Bulk streaming example resource file
\bulkstrm\bulkstreaming.sln       Bulk streaming example solution file
\bulkstrm\bulkstreaming.vcproj    Bulk streaming example project file
\bulkstrm\bulkstrm.exe            Bulk streaming example application
\bulkstrm\bulkstrm.txt            Bulk streaming description

\bulkstrm\msgprintf.hpp           Bulk streaming example header file
\bulkstrm\ProgressDataDirect.bmp
\bulkstrm\ProgressDataDirect.ico
\bulkstrm\winmain.cpp             Bulk streaming example source file

\example\example.c                Example source
\example\Example.exe              Example application
\example\example.h                Example header
\example\Example.mak              Example make file
\example\Example.sln              Example solution file
\example\Example.vcproj           Example project file
\example\example.txt              Example description

\Tableau:
DataDirect Apache Hive.tdc        Tableau data source file 

\TOOLS:
ddextwin.exe                      License Extender utility
ddprocinfo.exe                    Processor Information utility
DSNConverterSIL.exe               Data Source Converter utility
XMLP.exe                          A GUI demo tool that persists a result set to 
                                  an XML data file
								
\UNINSTALL\*.*			  Files used to uninstall the product		


~~~~~~~~~~~~~~
May 16, 2019 

End of README