Changeset: cdbf20f8d15d for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=cdbf20f8d15d Added Files: sql/test/BugTracker-2013/Tests/copy-into-compressed.Bug-3351.sql.in sql/test/BugTracker-2013/Tests/copy-into-compressed.Bug-3351.stable.err sql/test/BugTracker-2013/Tests/copy-into-compressed.Bug-3351.stable.out sql/test/BugTracker-2013/Tests/median.Bug-3352.sql sql/test/BugTracker-2013/Tests/median.Bug-3352.stable.err sql/test/BugTracker-2013/Tests/median.Bug-3352.stable.out sql/test/BugTracker-2013/Tests/test3351.csv sql/test/BugTracker-2013/Tests/test3351.csv.bz2 sql/test/BugTracker-2013/Tests/test3351.csv.gz Modified Files: clients/odbc/driver/ODBCConvert.c clients/odbc/driver/ODBCGlobal.h clients/odbc/driver/ODBCUtil.c clients/odbc/driver/ODBCUtil.h clients/odbc/driver/SQLBindParameter.c clients/odbc/driver/SQLBrowseConnect.c clients/odbc/driver/SQLColAttribute.c clients/odbc/driver/SQLColAttributes.c clients/odbc/driver/SQLColumnPrivileges.c clients/odbc/driver/SQLColumns.c clients/odbc/driver/SQLConnect.c clients/odbc/driver/SQLDataSources.c clients/odbc/driver/SQLDescribeCol.c clients/odbc/driver/SQLDriverConnect.c clients/odbc/driver/SQLDrivers.c clients/odbc/driver/SQLError.c clients/odbc/driver/SQLExecDirect.c clients/odbc/driver/SQLExecute.c clients/odbc/driver/SQLForeignKeys.c clients/odbc/driver/SQLGetConnectAttr.c clients/odbc/driver/SQLGetConnectOption.c clients/odbc/driver/SQLGetCursorName.c clients/odbc/driver/SQLGetDescField.c clients/odbc/driver/SQLGetDescRec.c clients/odbc/driver/SQLGetDiagField.c clients/odbc/driver/SQLGetDiagRec.c clients/odbc/driver/SQLGetInfo.c clients/odbc/driver/SQLGetStmtAttr.c clients/odbc/driver/SQLGetTypeInfo.c clients/odbc/driver/SQLNativeSql.c clients/odbc/driver/SQLPrepare.c clients/odbc/driver/SQLPrimaryKeys.c clients/odbc/driver/SQLProcedureColumns.c clients/odbc/driver/SQLProcedures.c clients/odbc/driver/SQLSetConnectAttr.c clients/odbc/driver/SQLSetConnectOption.c clients/odbc/driver/SQLSetCursorName.c clients/odbc/driver/SQLSetDescField.c clients/odbc/driver/SQLSetStmtAttr.c clients/odbc/driver/SQLSpecialColumns.c clients/odbc/driver/SQLStatistics.c clients/odbc/driver/SQLTablePrivileges.c clients/odbc/driver/SQLTables.c common/stream/stream.c monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.err monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out monetdb5/mal/Tests/tst1200.mal monetdb5/mal/Tests/tst1200.stable.out monetdb5/mal/Tests/tst1201.mal monetdb5/mal/Tests/tst1201.stable.out monetdb5/mal/Tests/tst1202.mal monetdb5/mal/Tests/tst1202.stable.out monetdb5/mal/Tests/tst1205.mal monetdb5/mal/Tests/tst1205.stable.out monetdb5/modules/atoms/mtime.c monetdb5/modules/atoms/mtime.h monetdb5/modules/atoms/mtime.mal sql/backends/monet5/UDF/Tests/udf-fuse.stable.out sql/backends/monet5/UDF/Tests/udf-reverse.stable.out sql/backends/monet5/rel_bin.c sql/backends/monet5/sql_statement.c sql/common/sql_hash.c sql/common/sql_list.c sql/common/sql_types.c sql/include/sql_list.h sql/server/rel_exp.c sql/server/rel_optimizer.c sql/server/rel_psm.c sql/server/rel_select.c sql/server/rel_updates.c sql/test/BugTracker-2009/Tests/POWER_vs_prod.SF-2596114.stable.out sql/test/BugTracker-2009/Tests/ambiguous_order_by.SF-2827916.stable.err sql/test/BugTracker-2009/Tests/ambiguous_view.stable.err sql/test/BugTracker-2009/Tests/assert_in_update.SF-2807336.stable.err sql/test/BugTracker-2009/Tests/copy_into_error_off_by_one.SF-2833696.stable.err sql/test/BugTracker-2009/Tests/copy_multiple_files.SF-2902320.stable.err sql/test/BugTracker-2009/Tests/create_on_ro_db_crash.SF-2830238.stable.err sql/test/BugTracker-2009/Tests/create_table_dup_name.SF-2879005.stable.err sql/test/BugTracker-2009/Tests/drop-sequence-crash.SF-2854195.stable.err sql/test/BugTracker-2009/Tests/except_error_wrong.SF-2808409.stable.err sql/test/BugTracker-2009/Tests/explain_gives_crash.SF-2741829.stable.err sql/test/BugTracker-2009/Tests/explain_gives_crash.SF-2741829.stable.out sql/test/BugTracker-2009/Tests/incomplete.SF.2536893.stable.err sql/test/BugTracker-2009/Tests/insert_into_values_bug.SF-2807609.stable.err sql/test/BugTracker-2009/Tests/limit_in_subquery.SF-2620437.stable.err sql/test/BugTracker-2009/Tests/not_invalidtable_crash.SF-2927174.stable.err sql/test/BugTracker-2009/Tests/overflow.SF-2853458.stable.err sql/test/BugTracker-2009/Tests/primekeyconstraint.SF-2783425.stable.err sql/test/BugTracker-2009/Tests/rollback_bug.stable.err sql/test/BugTracker-2009/Tests/rollback_mistake.SF-2814622.stable.err sql/test/BugTracker-2009/Tests/segv_for_unknown_identifier_in_subquery.SF-2874045.stable.err sql/test/BugTracker-2009/Tests/select_X_where_bla_EQ_whatever.SF-282597.stable.err sql/test/BugTracker-2009/Tests/select_from_history.SF-2556566.stable.err sql/test/BugTracker-2009/Tests/subquery_returns_table_crash.SF-2513620.stable.err sql/test/BugTracker-2009/Tests/temp_table_fail_leaves_data.SF-2793286.stable.err sql/test/BugTracker-2009/Tests/temporary_table_leftover.SF-2734713.stable.err sql/test/BugTracker-2009/Tests/unique_constraint_on_char.SF-2873564.stable.err sql/test/BugTracker-2009/Tests/wrong_error_message.SF-2637051.stable.err sql/test/BugTracker-2010/Tests/LIMIT_OFFSET_big-endian.Bug-2622.stable.out sql/test/BugTracker-2010/Tests/TypeException_with_missing_function.Bug-2674.stable.err sql/test/BugTracker-2010/Tests/call_function_without_warning.Bug-2752.stable.err sql/test/BugTracker-2010/Tests/copy-into-too-long-string.Bug-2358.stable.err sql/test/BugTracker-2010/Tests/crash_default_unlocked.Bug-2744.stable.err sql/test/BugTracker-2010/Tests/crash_on_in_2.Bug-2604.stable.err sql/test/BugTracker-2010/Tests/crashonschema.Bug-2547.stable.err sql/test/BugTracker-2010/Tests/duplicate-key.Bug-2667.stable.err sql/test/BugTracker-2010/Tests/error-truncated.Bug-2615.stable.err sql/test/BugTracker-2010/Tests/group-by_ordered_column.Bug-2564.stable.out sql/test/BugTracker-2010/Tests/incomplete-utf8-sequence.Bug-2575.stable.err sql/test/BugTracker-2010/Tests/prepare_stmt.Bug-2533.Bug-2534.stable.err sql/test/BugTracker-2010/Tests/second_function_existing_signature.Bug-2611.stable.err sql/test/BugTracker-2010/Tests/select_from_seq.Bug-2730.stable.err sql/test/BugTracker-2010/Tests/select_star.Bug-2563.stable.err sql/test/BugTracker-2010/Tests/sequence-restart-with-null.Bug-2648.stable.err sql/test/BugTracker-2010/Tests/subselect.Bug-2537.stable.err sql/test/BugTracker-2010/Tests/sum_on_date_crash.Bug-2643.stable.err sql/test/BugTracker-2010/Tests/times-crash.Bug-2586.stable.err sql/test/BugTracker-2010/Tests/wrong_error_message_dropping_view.Bug-2713.stable.err sql/test/BugTracker-2012/Tests/create_function.Bug-3172.stable.err sql/test/BugTracker-2012/Tests/rewrite_like_into_likesubselect.Bug-3179.stable.out sql/test/BugTracker-2012/Tests/table_function_with_column_subselects.Bug-3172.stable.err sql/test/BugTracker-2013/Tests/All sql/test/BugTracker-2013/Tests/between.Bug-3259.stable.out sql/test/BugTracker/Tests/explain.SF-1739353.stable.out sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out sql/test/Dependencies/Tests/Dependencies.stable.out sql/test/leaks/Tests/check1.stable.out sql/test/leaks/Tests/check2.stable.out sql/test/leaks/Tests/check3.stable.out sql/test/leaks/Tests/check4.stable.out sql/test/leaks/Tests/check5.stable.out Branch: default Log Message:
Merge with Feb2013 branch. diffs (truncated from 7692 to 300 lines): diff --git a/clients/odbc/driver/ODBCConvert.c b/clients/odbc/driver/ODBCConvert.c --- a/clients/odbc/driver/ODBCConvert.c +++ b/clients/odbc/driver/ODBCConvert.c @@ -397,13 +397,12 @@ ODBCDefaultType(ODBCDescRec *rec) case SQL_LONGVARCHAR: case SQL_DECIMAL: case SQL_NUMERIC: + case SQL_GUID: return SQL_C_CHAR; -#ifdef WITH_WCHAR case SQL_WCHAR: case SQL_WVARCHAR: case SQL_WLONGVARCHAR: return SQL_C_WCHAR; -#endif case SQL_BIT: return SQL_C_BIT; case SQL_TINYINT: @@ -455,8 +454,6 @@ ODBCDefaultType(ODBCDescRec *rec) return SQL_C_INTERVAL_HOUR_TO_SECOND; case SQL_INTERVAL_MINUTE_TO_SECOND: return SQL_C_INTERVAL_MINUTE_TO_SECOND; - case SQL_GUID: - return SQL_C_GUID; } return 0; } @@ -1093,8 +1090,6 @@ ODBCFetch(ODBCStmt *stmt, /* see SQLExecute.c for possible types */ switch (sql_type) { - case SQL_CHAR: - break; case SQL_DECIMAL: case SQL_TINYINT: case SQL_SMALLINT: @@ -1215,9 +1210,7 @@ ODBCFetch(ODBCStmt *stmt, switch (type) { case SQL_C_CHAR: -#ifdef WITH_WCHAR case SQL_C_WCHAR: -#endif { SQLPOINTER origptr; SQLLEN origbuflen; @@ -1237,20 +1230,21 @@ ODBCFetch(ODBCStmt *stmt, origbuflen = buflen; origlenp = lenp; -#ifdef WITH_WCHAR if (type == SQL_C_WCHAR) { /* allocate temporary space */ buflen = 511; /* should be enough for most types */ if (data != NULL && (sql_type == SQL_CHAR || sql_type == SQL_VARCHAR || - sql_type == SQL_LONGVARCHAR)) + sql_type == SQL_LONGVARCHAR || + sql_type == SQL_WCHAR || + sql_type == SQL_WVARCHAR || + sql_type == SQL_WLONGVARCHAR)) buflen = (SQLLEN) datalen + 1; /* but this is certainly enough for strings */ ptr = malloc(buflen); lenp = NULL; } -#endif switch (sql_type) { SQLLEN sz; @@ -1258,6 +1252,9 @@ ODBCFetch(ODBCStmt *stmt, case SQL_CHAR: case SQL_VARCHAR: case SQL_LONGVARCHAR: + case SQL_WCHAR: + case SQL_WVARCHAR: + case SQL_WLONGVARCHAR: copyString(data, datalen, ptr, buflen, lenp, SQLLEN, addStmtError, stmt, return SQL_ERROR); break; case SQL_BINARY: @@ -1272,10 +1269,8 @@ ODBCFetch(ODBCStmt *stmt, if (buflen < 0) { /* Invalid string or buffer length */ addStmtError(stmt, "HY090", NULL, 0); -#ifdef WITH_WCHAR if (type == SQL_C_WCHAR) free(ptr); -#endif return SQL_ERROR; } for (k = 0; k < datalen; k++) { @@ -1289,10 +1284,8 @@ ODBCFetch(ODBCStmt *stmt, /* should not happen */ /* General error */ addStmtError(stmt, "HY000", "Unexpected data from server", 0); -#ifdef WITH_WCHAR if (type == SQL_C_WCHAR) free(ptr); -#endif return SQL_ERROR; } if (k & 1) { @@ -1324,10 +1317,8 @@ ODBCFetch(ODBCStmt *stmt, /* Numeric value out of range */ addStmtError(stmt, "22003", NULL, 0); -#ifdef WITH_WCHAR if (type == SQL_C_WCHAR) free(ptr); -#endif return SQL_ERROR; } if (lenp) @@ -1360,10 +1351,8 @@ ODBCFetch(ODBCStmt *stmt, * of range */ addStmtError(stmt, "22003", NULL, 0); -#ifdef WITH_WCHAR if (type == SQL_C_WCHAR) free(ptr); -#endif return SQL_ERROR; } /* current precision (i) doesn't fit, @@ -1388,10 +1377,8 @@ ODBCFetch(ODBCStmt *stmt, /* Numeric value out of range */ addStmtError(stmt, "22003", NULL, 0); -#ifdef WITH_WCHAR if (type == SQL_C_WCHAR) free(ptr); -#endif return SQL_ERROR; } data = (char *) ptr; @@ -1413,10 +1400,8 @@ ODBCFetch(ODBCStmt *stmt, /* Numeric value out of range */ addStmtError(stmt, "22003", NULL, 0); -#ifdef WITH_WCHAR if (type == SQL_C_WCHAR) free(ptr); -#endif return SQL_ERROR; } data = (char *) ptr; @@ -1448,10 +1433,8 @@ ODBCFetch(ODBCStmt *stmt, /* Numeric value out of range */ addStmtError(stmt, "22003", NULL, 0); -#ifdef WITH_WCHAR if (type == SQL_C_WCHAR) free(ptr); -#endif return SQL_ERROR; } if (lenp) @@ -1487,10 +1470,8 @@ ODBCFetch(ODBCStmt *stmt, /* Numeric value out of range */ addStmtError(stmt, "22003", NULL, 0); -#ifdef WITH_WCHAR if (type == SQL_C_WCHAR) free(ptr); -#endif return SQL_ERROR; } if (lenp) @@ -1507,10 +1488,8 @@ ODBCFetch(ODBCStmt *stmt, /* Numeric value out of range */ addStmtError(stmt, "22003", NULL, 0); -#ifdef WITH_WCHAR if (type == SQL_C_WCHAR) free(ptr); -#endif return SQL_ERROR; } if (lenp) @@ -1527,10 +1506,8 @@ ODBCFetch(ODBCStmt *stmt, /* Numeric value out of range */ addStmtError(stmt, "22003", NULL, 0); -#ifdef WITH_WCHAR if (type == SQL_C_WCHAR) free(ptr); -#endif return SQL_ERROR; } if (lenp) @@ -1546,10 +1523,8 @@ ODBCFetch(ODBCStmt *stmt, /* Numeric value out of range */ addStmtError(stmt, "22003", NULL, 0); -#ifdef WITH_WCHAR if (type == SQL_C_WCHAR) free(ptr); -#endif return SQL_ERROR; } if (lenp) @@ -1566,10 +1541,8 @@ ODBCFetch(ODBCStmt *stmt, /* Numeric value out of range */ addStmtError(stmt, "22003", NULL, 0); -#ifdef WITH_WCHAR if (type == SQL_C_WCHAR) free(ptr); -#endif return SQL_ERROR; } if (lenp) @@ -1587,10 +1560,8 @@ ODBCFetch(ODBCStmt *stmt, /* Numeric value out of range */ addStmtError(stmt, "22003", NULL, 0); -#ifdef WITH_WCHAR if (type == SQL_C_WCHAR) free(ptr); -#endif return SQL_ERROR; } if (lenp) @@ -1613,10 +1584,8 @@ ODBCFetch(ODBCStmt *stmt, /* Numeric value out of range */ addStmtError(stmt, "22003", NULL, 0); -#ifdef WITH_WCHAR if (type == SQL_C_WCHAR) free(ptr); -#endif return SQL_ERROR; } data += sz; @@ -1654,10 +1623,8 @@ ODBCFetch(ODBCStmt *stmt, /* Numeric value out of range */ addStmtError(stmt, "22003", NULL, 0); -#ifdef WITH_WCHAR if (type == SQL_C_WCHAR) free(ptr); -#endif return SQL_ERROR; } if (lenp) @@ -1675,10 +1642,8 @@ ODBCFetch(ODBCStmt *stmt, /* Numeric value out of range */ addStmtError(stmt, "22003", NULL, 0); -#ifdef WITH_WCHAR if (type == SQL_C_WCHAR) free(ptr); -#endif return SQL_ERROR; } if (lenp) @@ -1701,10 +1666,8 @@ ODBCFetch(ODBCStmt *stmt, /* Numeric value out of range */ addStmtError(stmt, "22003", NULL, 0); -#ifdef WITH_WCHAR if (type == SQL_C_WCHAR) free(ptr); -#endif return SQL_ERROR; } data += sz; @@ -1743,10 +1706,8 @@ ODBCFetch(ODBCStmt *stmt, /* Numeric value out of range */ addStmtError(stmt, "22003", NULL, 0); -#ifdef WITH_WCHAR if (type == SQL_C_WCHAR) free(ptr); -#endif return SQL_ERROR; } if (lenp) @@ -1769,10 +1730,8 @@ ODBCFetch(ODBCStmt *stmt, /* Numeric value out of range */ addStmtError(stmt, "22003", NULL, 0); -#ifdef WITH_WCHAR if (type == SQL_C_WCHAR) free(ptr); -#endif return SQL_ERROR; } data += sz; @@ -1816,10 +1775,8 @@ ODBCFetch(ODBCStmt *stmt, /* Numeric value out of range */ addStmtError(stmt, "22003", NULL, 0); -#ifdef WITH_WCHAR if (type == SQL_C_WCHAR) free(ptr); -#endif return SQL_ERROR; } _______________________________________________ checkin-list mailing list checkin-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/checkin-list