Skip to content

Commit

Permalink
AD-472 Removing Timestream naming (#14)
Browse files Browse the repository at this point in the history
* renaming and removing timestream name reference
  • Loading branch information
affonsov authored Nov 19, 2021
1 parent becbb54 commit 5e79273
Show file tree
Hide file tree
Showing 93 changed files with 346 additions and 689 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/release-workflow.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Build and Release timestream-odbc
name: Build and Release database-odbc
# This workflow is triggered on creating tags to master
on:
push:
Expand Down
6 changes: 3 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -57,9 +57,9 @@ CTestTestfile.cmake
/sdk-build64/
/cmake-build32/
/cmake-build64/
/src/PowerBIConnector/TimestreamConnector/bin/Debug/
/src/PowerBIConnector/TimestreamConnector/obj/
/src/PowerBIConnector/TimestreamConnector/.vs/
/src/PowerBIConnector/DatabaseConnector/bin/Debug/
/src/PowerBIConnector/DatabaseConnector/obj/
/src/PowerBIConnector/DatabaseConnector/.vs/
src/aws-sdk-cpp/
default.profraw
test_output.html
Expand Down
133 changes: 3 additions & 130 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,136 +4,9 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [v1.0.3](https://github.com/Bit-Quill/timestream-odbc/releases/tag/v1.0.2) - 2021-09-17
## [v1.0.1](fake_link) - date
### Added
- Power BI Connector with AWS Profile and IAM authentication.
- Feature X

### Fixed
- Database and table names of 256 characters prevents data from loading in Excel and Power BI
- NULL catalog in SQLCatalog returns all columns.
- Describe and Show queries not working with SQLPrepare.

## [v1.0.2](https://github.com/Bit-Quill/timestream-odbc/releases/tag/v1.0.2) - 2021-09-17
### Fixed
- Okta authentication not working in 32-bit Amazon Linux 2.

## [v1.0.1](https://github.com/Bit-Quill/timestream-odbc/releases/tag/v1.0.1) - 2021-09-14
### Fixed
- Obfuscated the session token for IAM authentication in the ODBC user interface for Windows and make sure it is not in the logs.

## [v1.0.0](https://github.com/Bit-Quill/timestream-odbc/releases/tag/v1.0.0) - 2021-09-01
### Added
- 32 bit support for Amazon Linux 2.

## [v0.5.2](https://github.com/Bit-Quill/timestream-odbc/releases/tag/v0.5.2) - 2021-08-29
### Added
- Sample odbc.ini and odbcinst.ini files.
- Convert region to lower case when connecting.

### Fixed
- Don't treat trailing 0s as truncation during data conversion.
- Seg fault in TestSQLGetCursorName when no AWS credentials are supplied.
- Use exact number for longs in data-conversion.
- Driver version is now displayed in iODBC Administrator.

## [v0.5.1](https://github.com/Bit-Quill/timestream-odbc/releases/tag/v0.5.1) - 2021-08-17
### Added
- Big Sur support.
- Timestamps in logs.

### Fixed
- Invalid fieldnames when UserID/Password is empty in ODBC Administrator for Windows.
- Infinite loop in result cursor logic.
- Define DBMS_NAME for Linux and macOS.
- Simplified .deb and .rpm filenames.
- NPE in TestSQLGetCursorName.
- Updated default path for Windows logging.
- Updated AWS SDK version to 1.9.79.

## [v0.5.0](https://github.com/Bit-Quill/timestream-odbc/releases/tag/v0.5.0) - 2021-08-04
### Added
- More connection tests.

### Fixed
- Removed the version and bitness from the default path in the Windows ODBC installers.
- Set the default log level to "OFF" instead of "WARNING".
- Updated the DSN setup documentation for Windows.
- AWS AppSec Finding: Added nullptr checks before dereferencing.
- Tab order in ODBC UI for Windows.
- Hid fields in the ODBC UI for Windows instead of disabling them.
- Automated SQLCancel tests.

## [v0.4.3](https://github.com/Bit-Quill/timestream-odbc/releases/tag/v0.4.3) - 2021-07-29
### Added
- Merged tests into one executable
- Integration tests for data conversion
- Code coverage
- Performance test framework

### Fixed
- Removed the checks for ordinal position in SQLColumns tests
- AWS AppSec Finding: Memory out of bound error in makeConnectString

## [v0.4.2](https://github.com/Bit-Quill/timestream-odbc/releases/tag/v0.4.2) - 2021-07-20
### Fixed
- Renamed odfesqlodbc directory to odbcdriver and updated references
- Renamed odfeenlist directory to odbcdriverenlist and update references
- AWS AppSec Finding: Unsafe C functions that do not check memory bounds

## [v0.4.1](https://github.com/Bit-Quill/timestream-odbc/releases/tag/v0.4.1) - 2021-07-08
### Fixed
- Intermittent crash in Excel in multi-connection environments on disconnect. Aws::InitApi and Aws::ShutdownApi is now only called once per application instead of once per connection.

## [v0.4.0](https://github.com/Bit-Quill/timestream-odbc/releases/tag/v0.4.0) - 2021-07-07
### Added
- Linux 32-bit and Linux 64-bit support for the ODBC Driver
- Linux support for the ODBC sample client application

### Fixed
- Excessive memory usage
- Improved test cases
- Removed "ES_" and "TS_" from function and variable names
- All warnings in driver and enabled -Werror for Mac and Linux build
- Plus sign (+) not working in connection string
- Removed "es_" and "ts_" from filename prefixes
- Failing tests when using Okta or Azure AD authentication

## [v0.3.2](https://github.com/Bit-Quill/timestream-odbc/releases/tag/v0.3.2) - 2021-06-30
### Fixed
- Password appearing in plain text
- Plus sign not working in connection string values
- Possible malformed AzureAD/Okta request body

## [v0.3.0](https://github.com/Bit-Quill/timestream-odbc/releases/tag/v0.3.0) - 2021-06-15
### Added
- The ability to connect using Azure Active Directory and Okta.
- Support for SQL Metadata (SQLColumns, SQLTables, SQLGetInfo, SQLGetTypeInfo)
- Query Cancellation
- Support for Excel and PowerBI
### Changed
- Removed "ES_" and "TS_" from filenames
- Changed the user interface in Windows to mask the passwords and secret keys
- Paginated the results
- Changed SQLPrepare to get metadata rather than running the query

## [v0.2.0](https://github.com/Bit-Quill/timestream-odbc/releases/tag/v0.2.0) - 2021-03-26
### Added
- The ability to query data from Amazon Timestream.
- Full support for Amazon Timestream supported datatype: int, bigint, boolean, double, varchar, array[T,...], row(T,...), date, time, timestamp, interval, timeseries[row(timestamp,T,...)], unknown
- Support for SQL query execution (SQLPrepare, SQLExecute, SQLExecDirect)
- Support for SQL data type conversion (SQLGetData, SQLBindCol)
- Support for SQL results (SQLFetch, SQLMoreResults, SQLNumResultCols)
- Support for SQL column descriptors (SQLDescribe, SQLGetDescRec, SQLSetDescRec, SQLGetDescField, SQLSetDescField)
- Support `ProfileName` in `AWS_PROFILE` authentication mode
### Changed
- `AWS PROFILE` authentication mode to `AWS_PROFILE`
- Default log level from WARNING to OFF
- Removed the default log location for Windows

## [v0.1.0](https://github.com/Bit-Quill/timestream-odbc/releases/tag/v0.1.0) - 2021-02-12
### Added
- The ability to connect to Amazon Timestream using IAM and AWS Profile.
- The ability to retrieve row number from a Select query, but no support for any SQL data types yet.
### Fixed
- Memory leak in logging and query.

- Bug Y
36 changes: 18 additions & 18 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# Amazon Timestream ODBC Driver
# Database ODBC Driver

TimestreamODBC is a read-only ODBC driver for Windows, Mac and Linux for connecting to Amazon Timestream.
DatabaseODBC is a read-only ODBC driver for Windows, Mac and Linux for connecting to Database.

[![codecov](https://codecov.io/gh/Bit-Quill/timestream-odbc/branch/develop/graph/badge.svg?token=MNHPEGAK9D)](https://codecov.io/gh/Bit-Quill/timestream-odbc)
Code coverage badge placeholder.

## Specifications

Expand All @@ -23,19 +23,19 @@ You can use the installers generated from the most recent release

### Installing on Windows 10 or Windows Server 2019

1. Run `AmazonTimestreamODBC32-[version].msi` or `AmazonTimestreamODBC64-[version].msi` to install the Amazon Timestream ODBC Driver.
1. Run `DatabaseODBC32-[version].msi` or `DatabaseODBC64-[version].msi` to install the Database ODBC Driver.
2. [Configure the DSN entries](./docs/user/windows_configure_dsn.md) using ODBC Data Source Administrator.

### Installing on macOS Catalina or macOS Big Sur

[iODBC Driver Manager](http://www.iodbc.org/dataspace/doc/iodbc/wiki/iodbcWiki/Downloads) should be installed before installing the Amazon Timestream ODBC Driver on macOS.
[iODBC Driver Manager](http://www.iodbc.org/dataspace/doc/iodbc/wiki/iodbcWiki/Downloads) should be installed before installing the Database ODBC Driver on macOS.

1. Run `AmazonTimestreamODBC-[version].pkg` to install the Amazon Timestream ODBC Driver.
1. Run `DatabaseODBC-[version].pkg` to install the Database ODBC Driver.
2. [Configure the Driver and DSN entries](./docs/user/mac_configure_dsn.md).

### Installing the 32-bit deb file on Ubuntu 20.04 64-bit

The 32-bit dependencies need to be installed before installing the Amazon Timestream ODBC Driver on Ubuntu.
The 32-bit dependencies need to be installed before installing the Database ODBC Driver on Ubuntu.

```
sudo dpkg --add-architecture i386
Expand All @@ -50,22 +50,22 @@ You may also want to install [isql32](./tools/isql32) for testing. In the direct
* Type `quit` to exit interactive mode.

What needs to be installed to run?
1. Run `sudo dpkg -i ./AmazonTimestreamODBC_[version]_i386.deb` to install the Amazon Timestream ODBC Driver.
1. Run `sudo dpkg -i ./DatabaseODBC_[version]_i386.deb` to install the Database ODBC Driver.
2. [Configure the Driver and DSN entries](./docs/user/linux_configure_dsn.md).

### Installing the 64-bit deb file on Ubuntu 20.04
unixODBC should be installed before installing the Amazon Timestream ODBC Driver on Ubuntu.
unixODBC should be installed before installing the Database ODBC Driver on Ubuntu.

```
sudo apt update
sudo apt install unixodbc
```

1. Run `sudo dpkg -i ./AmazonTimestreamODBC_[version]_amd64.deb` to install the Amazon Timestream ODBC Driver.
1. Run `sudo dpkg -i ./DatabaseODBC_[version]_amd64.deb` to install the Database ODBC Driver.
2. [Configure the Driver and DSN entries](./docs/user/linux_configure_dsn.md).

### Installing the 32-bit rpm file on Amazon Linux 2
The 32-bit dependencies need to be installed before installing the Amazon Timestream ODBC Driver on Amazon Linux 2.
The 32-bit dependencies need to be installed before installing the Database ODBC Driver on Amazon Linux 2.

```
sudo yum update
Expand All @@ -79,17 +79,17 @@ You may also want to install [isql32](./tools/isql32) for testing. In the direct
* Type `quit` to exit interactive mode.

What needs to be installed to run?
1. Run `sudo rpm -U AmazonTimestreamODBC_[version]_i386.rpm` to install the Amazon Timestream ODBC Driver.
1. Run `sudo rpm -U DatabaseODBC_[version]_i386.rpm` to install the Database ODBC Driver.
2. [Configure the Driver and DSN entries](./docs/user/linux_configure_dsn.md).

### Installing the 64-bit rpm file on Amazon Linux 2
unixODBC should be installed before installing the Amazon Timestream ODBC Driver on Amazon Linux 2.
unixODBC should be installed before installing the Database ODBC Driver on Amazon Linux 2.

```
sudo yum update
sudo yum install unixODBC
```
1. Run `sudo rpm -U AmazonTimestreamODBC_[version]_x86_64.rpm` to install the Amazon Timestream ODBC Driver.
1. Run `sudo rpm -U DatabaseODBC_[version]_x86_64.rpm` to install the Database ODBC Driver.
2. [Configure the Driver and DSN entries](./docs/user/linux_configure_dsn.md).

## Using the Driver
Expand All @@ -99,10 +99,10 @@ The driver comes in the form of a library file:
* Mac: `libodbcdriver.dylib`
* Linux: `libodbcdriver.so`

If using with ODBC compatible BI tools, refer to the tool documentation on configuring a new ODBC driver. In most cases, you will need to make the tool aware of the location of the driver library file and then use it to setup Amazon Timestream database connections.
If using with ODBC compatible BI tools, refer to the tool documentation on configuring a new ODBC driver. In most cases, you will need to make the tool aware of the location of the driver library file and then use it to setup Database database connections.

### Excel
The Amazon Timestream ODBC driver supports both the Windows and macOS versions of Microsoft Excel.
The Database ODBC driver supports both the Windows and macOS versions of Microsoft Excel.

* [Microsoft Excel for Windows](./docs/user/microsoft_excel_support_win.md); or
* [Microsoft Excel for macOS](./docs/user/microsoft_excel_support_mac.md);
Expand All @@ -114,7 +114,7 @@ A list of options available for configuring driver behaviour is available [here]
To setup a connection, the driver uses an ODBC connection string. Connection strings are semicolon-delimited strings specifying the set of options to use for a connection. Typically, a connection string will either:

* specify a Data Source Name containing a pre-configured set of options (`DSN=xxx;`); or
* configure options explicitly using the connection string (`Region=xxx;Auth=xxx;LogLevel=7;...`)
* configure options explicitly using the connection string (`UID=xxx;PWD=xxx;Auth=xxx;LogLevel=7;...`)

### Enable ODBC Driver Manager Tracing
#### Windows
Expand Down Expand Up @@ -144,7 +144,7 @@ TraceFile = /tmp/odbctrace.out
### Troubleshooting

**Illegal parameter value for SQL_AUTOCOMMIT**
By default, the Amazon Timestream ODBC Driver sets `SQL_AUTOCOMMIT=OFF`. pyodbc.connect overrides this and sets the value to `ON`.
By default, the Database ODBC Driver sets `SQL_AUTOCOMMIT=OFF`. pyodbc.connect overrides this and sets the value to `ON`.

To resolve the issue, excitly set the value `pyodbc.connect(connstr,autocommit=True)`

Expand Down
2 changes: 1 addition & 1 deletion build_linux_debug64.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ cd aws-sdk-cpp
mkdir install
mkdir build
cd build
cmake ../ -DCMAKE_INSTALL_PREFIX="../install" -DCMAKE_BUILD_TYPE="Debug" -DBUILD_ONLY="core;sts;timestream-query" -DCUSTOM_MEMORY_MANAGEMENT="OFF" -DENABLE_TESTING="OFF" -DBUILD_SHARED_LIBS="OFF" -DCPP_STANDARD="17"
cmake ../ -DCMAKE_INSTALL_PREFIX="../install" -DCMAKE_BUILD_TYPE="Debug" -DBUILD_ONLY="core;sts" -DCUSTOM_MEMORY_MANAGEMENT="OFF" -DENABLE_TESTING="OFF" -DBUILD_SHARED_LIBS="OFF" -DCPP_STANDARD="17"
make -j 4
make install
cd ../../../
Expand Down
2 changes: 1 addition & 1 deletion build_linux_release32_deb.sh
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ cd aws-sdk-cpp
mkdir install
mkdir build
cd build
cmake ../ -DCMAKE_INSTALL_PREFIX="../install" -DCMAKE_BUILD_TYPE="Release" -DBUILD_ONLY="core;sts;timestream-query" -DCUSTOM_MEMORY_MANAGEMENT="OFF" -DENABLE_TESTING="OFF" -DBUILD_SHARED_LIBS="OFF" -DCMAKE_TOOLCHAIN_FILE="${TOOLCHAIN}" -DCPP_STANDARD="17"
cmake ../ -DCMAKE_INSTALL_PREFIX="../install" -DCMAKE_BUILD_TYPE="Release" -DBUILD_ONLY="core;sts" -DCUSTOM_MEMORY_MANAGEMENT="OFF" -DENABLE_TESTING="OFF" -DBUILD_SHARED_LIBS="OFF" -DCMAKE_TOOLCHAIN_FILE="${TOOLCHAIN}" -DCPP_STANDARD="17"
make -j 4
make install
cd ../../../
Expand Down
2 changes: 1 addition & 1 deletion build_linux_release32_rpm.sh
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ cd aws-sdk-cpp
mkdir install
mkdir build
cd build
cmake ../ -DCMAKE_INSTALL_PREFIX="../install" -DCMAKE_BUILD_TYPE="Release" -DBUILD_ONLY="core;sts;timestream-query" -DCUSTOM_MEMORY_MANAGEMENT="OFF" -DENABLE_TESTING="OFF" -DBUILD_SHARED_LIBS="OFF" -DCMAKE_TOOLCHAIN_FILE="${TOOLCHAIN}" -DCMAKE_C_STANDARD="99" -DCPP_STANDARD="11"
cmake ../ -DCMAKE_INSTALL_PREFIX="../install" -DCMAKE_BUILD_TYPE="Release" -DBUILD_ONLY="core;sts" -DCUSTOM_MEMORY_MANAGEMENT="OFF" -DENABLE_TESTING="OFF" -DBUILD_SHARED_LIBS="OFF" -DCMAKE_TOOLCHAIN_FILE="${TOOLCHAIN}" -DCMAKE_C_STANDARD="99" -DCPP_STANDARD="11"
make -j 4
make install
cd ../../../
Expand Down
2 changes: 1 addition & 1 deletion build_linux_release64_deb.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ cd aws-sdk-cpp
mkdir install
mkdir build
cd build
cmake ../ -DCMAKE_INSTALL_PREFIX="../install" -DCMAKE_BUILD_TYPE="Release" -DBUILD_ONLY="core;sts;timestream-query" -DCUSTOM_MEMORY_MANAGEMENT="OFF" -DENABLE_TESTING="OFF" -DBUILD_SHARED_LIBS="OFF" -DCPP_STANDARD="17"
cmake ../ -DCMAKE_INSTALL_PREFIX="../install" -DCMAKE_BUILD_TYPE="Release" -DBUILD_ONLY="core;sts" -DCUSTOM_MEMORY_MANAGEMENT="OFF" -DENABLE_TESTING="OFF" -DBUILD_SHARED_LIBS="OFF" -DCPP_STANDARD="17"
make -j 4
make install
cd ../../../
Expand Down
2 changes: 1 addition & 1 deletion build_linux_release64_rpm.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ cd aws-sdk-cpp
mkdir install
mkdir build
cd build
cmake ../ -DCMAKE_INSTALL_PREFIX="../install" -DCMAKE_BUILD_TYPE="Release" -DBUILD_ONLY="core;sts;timestream-query" -DCUSTOM_MEMORY_MANAGEMENT="OFF" -DENABLE_TESTING="OFF" -DBUILD_SHARED_LIBS="OFF" -DCPP_STANDARD="17"
cmake ../ -DCMAKE_INSTALL_PREFIX="../install" -DCMAKE_BUILD_TYPE="Release" -DBUILD_ONLY="core;sts" -DCUSTOM_MEMORY_MANAGEMENT="OFF" -DENABLE_TESTING="OFF" -DBUILD_SHARED_LIBS="OFF" -DCPP_STANDARD="17"
make -j 4
make install
cd ../../../
Expand Down
2 changes: 1 addition & 1 deletion build_mac_debug64.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ cd aws-sdk-cpp
mkdir install
mkdir build
cd build
cmake ../ -DCMAKE_INSTALL_PREFIX="../install" -DCMAKE_BUILD_TYPE="Debug" -DBUILD_ONLY="core;sts;timestream-query" -DCUSTOM_MEMORY_MANAGEMENT="OFF" -DENABLE_TESTING="OFF" -DBUILD_SHARED_LIBS="OFF" -DCPP_STANDARD="17"
cmake ../ -DCMAKE_INSTALL_PREFIX="../install" -DCMAKE_BUILD_TYPE="Debug" -DBUILD_ONLY="core;sts" -DCUSTOM_MEMORY_MANAGEMENT="OFF" -DENABLE_TESTING="OFF" -DBUILD_SHARED_LIBS="OFF" -DCPP_STANDARD="17"
make -j 4
make install
cd ../../../
Expand Down
2 changes: 1 addition & 1 deletion build_mac_release64.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ cd aws-sdk-cpp
mkdir install
mkdir build
cd build
cmake ../ -DCMAKE_INSTALL_PREFIX="../install" -DCMAKE_BUILD_TYPE="Release" -DBUILD_ONLY="core;sts;timestream-query" -DCUSTOM_MEMORY_MANAGEMENT="OFF" -DENABLE_TESTING="OFF" -DBUILD_SHARED_LIBS="OFF" -DCPP_STANDARD="17"
cmake ../ -DCMAKE_INSTALL_PREFIX="../install" -DCMAKE_BUILD_TYPE="Release" -DBUILD_ONLY="core;sts" -DCUSTOM_MEMORY_MANAGEMENT="OFF" -DENABLE_TESTING="OFF" -DBUILD_SHARED_LIBS="OFF" -DCPP_STANDARD="17"
make -j 4
make install
cd ../../../
Expand Down
14 changes: 7 additions & 7 deletions docs/dev/BUILD_INSTRUCTIONS.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
# Amazon Timestream ODBC Driver Build Instructions
# Database ODBC Driver Build Instructions

## Windows
* [Building the Amazon Timestream ODBC Driver](./build_win.md)
* [Running the Amazon Timestream ODBC Driver Automated Tests](./run_tests_win.md)
* [Building the Database ODBC Driver](./build_win.md)
* [Running the Database ODBC Driver Automated Tests](./run_tests_win.md)
* [Configuring a DSN](../user/windows_configure_dsn.md)

## Mac
* [Building the Amazon Timestream ODBC Driver](./build_mac.md)
* [Running the Amazon Timestream ODBC Driver Automated Tests](./run_tests_mac.md)
* [Building the Database ODBC Driver](./build_mac.md)
* [Running the Database ODBC Driver Automated Tests](./run_tests_mac.md)
* [Configuring a DSN](../user/mac_configure_dsn.md)

## Linux
* [Building the Amazon Timestream ODBC Driver](./build_linux.md)
* [Running the Amazon Timestream ODBC Driver Automated Tests](./run_tests_linux.md)
* [Building the Database ODBC Driver](./build_linux.md)
* [Running the Database ODBC Driver Automated Tests](./run_tests_linux.md)
* [Configuring a DSN](../user/linux_configure_dsn.md)

## Power BI Connector
Expand Down
Loading

0 comments on commit 5e79273

Please sign in to comment.