Skip to content

TODOs #2

Closed
Closed
@bpintea

Description

@bpintea
Status Item PR Brief Notes
core: DSN handling #1 Add support for handling and generating connection strings
core: progress #SQLGetInfo() #3
#14
#18
This function is the main entry point for an app to query driver + data source capabilities * 150+ attributes;
* Bring SQLGetStmtAttr() to the level of Set~;
( ✓ ) core: cover all API calls #14
#64
#80
#98
Implement all API functions used by the reference Apps (Tableau, Excel)
core: remove direct registry access #110 use odbccp32.dll's SQLGetPrivateProfileString() & co.
WIP core: data conversions touch-ups #118
#130
* fail quickly on unsupported, object, binary(?), GUID(?);
* string→ time/date/timestamp review/redo;
* numeric/decimal review/redo;
protocol : data conversions #3
#7
#9
#10
Convert data from ES/SQL SQL to SQL C types Data Type Conversions
protocol : data types loading #5
#6
#100
Conversion between ES/SQL ↔ standard SQL types col base name, table & base table name left empty / for later
protocol : catalog support #6 Fetch catalog info from ES and export it to the application based on https://github.com/elastic/x-pack-elasticsearch/issues/3832
protocol : schema support Fetch schema info from ES and export it to the application
protocol : parameterized execution #11 Support for parameters in a prepared statement
protocol : cluster "sniffing"/detection read cluster members, (potentially) round-robin the requests
protocol : read cluster version/name #84 The data source version is reported upstream to the application
protocol : close scroller, if any #102 If application doesn't fetch all results, scroller is left to time-out
API : array of parameters Support for binding arrays of parameters
API : batching support Support for multiple result-sets
API : data-at-exec "Long" data is typically sent out to the data source at execution time, not preparation/binding time. This item would support this functionality. This is mostly done for statements that add data to the data source, which is currently not possible with ES/SQL -> low prio
arch: SPI/connection pooling Support for DM connection pooling
core : multi-threading #16 Multi-threading capabilities This is basic requirement
core : auth/encryption #23
#24
Support for user authentication over an encrypted connection This is basic requirement
( ✓ ) core : scrollable cursors Support for non-forward-only cursors Requires support in ES/SQL for scrollable cursors.
( ✓ ) arch : Win 7/8 Testing and adapting to Win7 and Win8
transport : CBOR #169
#172
#175
#177
#180
add CBOR encapsulation, besides JSON
tests #7
#9
#10
#96
Frameworks in place for: unit, integration, smoke, functional (Excel, Tableau)
arch : ANSI support Make an ANSI variant of the driver * Not a high prio, it depends on how old the clients for the driver might be;
* extend tstr_t usage;
* review assumption of SQLWCHAR as always wchar_t (vs. unsigned short, problematic with non-Windows pre-C95 compilers)
arch : 32 bit support #63
#74
#76
#79
Support for Windows 32bit platforms
WIP core : clean-up the list of TODO/FIXMEs in code #8
#12
#15
#20
#98
Many mandatory, but not "main path" features are left out as TODOs
arch : iODBC/unixODBC Add support for the *nix platforms
delivery : set-up DLL #13 A new library that takes care of the installation and set-up Installer DLL
This is different from general packaging (see next item)
delivery : Installer elastic/windows-installers#218
#19
https://github.com/elastic/release-manager/issues/423
#22
#38
A program that is launched to install the ES/ODBC driver This can be an .exe, .msi written in any specific environment/language
GUI: user prompting for connection details elastic/windows-installers#218
#32
#38
Implement a GUI for promting the user for the connection details
delivery : 3rd party deps report #17
#126
Generate 3rd party dependencies reports https://github.com/elastic/release-manager/issues/207
( ✓ ) delivery : translation DLL A new library that takes care of encoding translations Not a high prio
core: support for 2.x applications (1.x?) ODBC 2.x applications expect slightly different return codes, though mostly the same behavior * SQL_X_Y, X in [COLUMN(2.x), DESC(3.x)], Y in [LENGTH, PRECISION, SCALE] for API functions ref'd in ColSz,DecDigs,XferLen,DispSz
core: better logging: #4
#39
handler- and connection-dependent logging
( ✓ ) core: escape sequences analyse what to handle in the driver and what in the plug-in Implemented on the server side
docs: driver #55 Documenting the usage of the driver, options, limitations
docs: integration #55
#68
Document setting up ES/ODBC with popular applications (Tableau, Excel)

Metadata

Metadata

Assignees

No one assigned

    Labels

    >enhancementmetaGeneric issue tracking specific issues

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions