sql-jdbc/src/main/java/org/opensearch/jdbc/ResultSetImpl.java (10 lines): - line 135: * TODO: Refactor as suggested https://github.com/opendistro-for-elasticsearch/sql-jdbc/pull/76#discussion_r421571383 - line 309: // TODO - add support? - line 324: // TODO - add ByteArrayType support - line 356: // TODO - add/check support - line 603: // TODO - add support? - line 610: // TODO - add support? - line 1074: // TODO - implement? - line 1080: // TODO - implement? - line 1106: // TODO - implement - line 1112: // TODO - implement sql-odbc/src/sqlodbc/opensearch_info.cpp (7 lines): - line 13: // TODO #324 (SQL Plugin)- Update if OpenSearch extends support for multiple - line 416: // TODO #324 (SQL Plugin)- Fix patterns and escape characters for this - line 485: // TODO #630 - Revisit logic of adding tuples for SQLTables & SQLColumns - line 584: // TODO #324 (SQL Plugin)- Should these be unique? - line 650: // TODO #325 (SQL Plugin)- Fix patterns and escape characters for this - line 782: // TODO #324 (SQL Plugin)- evaluate catalog & schema support - line 848: // TODO #324 (SQL Plugin)- evaluate catalog & schema support sql-jdbc/src/main/java/org/opensearch/jdbc/PreparedStatementImpl.java (4 lines): - line 47: // TODO - support String representations containing Timestamp With Timezone - line 250: // TODO support java.time.* and JDBCType.TIME_WITH_TIMEZONE/JDBCType.TIMESTAMP_WITH_TIMEZONE - line 344: // TODO - implement - line 360: // TODO - implement? sql-odbc/src/sqlodbc/opensearch_communication.cpp (4 lines): - line 250: // TODO #35 - Check if they expect NULL or "" when there is no error. - line 284: // TODO: get error message from CheckConnectionOptions - line 819: // TODO #36 - Send query to database to get encoding - line 824: // TODO #36 - Send query to database to set encoding legacy/src/main/java/org/opensearch/sql/legacy/query/AggregationQueryAction.java (3 lines): - line 77: // TODO: Consider removing that condition - line 218: // TODO: Is there a legit case when we want to add field into sort for aggregation queries? - line 278: // TODO: Explore other ways to correlate different fields/functions in the query (params?) opensearch/src/main/java/org/opensearch/sql/opensearch/request/system/OpenSearchDescribeIndexRequest.java (3 lines): - line 45: * engine. TODO: geo, ip etc. - line 130: // TODO Defaulting to unknown, need to check this - line 134: // TODO Defaulting to unknown, need to check sql-jdbc/src/main/java/org/opensearch/jdbc/transport/http/ApacheHttpTransport.java (3 lines): - line 125: // TODO - can apply settings retry & backoff - line 172: // TODO - can add alias selection strategy - line 173: // TODO - can add support for a separate property for key password legacy/src/main/java/org/opensearch/sql/legacy/executor/format/DescribeResultSet.java (3 lines): - line 131: data.put("NULLABLE", 2); // TODO Defaulting to 2, need to find a way to check this - line 133: data.put("IS_NULLABLE", ""); // TODO Defaulting to unknown, need to check this - line 135: data.put("IS_GENERATEDCOLUMN", ""); // TODO Defaulting to unknown, need to check sql-odbc/src/sqlodbc/opensearch_connection.cpp (3 lines): - line 134: // TODO #36 - When we fix encoding, we should look into returning a code here. - line 147: // TODO #36 - Add return code - see above function comment - line 154: // TODO #34 - Investigate locale sql-cli/src/opensearch_sql_cli/formatter.py (2 lines): - line 66: # TODO: remove this after #311 in sql repo is fixed - line 95: # TODO: if decided to add row_limit. Refer to pgcli -> main -> line 866. core/src/main/java/org/opensearch/sql/expression/text/TextFunction.java (2 lines): - line 142: * TODO: https://github.com/opendistro-for-elasticsearch/sql/issues/710 - line 155: * TODO: https://github.com/opendistro-for-elasticsearch/sql/issues/710 opensearch/src/main/java/org/opensearch/sql/opensearch/storage/OpenSearchIndex.java (2 lines): - line 55: * TODO: Assume indexName doesn't have wildcard. - line 68: * TODO: Push down operations to index scan operator as much as possible in future. sql-cli/src/opensearch_sql_cli/opensearchsql_cli.py (2 lines): - line 64: # TODO: Optimize index suggestion to serve indices options only at the needed position, such as 'from' - line 77: # TODO: add history, refer to pgcli approach legacy/src/main/java/org/opensearch/sql/legacy/executor/format/Protocol.java (2 lines): - line 198: // TODO String separator is being kept to "|" for the time being as using "\t" will require formatting since - line 199: // TODO tabs are occurring in multiple of 4 (one option is Guava's Strings.padEnd() method) sql-jdbc/src/main/java/org/opensearch/jdbc/DatabaseMetaDataImpl.java (2 lines): - line 674: // TODO - when server plugin supports PreparedStatement fully, implement this as a preparedStatment with params - line 1209: // TODO - once sql plugin supports PreparedStatement fully, do this through a preparedStatement with params sql-odbc/src/sqlodbc/odbcapiw.c (2 lines): - line 888: // TODO (#590): Add implementations for remaining ODBC 2.x function - line 1029: // TODO (#612): Verify wide character conversion opensearch/src/main/java/org/opensearch/sql/opensearch/client/OpenSearchRestClient.java (1 line): - line 36: *

TODO: Support for authN and authZ with AWS Sigv4 or security plugin. sql-odbc/src/sqlodbc/opensearch_communication.h (1 line): - line 85: // TODO #35 - Go through and add error messages on exit conditions sql-jdbc/src/main/java/org/opensearch/jdbc/types/TypeConverters.java (1 line): - line 38: // TODO - JDBCType.VARBINARY - byte[] -> Try OpenSearch data type sql-jdbc/src/main/java/org/opensearch/jdbc/protocol/http/JsonHttpResponseHandler.java (1 line): - line 109: // TODO - limit the amount read from response.getEntity() ? sql-cli/src/opensearch_sql_cli/opensearch_connection.py (1 line): - line 160: # TODO: consider add evaluator/handler to filter obviously-invalid input, sql-odbc/src/sqlodbc/mylog.c (1 line): - line 235: // TODO (#585): Add option to log to stderr stream legacy/src/main/java/org/opensearch/sql/legacy/query/DefaultQueryAction.java (1 line): - line 235: // TODO: Investigate how to find the type of expression (string or number) sql-cli/src/opensearch_sql_cli/opensearch_style.py (1 line): - line 80: # TODO: cli helpers will have to switch to ptk.Style sql-cli/src/opensearch_sql_cli/main.py (1 line): - line 97: # TODO add validation for endpoint to avoid the cost of connecting to some obviously invalid endpoint sql-jdbc/src/main/java/org/opensearch/jdbc/ConnectionImpl.java (1 line): - line 401: // TODO - implement through a HEAD or a GET to "/", or a dummy SQL? sql-odbc/src/sqlodbc/odbcapi.c (1 line): - line 1280: // TODO (#590): Add implementations for remaining ODBC 2.x function workbench/public/components/QueryResults/QueryResults.tsx (1 line): - line 238: // Action button with list of tabs, TODO: disable tabArrowRight and tabArrowLeft when no more scrolling is possible core/src/main/java/org/opensearch/sql/planner/Planner.java (1 line): - line 37: * TODO: for now just delegate entire logical plan to storage engine. sql-odbc/src/sqlodbc/multibyte.c (1 line): - line 328: // TODO #34 - Investigate locale handling on Mac core/src/main/java/org/opensearch/sql/expression/function/BuiltinFunctionRepository.java (1 line): - line 102: // TODO: Remove this special case after fixing all failed UTs sql/src/main/java/org/opensearch/sql/sql/parser/AstBuilder.java (1 line): - line 123: if (ctx.selectElements().star != null) { //TODO: project operator should be required? plugin/src/main/java/org/opensearch/sql/plugin/rest/RestPPLQueryAction.java (1 line): - line 171: * TODO: need to extract an interface for both SQL and PPL action handler and move these legacy/src/main/java/org/opensearch/sql/legacy/executor/join/NestedLoopsElasticExecutor.java (1 line): - line 267: // //TODO: support all orders and for each OPEAR find his related OPEAR (< is > , EQ is EQ ,etc..) sql-jdbc/src/main/java/org/opensearch/jdbc/internal/util/UrlParser.java (1 line): - line 58: // TODO - support percent encoding for URL reserved characters legacy/src/main/java/org/opensearch/sql/legacy/request/PreparedStatementRequest.java (1 line): - line 137: // TODO: investigate other injection prevention sql-jdbc/src/main/java/org/opensearch/jdbc/Driver.java (1 line): - line 56: // TODO - implement this? legacy/src/main/java/org/opensearch/sql/legacy/executor/format/SelectResultSet.java (1 line): - line 384: // TODO: return type information is disconnected from the function definitions in SQLFunctions. legacy/src/main/java/org/opensearch/sql/legacy/antlr/semantic/types/function/ScalarFunction.java (1 line): - line 36: CONCAT(), // TODO: varargs support required legacy/src/main/java/org/opensearch/sql/legacy/utils/Util.java (1 line): - line 220: // TODO: seems like a bug, either fix, or just get rid of for loop and remove the first key legacy/src/main/java/org/opensearch/sql/legacy/rewriter/matchtoterm/TermFieldScope.java (1 line): - line 59: // TODO: Merge mappings if they are compatible, for text and text/keyword to text/keyword. opensearch/src/main/java/org/opensearch/sql/opensearch/client/OpenSearchNodeClient.java (1 line): - line 94: * TODO: Scroll doesn't work for aggregation. Support aggregation later. legacy/src/main/java/org/opensearch/sql/legacy/query/planner/resource/blocksize/AdaptiveBlockSize.java (1 line): - line 22: //TODO: calculate dynamically on each call