README
Progress (R) DataDirect (R)
Progress(R) DataDirect(R) for ODBC for
Apache Spark SQL(TM) Wire Protocol Driver
UNIX and Linux Platforms (32- and 64-bit)
8.0.2 Release
June 12, 2017
***********************************************************************
Copyright (C) 1990-2017 Progress Software Corporation and/or its
subsidiaries or affiliates. All Rights Reserved.
***********************************************************************
This README file contains information for Progress(R) DataDirect
for ODBC for Apache Spark SQL(TM) Wire Protocol Driver.
This README file contains information not included in the PROGRESS
DATADIRECT(R) FOR ODBC FOR APACHE SPARK SQL WIRE PROTOCOL DRIVER USER'S GUIDE
AND REFERENCE.
CONTENTS
Installation Directory
Changes Since 8.0.2 GA
Changes for 8.0.2 GA
Changes for 8.0.1 GA
Changes Since 8.0.0 GA
Features for GA
Driver WorkAround Options
Notes, Known Problems, and Restrictions
Documentation
Uninstalling the Driver
Installed Files
Documentation Third-Party Acknowledgements
Installation Directory
* The default installation directory for the 32-bit driver is:
/opt/Progress/DataDirect/ODBC_80
* The default installation directory for the 64-bit driver is:
/opt/Progress/DataDirect/ODBC_80_64bit
Changes Since 8.0.2 GA
Certifications
--------------
* Certified with Debian Linux 7.11, 8.5 (driver version 08.01.0088
(B0138, U0095))
* Certified with Ubuntu Linux 14.04, 16.04 (driver version 08.01.0088
(B0138, U0095))
* Certified with Spark SQL 2.0 (driver verision 08.01.0144 (B0239, U0156))
SSL Enhancement (1.0.2j)
------------------------
The default OpenSSL library version has been updated to 1.0.2j, which 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)
Version 1.0.2j 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/openssl-1.0.2-notes.html.
Version 1.0.2j provides multiple advantages over earlier versions of the
library; however, some characteristics of the library can cause connections to
certain databases to fail. In an effort to reduce the risk associated with
upgrading to 1.0.2j, the driver also installs earlier versions of the library,
which can be selected using CryptoLibName and SSLLibName connection options.
This allows you to continue using earlier versions until your environment is
ready to migrate to version 1.0.2j.
See "Designating an OpenSSL Library" in the "Notes, Known Issues, and
Restrictions" section for build numbers and a comparison of these libraries.
SSL Enhancement (1.0.2h)
------------------------
Note: OpenSSL library 1.0.2h has been replaced with version 1.0.2j. In addition
to fixing multiple new vulnerabilities, version 1.0.2j also addresses all the
vulnerabilities resolved by version 1.0.2h.
The default OpenSSL library version has been updated to 1.0.2h, which fixes the
following security vulnerabilities:
* "Padding oracle in AES-NI CBC MAC check" (CVE-2016-2107)
* "EVP_EncodeUpdate overflow" (CVE-2016-2105)
* "EVP_EncryptUpdate overflow" (CVE-2016-2106)
* "ASN.1 BIO excessive memory allocation" (CVE-2016-2109)
* "EBCDIC overread" (CVE-2016-2176)
Version 1.0.2h 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/openssl-1.0.2-notes.html.
SSL Enhancement (1.0.2g)
------------------------
Note: OpenSSL library 1.0.2g has been replaced with version 1.0.2j. In addition
to fixing multiple new vulnerabilities, version 1.0.2j also addresses all the
vulnerabilities resolved by version 1.0.2g.
The default OpenSSL library version has been updated to 1.0.2g, which fixes the
following security vulnerabilities:
* "missing Memory allocation success checks in doapr_outch function in
crypto/bio/b_print.c" (CVE-2016-2842)
* "Cross-protocol attack on TLS using SSLv2 (DROWN)" (CVE-2016-0800)
* "memory issues in BIO_*printf functions" (CVE-2016-0799)
* "Memory leak in SRP database lookups" (CVE-2016-0798)
* "Double-free in DSA code" (CVE-2016-0705)
* "Side channel attack on modular exponentiation" (CVE-2016-0702)
For more information on the OpenSSL vulnerabilities resolved by this upgrade,
refer to the corresponding OpenSSL announcements at
https://www.openssl.org/news/openssl-1.0.2-notes.html.
Refer to the fixes.txt file in the product installation directory for a list
of changes by component build number.
Changes for 8.0.2 GA
SSL Enhancement (1.0.2f)
------------------------
Note: OpenSSL library 1.0.2f has been replaced with version 1.0.2j. In addition
to fixing multiple new vulnerabilities, version 1.0.2j also addresses all the
vulnerabilities resolved by version 1.0.2f.
The default OpenSSL library version has been updated to 1.0.2f to address
the following security vulnerabilities:
* Provides stronger cryptographic assurance against the "Logjam" vulnerability
(CVE-2015-4000)
* "DH small subgroups" (CVE-2016-0701)
* "SSLv2 doesn't block disabled ciphers" (CVE-2015-3197)
* "BN_mod_exp may produce incorrect results on x86_64" (CVE-2015-3193)
* "Certificate verify crash with missing PSS parameter"(CVE-2015-3194)
* "X509_ATTRIBUTE memory leak" (CVE-2015-3195)
For more information on the OpenSSL vulnerabilities resolved by this upgrade,
refer to the corresponding OpenSSL announcements at
https://www.openssl.org/news/openssl-1.0.2-notes.html.
Changes for 8.0.1 GA
Certifications
--------------
Certified with Spark SQL 1.4.x and 1.5.x
New Data Type Support
---------------------
The driver has been enhanced to support the Decimal and Varchar data types.
MinLongVarchar Connection Option
--------------------------------
The new MinLongVarcharSize connection option allows you to fetch
SQL_LONGVARCHAR columns whose size is smaller than the minimum
imposed by some third-party applications.
VarcharThreshold Connection Option
----------------------------------
The new VarcharThreshold connection option allows you to fetch columns
that would otherwise exceed the upper limit of the SQL_VARCHAR type for some
third-party applications.
New Default Value for the ArraySize Connection Option
------------------------------------------------------
The default value for the ArraySize connection option has changed to 20000.
For more information about these features, refer to THE PROGRESS DATADIRECT FOR
ODBC FOR APACHE SPARK SQL DRIVER USER'S GUIDE AND REFERENCE.
Changes Since 8.0.0 GA
New Operating System Support
----------------------------
* Certified with Red Hat Enterprise 7.1
* Certified with CentOS Linux 7.1
* Certified with Oracle Linux 7.1
Features for 8.0.0 GA
The Progress DataDirect for ODBC for Apache Spark SQL Wire Protocol Driver
supports standard SQL query language for read-write access to Apache Spark SQL
data stores. By using DataDirect's Wire Protocol technology, the driver
eliminates the need for client libraries, improving response time and
throughput.
Features:
* Supports Apache Spark SQL 1.2.x, 1.3.x
* Supports all ODBC Core and Level 1 functions.
* Supports the core SQL-92 grammar.
* Supports the following data types:
- Bigint maps to SQL_BIGINT
- Boolean maps to SQL_BIT
- Date maps to SQL_DATE
- Double maps to SQL_DOUBLE
- Float maps to SQL_REAL
- Int maps to SQL_INTEGER
- Smallint maps to SQL_SMALLINT
- String maps to SQL_WVARCHAR and SQL_WLONGVARCHAR
- Timestamp maps to SQL_TYPE_TIMESTAMP
- Tinyint maps to SQL_TINYINT
* Supports advanced security features, including:
- Data encryption
- Kerberos authentication
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
Designating an OpenSSL Library
------------------------------
Although the latest version of the OpenSSL library, 1.0.2j, is the most secure
version of the library, some characteristics of the library can cause
connections to certain databases to fail. To allow you to continue using
earlier versions until your environment is ready to migrate to version 1.0.2j,
the product also installs earlier versions of the library.
The following versions of the OpenSSL library have been installed with this
product, listed in order of most secure to least secure:
* 1.0.2j (file version 08.01.0107)
* 1.0.2d (file version 08.00.0062)
When determining which version of the OpenSSL library to use, consider the
following factors:
Upgrading to 1.0.2j provides the following advantages:
* Fixes the "Missing CRL sanity check" vulnerability (CVE-2016-7052)
* Fixes the "OCSP Status Request extension unbounded memory growth"
vulnerability (CVE-2016-6304)
* Fixes the "SWEET32 Mitigation" vulnerability (CVE-2016-2183)
* Fixes the "OOB write in MDC2_Update()" vulnerability (CVE-2016-6303)
* Fixes the "Malformed SHA512 ticket DoS" vulnerability (CVE-2016-6302)
* Fixes the "OOB write in BN_bn2dec()" vulnerability (CVE-2016-2182)
* Fixes the "OOB read in TS_OBJ_print_bio()" vulnerability (CVE-2016-2180)
* Fixes the "Pointer arithmetic undefined behaviour" vulnerability (CVE-2016-2177)
* Fixes the "Constant time flag not preserved in DSA signing" vulnerability
(CVE-2016-2178)
* Fixes the "DTLS buffered message DoS" vulnerability (CVE-2016-2179)
* Fixes the "DTLS replay protection DoS" vulnerability (CVE-2016-2181)
* Fixes the "Certificate message OOB reads" vulnerability (CVE-2016-6306)
* Fixes the "Padding oracle in AES-NI CBC MAC check" vulnerability
(CVE-2016-2107)
* Fixes the "EVP_EncodeUpdate overflow" vulnerability (CVE-2016-2105)
* Fixes the "EVP_EncryptUpdate overflow" vulnerability (CVE-2016-2106)
* Fixes the "ASN.1 BIO excessive memory allocation" vulnerability
(CVE-2016-2109)
* Fixes the "EBCDIC overread" vulnerability (CVE-2016-2176)
* Fixes the "missing Memory allocation success checks in doapr_outch function
in crypto/bio/b_print.c" vulnerability (CVE-2016-2842)
* Fixes the "Cross-protocol attack on TLS using SSLv2 (DROWN)"
vulnerability (CVE-2016-0800)
* Fixes the "memory issues in BIO_*printf functions" vulnerability
(CVE-2016-0799)
* Fixes the "Memory leak in SRP database lookups" vulnerability (CVE-2016-0798)
* Fixes the "Double-free in DSA code" vulnerability (CVE-2016-0705)
* Fixes the "Side channel attack on modular exponentiation" vulnerability
(CVE-2016-0702)
* Provides stronger cryptographic assurance against the "Logjam" vulnerability
(CVE-2015-4000)
* Fixes the "DH small subgroups" vulnerability (CVE-2016-0701)
* Fixes the "SSLv2 doesn't block disabled ciphers" vulnerability
(CVE-2015-3197)
* Fixes the "BN_mod_exp may produce incorrect results on x86_64" vulnerability
(CVE-2015-3193)
* Fixes the "Certificate verify crash with missing PSS parameter" vulnerability
(CVE-2015-3194)
* Fixes the "X509_ATTRIBUTE memory leak" vulnerability (CVE-2015-3195)
Upgrading to version 1.0.2j includes the following risk:
* To improve protection against the "Logjam" vulnerability, the minimum
required length for the Diffie-Hellman key exchange was increased to 1024
bits. When accessing databases that have not been fixed to address the
"Logjam" vulnerability, this change can cause connections to fail with the
following error: "dh key too small." You can work around this issue can by
disabling Diffie-Hellman cipher suites.
Refer to "Designating an OpenSSL library" in the User's Guide and Reference for
instructions on using an earlier version of the OpenSSL library.
For information on working around the Diffie-Hellman issue without designating
an earlier version of the library, see "Disabling Diffie-Hellman Cipher Suites"
in the "Notes, Known Problems, and Restrictions" section.
For more information on the OpenSSL vulnerabilities mentioned in this section,
refer to the corresponding OpenSSL announcements at
https://www.openssl.org/news/openssl-1.0.2-notes.html.
Disabling Diffie-Hellman Cipher Suites
--------------------------------------
If your database has not been fixed to address the Logjam vulnerability, you
can still use the most recent version of the OpenSSL Library by disabling the
Diffie-Hellman cipher suites. To disable the Diffie-Hellman cipher suites,
specify the following value for the undocumented CipherList connection option:
CipherList=DEFAULT:-DH
If you have already specified a value for CipherList, add the following to the
existing value:
:-DH
The option-value pair for undocumented options can be specified in the
odbc.ini, connection string, or the Extended Options field of the GUI. For
details, refer to "Configuring and Connecting to Data Sources" in driver's
User's Guide and Reference.
Varchar Data Type
-----------------
When returning result set metadata for Varchar columns, the Spark Thrift server
reports the column type as (12) STRING and the precision as 2147483647. This
issue can cause the settings of the following connection options to produce
unexpected results: MaxStringSize, MinLongVarcharSize, StringDescribeType,
and VarcharThreshold. For the latest information about this issue, refer to
the Apache JIRA SPARK-5918 issue Web page:
https://issues.apache.org/jira/browse/SPARK-5918.
Support for Multiple Simultaneous Connections
---------------------------------------------
For Spark SQL versions 1.5 and earlier, the Spark SQL Thrift supports only a
single connection from a single application (client) per instance. Multiple
connections can result in a number of unexpected behaviors, including
corrupting data or crashing the Thrift server. While Spark SQL 1.4 resolved
some issues related to this limitation, all of the multi-connect issues are
not expected to be fixed until Spark SQL 1.6 or later. Refer to
https://github.com/apache/spark/pull/8909 for more information.
Rand() Function
---------------
For Spark SQL version 1.4, the rand() function is not supported. If the rand()
function is used, the driver throws the following exception:
org.apache.spark.sql.AnalysisException: For input string: "TOK_TABLE_OR_COL";
Date/Time Hour() Function
-------------------------
For Spark SQL version 1.5, the Spark Thrift server returns (-17) for the hour()
function.
ODBC Development on UNIX and Linux Platforms
--------------------------------------------
All of the Release 8.0 Core Components (header files, etc.) needed for
development of ODBC applications on UNIX and Linux are installed into
the /include directory created by the product installer.
Please read the notices.txt file in the installation directory for
licensing information regarding the ODBC Core Components. Contact your
Progress DataDirect representative if you have any questions.
Developers using programming languages other than C++:
The DataDirect ODBC Driver Manager is a C++ shared library. The ODBC
Driver Manager can be used with any language that supports loading a
C++ shared library; however, if you are using a programming language
other than C++, you must take additional steps to ensure that the C++
libraries are initialized properly when loaded. If you are not using
C++, consult your compiler documentation for instructions on using C++
shared libraries with your application.
LANG Environment Setting on UNIX and Linux Platforms
----------------------------------------------------
A default installation of the product on UNIX and Linux assumes that
the value of the LANG environment setting is en_US. If your locale is
not set to en_US, the drivers may not return error messages properly.
In this case, you must create a symbolic link in the
<Install_Dir>/locale directory that has the same value as the LANG
environment setting. This link must point to the
<Install_Dir>/locale/en_US directory.
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.
SQLDriverConnect
----------------
SQLDriverConnect using options other than SQL_DRIVER_NOPROMPT is
supported only on systems that include the Motif libraries
libivmback.so, libddmback.so, libivmbackw.so, or libddmbackw.so and
vscnctdlg.so.
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 AIX Users
-------------
Some IBM AIX C compilers, such as xlc 3.1.4, do not support the use
of C++ build binaries. C developers on AIX should consult their
compiler documentation and verify that their AIX C compiler supports
the use of C++ shared libraries or the application could be unstable.
Documentation
THE PROGRESS DATADIRECT FOR ODBC FOR APACHE SPARK SQL
WIRE PROTOCOL DRIVER USER'S GUIDE AND REFERENCE
-----------------------------------------------------
This guide is provided in PDF and HTML versions.
The PDF version is available on the Progress DataDirect Web site.
NOTE: To download Adobe Reader, visit the Adobe Web site at
http://www.adobe.com.
The HTML version of the book is installed in the SparkSQLHelp subdirectory of
your product installation directory. You can access the help by opening the
index.html file.
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 files and subdirectories to the
product installation directory, by default:
/opt/Progress/DataDirect/ODBC_80:
odbc.csh Setup script for C shell
odbc.ini Sample odbc.ini file
odbcinst.ini Sample odbcinst.ini file
odbc.sh Setup script for Bourne shell
IVODBC.LIC DataDirect license file
fixes.txt List of fixes since last release
license.txt Progress DataDirect license agreement
/bin:
ivtestlib Test application to check that required
libraries are present and loadable
/help:
spark_connect.txt Help text for the Apache Spark SQL WP driver
SQLDriverConnect dialog
/help/SparkSQLHelp:
index.html HTML help system entry file
*.* Support folders for the HTML help system
/include:
odbcinst.h Include files
qesqlext.h
sql.h
sqlext.h
sqltypes.h
sqlucode.h
sqlunx.h
/lib:
The following library files all have the extension .so, except when
installed on HP-UX PA-RISC, in which case the extension is .sl.
ivspark28.so Apache Spark SQL WP driver
ivtrc28.so Progress DataDirect trace library
libivicu28.so Unicode conversion tables [.a on AIX]
libivmback.so SQLDriverConnect Motif library
libivmbackw.so SQLDriverConnect Motif library [.a on AIX]
libivssl28.so SSL support file (1.0.2j)[.a on AIX]
libodbc.so ODBC Driver Manager [.a on AIX]
libodbcinst.so ODBC Installer [.a on AIX]
odbc.so ODBC Driver Manager (dynamically loadable)
[AIX only]
odbccurs.so ODBC Cursor library
odbcinst.so ODBC Installer (dynamically loadable)
[AIX only]
vscnctdlg.so ODBC library for Motif operations
/OpenSSL/1.0.2d/libivssl28.so SSL support file (OpenSSL library
version 1.0.2d) [.a on AIX]
/OpenSSL/latest/libivssl28.so SSL support file (OpenSSL library
version 1.0.2j) [.a on AIX]
/locale/en_US/LC_MESSAGES:
ivmbackw.mo Motif library message file
ivmbackw.po Motif library message source
ivspark28.mo Apache Spark SQL WP driver message file
ivspark28.po Apache Spark SQL WP driver message file source
odbc.mo ODBC Driver Manager message file
odbc.po ODBC Driver Manager message source
/NOTICES:
ODBC for Apache Spark SQL
v8.0 notices.txt Third-party vendor license agreements
/READMES:
ODBC for Apache Spark SQL
v8.0 readme.txt This file
/samples:
/bulk/bulk Bulk application
/bulk/bulk.c Bulk example source
/bulk/bulk.mak Bulk example make file
/bulk/bulk.txt Bulk example description
/bulk/ddlogging.properties Log configuration file for the
Apache Spark SQL WP driver
/bulkstrm/bulk.cpp Bulk streaming example source
/bulkstrm/bulk.hpp Bulk streaming example header
/bulkstrm/bulkstrm Bulk streaming example application
/bulkstrm/bulkstrm.txt Bulk streaming example description
/bulkstrm/main.cpp Bulk streaming example source
/bulkstrm/msgprintf.hpp Bulk streaming example header
/bulkstrm/streambulk.mak Bulk streaming example make file
/bulkstrm/ddlogging.properties Log configuration file for the
Apache Spark SQL WP driver
/example/example Example application
/example/example.c Example source
/example/example.h Example header
/example/example.mak Example make file
/example/example.txt Example description
/example/ddlogging.properties Log configuration file for the
Apache Spark SQL WP driver
/tools:
ddextu License Extender utility
ddprocinfo Processor Information utility
Installed Files for the 64-bit Driver
This file list assumes a full installation of all drivers and
documentation.
The installer copies the following files and subdirectories to the
product installation directory, by default:
/opt/Progress/DataDirect/ODBC_80_64bit:
odbc.csh Setup script for C shell
odbc.ini Sample odbc.ini file
odbcinst.ini Sample odbcinst.ini file
odbc.sh Setup script for Bourne shell
DDODBC.LIC DataDirect license file
fixes.txt List of fixes since last release
license.txt Progress DataDirect license agreement
/bin:
ddtestlib Test application to check that required
libraries are present and loadable
/help:
spark_connect.txt Help text for the Apache Spark SQL WP driver
SQLDriverConnect dialog
/help/SparkSQLHelp:
index.html HTML help system entry file
*.* Support folders for the HTML help system
/include:
odbcinst.h Include files
qesqlext.h
sql.h
sqlext.h
sqltypes.h
sqlucode.h
sqlunx.h
/lib:
ddspark28.so Apache Spark SQL WP driver
ddtrc28.so Progress DataDirect trace library
libddicu28.so Unicode conversion tables [.a on AIX]
libddmback.so SQLDriverConnect Motif library
libddmbackw.so SQLDriverConnect Motif library [.a on AIX]
libddssl28.so SSL support file (1.0.2j) [.a on AIX]
libodbc.so ODBC Driver Manager [.a on AIX]
libodbcinst.so ODBC Installer [.a on AIX]
odbc.so ODBC Driver Manager (dynamically loadable)
[AIX only]
odbccurs.so ODBC Cursor library
odbcinst.so ODBC Installer (dynamically loadable)
[AIX only]
vscnctdlg.so ODBC library for Motif operations
/OpenSSL/1.0.2d/libddssl28.so SSL support file (OpenSSL library
version 1.0.2d) [.a on AIX]
/OpenSSL/latest/libddssl28.so SSL support file (OpenSSL library
version 1.0.2j) [.a on AIX]
/locale/en_US/LC_MESSAGES:
ddmbackw.mo Motif library message file
ddmbackw.po Motif library message source
ddspark28.mo Apache Spark SQL WP driver message file
ddspark28.po Apache Spark SQL WP driver message file source
odbc.mo ODBC Driver Manager message file
odbc.po ODBC Driver Manager message source
/notices:
ODBC for Apache Spark SQL
v8.0 notices.txt Third-party vendor license agreements
/readmes:
ODBC for Apache Spark SQL
v8.0 readme.txt This file
/samples:
/bulk/bulk Bulk application
/bulk/bulk.c Bulk example source
/bulk/bulk.mak Bulk example make file
/bulk/bulk.txt Bulk example description
/bulk/ddlogging.properties Log configuration file for the
Apache Spark SQL WP driver
/bulkstrm/bulk.cpp Bulk streaming example source
/bulkstrm/bulk.hpp Bulk streaming example header
/bulkstrm/bulkstrm Bulk streaming example application
/bulkstrm/bulkstrm.txt Bulk streaming example description
/bulkstrm/main.cpp Bulk streaming example source
/bulkstrm/msgprintf.hpp Bulk streaming example header
/bulkstrm/streambulk.mak Bulk streaming example make file
/bulkstrm/ddlogging.properties Log configuration file for the
Apache Spark SQL WP driver
/example/ddlogging.properties Log configuration file for the
Apache Spark SQL WP driver
/example/example Example application
/example/example.c Example source
/example/example.h Example header
/example/example.mak Example make file
/example/example64.txt Example description
/example/ddlogging.properties Log configuration file for the
Apache Spark SQL WP driver
/tools:
ddextu License Extender utility
ddprocinfo Processor Information utility
Documentation Third Party Acknowledgements
One or more products in the Progress DataDirect for ODBC for Apache Spark SQL
Wire Protocol v8.0 release includes third party components covered by licenses
that require that the following documentation notices be provided. If changes
in third party components occurred for the current release of the Product, the
following Third Party Acknowledgements may contain notice updates to any
earlier versions provided in documentation or README file.
Progress DataDirect for ODBC for Apache Spark SQL Wire Protocol v8.0
incorporates ICU v4.2.1 from International Business Machines Corporation.
Such technology is subject to the following terms and conditions: ICU License
- ICU 1.8.1 and later ICU License - ICU 1.8.1 and later COPYRIGHT AND
PERMISSION NOTICE. Copyright (c) 1995-2010 International Business Machines
Corporation and others. All rights reserved. Permission is hereby granted, free
of charge, to any person obtaining a copy of this software and associated
documentation files (the "Software"), to deal in the Software without
restriction, including without limitation the rights to use, copy, modify,
merge, publish, distribute, and/or sell copies of the Software, and to permit
persons to whom the Software is furnished to do so, provided that the above
copyright notice(s) and this permission notice appear in all copies of the
Software and that both the above copyright notice(s) and this permission notice
appear in supporting documentation. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT
WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER
OR HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL
INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE. Except as contained in this notice, the name
of a copyright holder shall not be used in advertising or otherwise to promote
the sale, use or other dealings in this Software without prior written
authorization of the copyright holder. All trademarks and registered
trademarks mentioned herein are the property of their respective owners.
Progress DataDirect for ODBC for Apache Spark SQL Wire Protocol v8.0
incorporates OpenSSL v1.0.2_x from The OpenSSL Project. Such technology is
subject to the following terms and conditions: LICENSE ISSUES ==============
The OpenSSL toolkit stays under a dual license, i.e. both the conditions of
the OpenSSL License and the original SSLeay license apply to the toolkit. See
below for the actual license texts. Actually both licenses are BSD-style Open
Source licenses. In case of any license issues related to OpenSSL please
contact openssl-core@openssl.org.
OpenSSL License ---------------
Copyright (c) 1998-2011 The OpenSSL Project. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
3. All advertising materials mentioning features or use of this software must
display the following acknowledgment: "This product includes software
developed by the OpenSSL Project for use in the OpenSSL Toolkit.
(http://www.openssl.org/)"
4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
endorse or promote products derived from this software without prior written
permission. For written permission, please contact openssl-core@openssl.org.
5. Products derived from this software may not be called "OpenSSL" nor may
"OpenSSL" appear in their names without prior written permission of the
OpenSSL Project.
6. Redistributions of any form whatsoever must retain the following
acknowledgment: "This product includes software developed by the OpenSSL
Project for use in the OpenSSL Toolkit (http://www.openssl.org/)"
THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY EXPRESSED OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
EVENT SHALL THE OpenSSL PROJECT OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
====================================================================
This product includes cryptographic software written by Eric Young
(eay@cryptsoft.com). This product includes software written by Tim Hudson
(tjh@cryptsoft.com).
Original SSLeay License ----------------------- Copyright (C) 1995-1998
Eric Young (eay@cryptsoft.com) All rights reserved.
This package is an SSL implementation written by Eric Young
(eay@cryptsoft.com). The implementation was written so as to conform with
Netscapes SSL. This library is free for commercial and non-commercial use as
long as the following conditions are aheared to. The following conditions
apply to all code found in this distribution, be it the RC4, RSA, lhash, DES,
etc., code; not just the SSL code. The SSL documentation included with this
distribution is covered by the same copyright terms except that the holder is
Tim Hudson (tjh@cryptsoft.com). Copyright remains Eric Young's, and as such
any Copyright notices in the code are not to be removed. If this package is
used in a product, Eric Young should be given attribution as the author of
the parts of the library used. This can be in the form of a textual message at
program startup or in documentation (online or textual) provided with the
package. Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the copyright notice, this list
of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
3. All advertising materials mentioning features or use of this software must
display the following acknowledgement: "This product includes cryptographic
software written by Eric Young (eay@cryptsoft.com)" The word 'cryptographic'
can be left out if the routines from the library being used are not
cryptographic related :-).
4. If you include any Windows specific code (or a derivative thereof) from the
apps directory (application code) you must include an acknowledgement:
"This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
THIS SOFTWARE IS PROVIDED BY ERIC YOUNG "AS IS" AND ANY EXPRESS OR IMPLIED
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
The licence and distribution terms for any publically available version or
derivative of this code cannot be changed. i.e. this code cannot simply be
copied and put under another distribution licence [including the GNU Public
Licence.]
~~~~~~~~~~~~~~
June 12, 2017
End of README.TXT