IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 10708


Ignore:
Timestamp:
Dec 13, 2006, 7:13:58 PM (20 years ago)
Author:
jhoblitt
Message:

convert most uses of PS_TYPE_* -> PS_DATA_*
add additinal tracing to p_psDBFetchResult()
in p_psDBFetchResult() fix NAN/NULL handling (for real this time)
in p_psDBFetchResult() fix PS_DATA_TIME falling through into default by accident
in p_psDBFetchResult() catch psMetadataAdd*() failures

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/psLib/src/db/psDB.c

    r10703 r10708  
    1212 *  @author Joshua Hoblitt
    1313 *
    14  *  @version $Revision: 1.121 $ $Name: not supported by cvs2svn $
    15  *  @date $Date: 2006-12-14 01:37:55 $
     14 *  @version $Revision: 1.122 $ $Name: not supported by cvs2svn $
     15 *  @date $Date: 2006-12-14 05:13:58 $
    1616 *
    1717 *  Copyright (C) 2005-2006  Joshua Hoblitt, University of Hawaii
     
    3838#include "psString.h"
    3939#include "psTrace.h"
     40#include "psMetadataConfig.h"
    4041
    4142
     
    467468    // conversion functions are a portability issue
    468469    switch (type) {
    469     case PS_TYPE_S8:
    470         PS_STR_ARRAY_TO_PTYPE(column->data.S8, stringColumn, atoi, psS8, PS_TYPE_S8);
    471         break;
    472     case PS_TYPE_S16:
    473         PS_STR_ARRAY_TO_PTYPE(column->data.S16, stringColumn, atoi, psS16, PS_TYPE_S16);
    474         break;
    475     case PS_TYPE_S32:
    476         PS_STR_ARRAY_TO_PTYPE(column->data.S32, stringColumn, atoi, psS32, PS_TYPE_S32);
    477         break;
    478     case PS_TYPE_S64:
    479         PS_STR_ARRAY_TO_PTYPE(column->data.S64, stringColumn, atoll, psS64, PS_TYPE_S64);
    480         break;
    481     case PS_TYPE_U8:
    482         PS_STR_ARRAY_TO_PTYPE(column->data.U8, stringColumn, atoi, psU8, PS_TYPE_U8);
    483         break;
    484     case PS_TYPE_U16:
    485         PS_STR_ARRAY_TO_PTYPE(column->data.U16, stringColumn, atoi, psU16, PS_TYPE_U16);
    486         break;
    487     case PS_TYPE_U32:
    488         PS_STR_ARRAY_TO_PTYPE(column->data.U32, stringColumn, atoi, psU32, PS_TYPE_U32);
    489         break;
    490     case PS_TYPE_U64:
    491         PS_STR_ARRAY_TO_PTYPE(column->data.U64, stringColumn, atoll, psU64, PS_TYPE_U64);
    492         break;
    493     case PS_TYPE_F32:
    494         PS_STR_ARRAY_TO_PTYPE(column->data.F32, stringColumn, atof, psF32, PS_TYPE_F32);
    495         break;
    496     case PS_TYPE_F64:
    497         PS_STR_ARRAY_TO_PTYPE(column->data.F64, stringColumn, atof, psF64, PS_TYPE_F64);
     470    case PS_DATA_S8:
     471        PS_STR_ARRAY_TO_PTYPE(column->data.S8, stringColumn, atoi, psS8, PS_DATA_S8);
     472        break;
     473    case PS_DATA_S16:
     474        PS_STR_ARRAY_TO_PTYPE(column->data.S16, stringColumn, atoi, psS16, PS_DATA_S16);
     475        break;
     476    case PS_DATA_S32:
     477        PS_STR_ARRAY_TO_PTYPE(column->data.S32, stringColumn, atoi, psS32, PS_DATA_S32);
     478        break;
     479    case PS_DATA_S64:
     480        PS_STR_ARRAY_TO_PTYPE(column->data.S64, stringColumn, atoll, psS64, PS_DATA_S64);
     481        break;
     482    case PS_DATA_U8:
     483        PS_STR_ARRAY_TO_PTYPE(column->data.U8, stringColumn, atoi, psU8, PS_DATA_U8);
     484        break;
     485    case PS_DATA_U16:
     486        PS_STR_ARRAY_TO_PTYPE(column->data.U16, stringColumn, atoi, psU16, PS_DATA_U16);
     487        break;
     488    case PS_DATA_U32:
     489        PS_STR_ARRAY_TO_PTYPE(column->data.U32, stringColumn, atoi, psU32, PS_DATA_U32);
     490        break;
     491    case PS_DATA_U64:
     492        PS_STR_ARRAY_TO_PTYPE(column->data.U64, stringColumn, atoll, psU64, PS_DATA_U64);
     493        break;
     494    case PS_DATA_F32:
     495        PS_STR_ARRAY_TO_PTYPE(column->data.F32, stringColumn, atof, psF32, PS_DATA_F32);
     496        break;
     497    case PS_DATA_F64:
     498        PS_STR_ARRAY_TO_PTYPE(column->data.F64, stringColumn, atof, psF64, PS_DATA_F64);
    498499        break;
    499500    case PS_TYPE_C32:
     
    505506        PS_STR_ARRAY_TO_PTYPE(column->data.C64, stringColumn, atof, psC64, PS_TYPE_C64);
    506507        break;
    507     case PS_TYPE_BOOL:
     508    case PS_DATA_BOOL:
    508509        // valid for psVector?
    509         PS_STR_ARRAY_TO_PTYPE(column->data.U8, stringColumn, atoi, psU8, PS_TYPE_U8);
     510        PS_STR_ARRAY_TO_PTYPE(column->data.U8, stringColumn, atoi, psU8, PS_DATA_U8);
    510511        break;
    511512    default:
     
    650651        //psLogMsg( __func__, PS_LOG_INFO, "pType=[%ld]\n", pType );
    651652
    652         // if the ptype is PS_TYPE_PTR assume that it's a string and fetch the
     653        // if the ptype is PS_DATA_PTR assume that it's a string and fetch the
    653654        // column as an psArray of strings; otherwise fetch the column as a
    654655        // psVector.
     
    990991            len = fieldLength[i];
    991992            if (len) {
    992                 data = psAlloc(len+1);
     993                // copy the data out of the result set struct
     994                data = psAlloc(len + 1);
    993995                memcpy(data, row[i], len);
    994996                ((char*)data)[len] = '\0';
    995997            } else {
     998                // if len is zero then the value is NULL
     999                psTrace("psLib.db", PS_LOG_INFO, "database field name %s contains a NULL", field[i].name);
    9961000                data = psDBGetPTypeNaN(pType);
    997                 psMetadataAddStr(md, PS_LIST_TAIL, field[i].name, 0, "", data);
     1001                if (!psMetadataAdd(md, PS_LIST_TAIL, field[i].name, pType, "", data)) {
     1002                    psError(PS_ERR_UNKNOWN, false, "Failed to add item %s", field[i].name);
     1003                    psFree(data);
     1004                    psFree(md);
     1005                    mysql_free_result(result);
     1006                    psFree(resultSet);
     1007                    return NULL;
     1008                }
    9981009                psFree(data);
    9991010                continue;
    10001011            }
    10011012
    1002             // copy field data and convert NULLs to the appropriate NaN value
    10031013            switch (pType) {
    10041014            case PS_DATA_STRING:
    1005                 psMetadataAddStr(md, PS_LIST_TAIL, field[i].name, 0, "", data);
     1015                if (!psMetadataAddStr(md, PS_LIST_TAIL, field[i].name, 0, "", data)) {
     1016                    psError(PS_ERR_UNKNOWN, false, "Failed to add item %s", field[i].name);
     1017                    psFree(data);
     1018                    psFree(md);
     1019                    mysql_free_result(result);
     1020                    psFree(resultSet);
     1021                    return NULL;
     1022                }
     1023                break;
     1024            case PS_DATA_U8:
     1025                if (!psMetadataAddU8(md, PS_LIST_TAIL, field[i].name, 0, "",(psU8)atoll(data))) {
     1026                    psError(PS_ERR_UNKNOWN, false, "Failed to add item %s", field[i].name);
     1027                    psFree(data);
     1028                    psFree(md);
     1029                    mysql_free_result(result);
     1030                    psFree(resultSet);
     1031                    return NULL;
     1032                }
     1033                break;
     1034            case PS_DATA_U16:
     1035                if (!psMetadataAddU16(md, PS_LIST_TAIL, field[i].name, 0, "",(psU16)atoll(data))) {
     1036                    psError(PS_ERR_UNKNOWN, false, "Failed to add item %s", field[i].name);
     1037                    psFree(data);
     1038                    psFree(md);
     1039                    mysql_free_result(result);
     1040                    psFree(resultSet);
     1041                    return NULL;
     1042                }
     1043                break;
     1044            case PS_DATA_U32:
     1045                if (!psMetadataAddU32(md, PS_LIST_TAIL, field[i].name, 0, "",(psU32)atoll(data))) {
     1046                    psError(PS_ERR_UNKNOWN, false, "Failed to add item %s", field[i].name);
     1047                    psFree(data);
     1048                    psFree(md);
     1049                    mysql_free_result(result);
     1050                    psFree(resultSet);
     1051                    return NULL;
     1052                }
     1053                break;
     1054            case PS_DATA_U64:
     1055                if (!psMetadataAddU64(md, PS_LIST_TAIL, field[i].name, 0, "",(psU64)atoll(data))) {
     1056                    psError(PS_ERR_UNKNOWN, false, "Failed to add item %s", field[i].name);
     1057                    psFree(data);
     1058                    psFree(md);
     1059                    mysql_free_result(result);
     1060                    psFree(resultSet);
     1061                    return NULL;
     1062                }
     1063                break;
     1064            case PS_DATA_S8:
     1065                if (!psMetadataAddS8(md, PS_LIST_TAIL, field[i].name, 0, "", (psS8)atoll(data))) {
     1066                    psError(PS_ERR_UNKNOWN, false, "Failed to add item %s", field[i].name);
     1067                    psFree(data);
     1068                    psFree(md);
     1069                    mysql_free_result(result);
     1070                    psFree(resultSet);
     1071                    return NULL;
     1072                }
     1073                break;
     1074            case PS_DATA_S16:
     1075                if (!psMetadataAddS16(md, PS_LIST_TAIL, field[i].name, 0, "", (psS16)atoll(data))) {
     1076                    psError(PS_ERR_UNKNOWN, false, "Failed to add item %s", field[i].name);
     1077                    psFree(data);
     1078                    psFree(md);
     1079                    mysql_free_result(result);
     1080                    psFree(resultSet);
     1081                    return NULL;
     1082                }
    10061083                break;
    10071084            case PS_DATA_S32:
    1008                 psMetadataAddS32(md, PS_LIST_TAIL, field[i].name, 0, "", atoll(data));
     1085                if (!psMetadataAddS32(md, PS_LIST_TAIL, field[i].name, 0, "", (psS32)atoll(data))) {
     1086                    psError(PS_ERR_UNKNOWN, false, "Failed to add item %s", field[i].name);
     1087                    psFree(data);
     1088                    psFree(md);
     1089                    mysql_free_result(result);
     1090                    psFree(resultSet);
     1091                    return NULL;
     1092                }
     1093                break;
     1094            case PS_DATA_S64:
     1095                if (!psMetadataAddS64(md, PS_LIST_TAIL, field[i].name, 0, "", (psS64)atoll(data))) {
     1096                    psError(PS_ERR_UNKNOWN, false, "Failed to add item %s", field[i].name);
     1097                    psFree(data);
     1098                    psFree(md);
     1099                    mysql_free_result(result);
     1100                    psFree(resultSet);
     1101                    return NULL;
     1102                }
    10091103                break;
    10101104            case PS_DATA_F32:
    1011                 psMetadataAddF32(md, PS_LIST_TAIL, field[i].name, 0, "", atof(data));
     1105                if (!psMetadataAddF32(md, PS_LIST_TAIL, field[i].name, 0, "", atof(data))) {
     1106                    psError(PS_ERR_UNKNOWN, false, "Failed to add item %s", field[i].name);
     1107                    psFree(data);
     1108                    psFree(md);
     1109                    mysql_free_result(result);
     1110                    psFree(resultSet);
     1111                    return NULL;
     1112                }
    10121113                break;
    10131114            case PS_DATA_F64:
    1014                 psMetadataAddF64(md, PS_LIST_TAIL, field[i].name, 0, "", atof(data));
     1115                if (!psMetadataAddF64(md, PS_LIST_TAIL, field[i].name, 0, "", atof(data))) {
     1116                    psError(PS_ERR_UNKNOWN, false, "Failed to add item %s", field[i].name);
     1117                    psFree(data);
     1118                    psFree(md);
     1119                    mysql_free_result(result);
     1120                    psFree(resultSet);
     1121                    return NULL;
     1122                }
    10151123                break;
    10161124            case PS_DATA_BOOL:
    1017                 psMetadataAdd(md, PS_LIST_TAIL, field[i].name, pType, "", atoi(data));
     1125                if (!psMetadataAdd(md, PS_LIST_TAIL, field[i].name, pType, "", atoi(data))) {
     1126                    psError(PS_ERR_UNKNOWN, false, "Failed to add item %s", field[i].name);
     1127                    psFree(data);
     1128                    psFree(md);
     1129                    mysql_free_result(result);
     1130                    psFree(resultSet);
     1131                    return NULL;
     1132                }
    10181133                break;
    10191134            case PS_DATA_TIME:
     
    10211136                // concept of a psTime with a NULL value
    10221137                if (!(char *)data) {
    1023                     psMetadataAddTime(md, PS_LIST_TAIL, field[i].name, 0, "", NULL);
     1138                    if (!psMetadataAddTime(md, PS_LIST_TAIL, field[i].name, 0, "", NULL)) {
     1139                        psError(PS_ERR_UNKNOWN, false, "Failed to add item %s", field[i].name);
     1140                        psFree(data);
     1141                        psFree(md);
     1142                        mysql_free_result(result);
     1143                        psFree(resultSet);
     1144                        return NULL;
     1145                    }
    10241146                } else {
    10251147                    psTime *time = psTimeStrptime((char *)data, "%EY-%m-%d%t%T");
     
    10311153                        return NULL;
    10321154                    }
    1033                     psMetadataAddTime(md, PS_LIST_TAIL, field[i].name, 0, "", time);
     1155                    if (!psMetadataAddTime(md, PS_LIST_TAIL, field[i].name, 0, "", time)) {
     1156                        psError(PS_ERR_UNKNOWN, false, "Failed to add item %s", field[i].name);
     1157                        psFree(data);
     1158                        psFree(md);
     1159                        mysql_free_result(result);
     1160                        psFree(resultSet);
     1161                        return NULL;
     1162                    }
    10341163                    psFree(time);
    10351164                }
     1165                break;
    10361166                #if 0
    10371167                // this is the procedure needed for stmt
     
    10561186
    10571187            default:
    1058                 // XXX: assume binary string ...
    1059                 psMetadataAddStr(md, PS_LIST_TAIL, field[i].name, 0, "", data);
     1188                psError(PS_ERR_BAD_PARAMETER_TYPE , true,
     1189                        "field name: %s FIXME: Only type of "
     1190                        "PS_DATA_U8 (PS_DATA_U8), "
     1191                        "PS_DATA_U16 (PS_DATA_U16), "
     1192                        "PS_DATA_U32 (PS_DATA_U32), "
     1193                        "PS_DATA_U64 (PS_DATA_U64), "
     1194                        "PS_DATA_S8 (PS_DATA_S8), "
     1195                        "PS_DATA_S16 (PS_DATA_S16), "
     1196                        "PS_DATA_S32 (PS_DATA_S32), "
     1197                        "PS_DATA_S64 (PS_DATA_S64), "
     1198                        "PS_DATA_F32 (PS_DATA_F32), "
     1199                        "PS_DATA_F64 (PS_DATA_F64), "
     1200                        "PS_DATA_BOOL (PS_DATA_BOOL), "
     1201                        "PS_DATA_STRING "
     1202                        "and PS_DATA_TIME are supported.", field[i].name);
     1203                psFree(data);
     1204                psFree(md);
     1205                mysql_free_result(result);
     1206                psFree(resultSet);
     1207                return NULL;
    10601208            }
    10611209
    10621210            psFree(data);
     1211        }
     1212
     1213        if (psTraceGetLevel("psLib.db") >= PS_LOG_INFO) {
     1214            psString rowString = psMetadataConfigFormat(md);
     1215            psTrace("psLib.db", PS_LOG_INFO, "adding row to result set: %s", rowString);
     1216            psFree(rowString);
    10631217        }
    10641218
     
    10691223
    10701224    mysql_free_result(result);
     1225
    10711226
    10721227    return resultSet;
     
    11021257        // string
    11031258        switch (item->type) {
    1104         case PS_TYPE_U32: {
     1259        case PS_DATA_U32: {
    11051260                bind[i].length  = 0;
    11061261                bind[i].buffer  = &item->data.U32;
     
    11101265                break;
    11111266            }
    1112         case PS_TYPE_U64: {
     1267        case PS_DATA_U64: {
    11131268                bind[i].length  = 0;
    11141269                bind[i].buffer  = &item->data.U64;
     
    11181273                break;
    11191274            }
    1120         case PS_TYPE_S32: {
     1275        case PS_DATA_S32: {
    11211276                bind[i].length  = 0;
    11221277                bind[i].buffer  = &item->data.S32;
     
    11261281                break;
    11271282            }
    1128         case PS_TYPE_S64: {
     1283        case PS_DATA_S64: {
    11291284                bind[i].length  = 0;
    11301285                bind[i].buffer  = &item->data.S64;
     
    11341289                break;
    11351290            }
    1136         case PS_TYPE_F32: {
     1291        case PS_DATA_F32: {
    11371292                bind[i].length  = 0;
    11381293                bind[i].buffer  = &item->data.F32;
     
    11421297                break;
    11431298            }
    1144         case PS_TYPE_F64: {
     1299        case PS_DATA_F64: {
    11451300                bind[i].length  = 0;
    11461301                bind[i].buffer  = &item->data.F64;
     
    11501305                break;
    11511306            }
    1152         case PS_TYPE_BOOL: {
     1307        case PS_DATA_BOOL: {
    11531308                // XXX: ASC HACK NOTE (2005/06/03): set extreme bytes to the
    11541309                // boolean character value.  sizeof(psBool)==4 which triggers
     
    12331388                psError(PS_ERR_BAD_PARAMETER_TYPE , true,
    12341389                        "FIXME: Only type of "
    1235                         "PS_TYPE_U32 (PS_DATA_S32), "
    1236                         "PS_TYPE_U64 (PS_DATA_S64), "
    1237                         "PS_TYPE_S32 (PS_DATA_S32), "
    1238                         "PS_TYPE_S64 (PS_DATA_S64), "
    1239                         "PS_TYPE_F32 (PS_DATA_F32), "
    1240                         "PS_TYPE_F64 (PS_DATA_F64), "
    1241                         "PS_TYPE_BOOL (PS_DATA_BOOL), "
     1390                        "PS_DATA_U32 (PS_DATA_S32), "
     1391                        "PS_DATA_U64 (PS_DATA_S64), "
     1392                        "PS_DATA_S32 (PS_DATA_S32), "
     1393                        "PS_DATA_S64 (PS_DATA_S64), "
     1394                        "PS_DATA_F32 (PS_DATA_F32), "
     1395                        "PS_DATA_F64 (PS_DATA_F64), "
     1396                        "PS_DATA_BOOL (PS_DATA_BOOL), "
    12421397                        "PS_DATA_STRING "
    12431398                        "and PS_DATA_TIME are supported.");
     
    19162071
    19172072        // no support for CHAR, TEXT or GLOB
    1918         psDBAddToLookupTable(pTypeToSQLlookupTable, PS_TYPE_S8,  "TINYINT");
    1919         psDBAddToLookupTable(pTypeToSQLlookupTable, PS_TYPE_S16, "SMALLINT");
    1920         psDBAddToLookupTable(pTypeToSQLlookupTable, PS_TYPE_S32, "INT");
    1921         psDBAddToLookupTable(pTypeToSQLlookupTable, PS_TYPE_S64, "BIGINT");
    1922         psDBAddToLookupTable(pTypeToSQLlookupTable, PS_TYPE_U8,  "TINYINT UNSIGNED");
    1923         psDBAddToLookupTable(pTypeToSQLlookupTable, PS_TYPE_U16, "SMALLINT UNSIGNED");
    1924         psDBAddToLookupTable(pTypeToSQLlookupTable, PS_TYPE_U32, "INT UNSIGNED" );
    1925         psDBAddToLookupTable(pTypeToSQLlookupTable, PS_TYPE_U64, "BIGINT UNSIGNED");
    1926         psDBAddToLookupTable(pTypeToSQLlookupTable, PS_TYPE_F32, "FLOAT");
    1927         psDBAddToLookupTable(pTypeToSQLlookupTable, PS_TYPE_F64, "DOUBLE");
     2073        psDBAddToLookupTable(pTypeToSQLlookupTable, PS_DATA_S8,  "TINYINT");
     2074        psDBAddToLookupTable(pTypeToSQLlookupTable, PS_DATA_S16, "SMALLINT");
     2075        psDBAddToLookupTable(pTypeToSQLlookupTable, PS_DATA_S32, "INT");
     2076        psDBAddToLookupTable(pTypeToSQLlookupTable, PS_DATA_S64, "BIGINT");
     2077        psDBAddToLookupTable(pTypeToSQLlookupTable, PS_DATA_U8,  "TINYINT UNSIGNED");
     2078        psDBAddToLookupTable(pTypeToSQLlookupTable, PS_DATA_U16, "SMALLINT UNSIGNED");
     2079        psDBAddToLookupTable(pTypeToSQLlookupTable, PS_DATA_U32, "INT UNSIGNED" );
     2080        psDBAddToLookupTable(pTypeToSQLlookupTable, PS_DATA_U64, "BIGINT UNSIGNED");
     2081        psDBAddToLookupTable(pTypeToSQLlookupTable, PS_DATA_F32, "FLOAT");
     2082        psDBAddToLookupTable(pTypeToSQLlookupTable, PS_DATA_F64, "DOUBLE");
    19282083        psDBAddToLookupTable(pTypeToSQLlookupTable, PS_TYPE_C32, "PS_TYPE_C32 is not supported");
    19292084        psDBAddToLookupTable(pTypeToSQLlookupTable, PS_TYPE_C64, "PS_TYPE_C64 is not supported");
    1930         psDBAddToLookupTable(pTypeToSQLlookupTable, PS_TYPE_BOOL,"TINYINT");
     2085        psDBAddToLookupTable(pTypeToSQLlookupTable, PS_DATA_BOOL,"TINYINT");
    19312086        psDBAddToLookupTable(pTypeToSQLlookupTable, PS_DATA_STRING, "VARCHAR");
    19322087        psDBAddToLookupTable(pTypeToSQLlookupTable, PS_DATA_TIME, "DATETIME");
     
    20602215        pTypeToMysqlLookupTable = psHashAlloc(14);
    20612216
    2062         psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_TYPE_S8,     psDBMySQLTypeAlloc(MYSQL_TYPE_TINY,       false));
    2063         psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_TYPE_S16,    psDBMySQLTypeAlloc(MYSQL_TYPE_SHORT,      false));
    2064         psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_TYPE_S32,    psDBMySQLTypeAlloc(MYSQL_TYPE_LONG,       false));
    2065         psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_TYPE_S64,    psDBMySQLTypeAlloc(MYSQL_TYPE_LONGLONG,   false));
    2066         psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_TYPE_U8,     psDBMySQLTypeAlloc(MYSQL_TYPE_TINY,       true));
    2067         psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_TYPE_U16,    psDBMySQLTypeAlloc(MYSQL_TYPE_SHORT,      true));
    2068         psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_TYPE_U32,    psDBMySQLTypeAlloc(MYSQL_TYPE_LONG,       true));
    2069         psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_TYPE_U64,    psDBMySQLTypeAlloc(MYSQL_TYPE_LONGLONG,   true));
    2070         psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_TYPE_F32,    psDBMySQLTypeAlloc(MYSQL_TYPE_FLOAT,      false));
    2071         psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_TYPE_F64,    psDBMySQLTypeAlloc(MYSQL_TYPE_DOUBLE,     false));
     2217        psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_DATA_S8,     psDBMySQLTypeAlloc(MYSQL_TYPE_TINY,       false));
     2218        psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_DATA_S16,    psDBMySQLTypeAlloc(MYSQL_TYPE_SHORT,      false));
     2219        psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_DATA_S32,    psDBMySQLTypeAlloc(MYSQL_TYPE_LONG,       false));
     2220        psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_DATA_S64,    psDBMySQLTypeAlloc(MYSQL_TYPE_LONGLONG,   false));
     2221        psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_DATA_U8,     psDBMySQLTypeAlloc(MYSQL_TYPE_TINY,       true));
     2222        psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_DATA_U16,    psDBMySQLTypeAlloc(MYSQL_TYPE_SHORT,      true));
     2223        psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_DATA_U32,    psDBMySQLTypeAlloc(MYSQL_TYPE_LONG,       true));
     2224        psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_DATA_U64,    psDBMySQLTypeAlloc(MYSQL_TYPE_LONGLONG,   true));
     2225        psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_DATA_F32,    psDBMySQLTypeAlloc(MYSQL_TYPE_FLOAT,      false));
     2226        psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_DATA_F64,    psDBMySQLTypeAlloc(MYSQL_TYPE_DOUBLE,     false));
    20722227        // bogus type
    20732228        psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_TYPE_C32,    psDBMySQLTypeAlloc(MYSQL_TYPE_VAR_STRING, false));
    20742229        // bogus type
    20752230        psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_TYPE_C64,    psDBMySQLTypeAlloc(MYSQL_TYPE_VAR_STRING, false));
    2076         psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_TYPE_BOOL,   psDBMySQLTypeAlloc(MYSQL_TYPE_TINY,       true));
    2077         // XXX: removed PS_TYPE_PTR, can this be removed too?
    2078         // psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_TYPE_PTR,    psDBMySQLTypeAlloc(MYSQL_TYPE_VAR_STRING, false));
     2231        psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_DATA_BOOL,   psDBMySQLTypeAlloc(MYSQL_TYPE_TINY,       true));
     2232        // XXX: removed PS_DATA_PTR, can this be removed too?
     2233        // psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_DATA_PTR,    psDBMySQLTypeAlloc(MYSQL_TYPE_VAR_STRING, false));
    20792234
    20802235        psDBAddVoidToLookupTable(pTypeToMysqlLookupTable, PS_DATA_STRING,    psDBMySQLTypeAlloc(MYSQL_TYPE_VAR_STRING, false));
     
    21602315
    21612316    switch (pType) {
    2162     case PS_TYPE_S8:
     2317    case PS_DATA_S8:
    21632318        PS_NAN_ALLOC(myNaN, psS8, PS_MAX_S8);
    21642319        break;
    2165     case PS_TYPE_S16:
     2320    case PS_DATA_S16:
    21662321        PS_NAN_ALLOC(myNaN, psS16, PS_MAX_S16);
    21672322        break;
    2168     case PS_TYPE_S32:
     2323    case PS_DATA_S32:
    21692324        PS_NAN_ALLOC(myNaN, psS32, PS_MAX_S32);
    21702325        break;
    2171     case PS_TYPE_S64:
     2326    case PS_DATA_S64:
    21722327        PS_NAN_ALLOC(myNaN, psS64, PS_MAX_S64);
    21732328        break;
    2174     case PS_TYPE_U8:
     2329    case PS_DATA_U8:
    21752330        PS_NAN_ALLOC(myNaN, psU8, PS_MAX_U8);
    21762331        break;
    2177     case PS_TYPE_U16:
     2332    case PS_DATA_U16:
    21782333        PS_NAN_ALLOC(myNaN, psU16, PS_MAX_U16);
    21792334        break;
    2180     case PS_TYPE_U32:
     2335    case PS_DATA_U32:
    21812336        PS_NAN_ALLOC(myNaN, psU32, PS_MAX_U32);
    21822337        break;
    2183     case PS_TYPE_U64:
     2338    case PS_DATA_U64:
    21842339        PS_NAN_ALLOC(myNaN, psU64, PS_MAX_U64);
    21852340        break;
    2186     case PS_TYPE_F32:
     2341    case PS_DATA_F32:
    21872342        PS_NAN_ALLOC(myNaN, psF32, NAN);
    21882343        break;
    2189     case PS_TYPE_F64:
     2344    case PS_DATA_F64:
    21902345        PS_NAN_ALLOC(myNaN, psF64, NAN);
    21912346        break;
     
    21982353        PS_NAN_ALLOC(myNaN, psC64, NAN);
    21992354        break;
    2200     case PS_TYPE_BOOL:
     2355    case PS_DATA_BOOL:
    22012356        // XXX: what is NaN for a bool?
    22022357        PS_NAN_ALLOC(myNaN, psU8, PS_MAX_U8);
     
    22152370
    22162371    switch (pType) {
    2217     case PS_TYPE_S8:
     2372    case PS_DATA_S8:
    22182373        isNaN = PS_IS_NAN(psS8, data, PS_MAX_S8);
    22192374        break;
    2220     case PS_TYPE_S16:
     2375    case PS_DATA_S16:
    22212376        isNaN = PS_IS_NAN(psS16, data, PS_MAX_S16);
    22222377        break;
    2223     case PS_TYPE_S32:
     2378    case PS_DATA_S32:
    22242379        isNaN = PS_IS_NAN(psS32, data, PS_MAX_S32);
    22252380        break;
    2226     case PS_TYPE_S64:
     2381    case PS_DATA_S64:
    22272382        isNaN = PS_IS_NAN(psS64, data, PS_MAX_S64);
    22282383        break;
    2229     case PS_TYPE_U8:
     2384    case PS_DATA_U8:
    22302385        isNaN = PS_IS_NAN(psU8, data, PS_MAX_U8);
    22312386        break;
    2232     case PS_TYPE_U16:
     2387    case PS_DATA_U16:
    22332388        isNaN = PS_IS_NAN(psU16, data, PS_MAX_U16);
    22342389        break;
    2235     case PS_TYPE_U32:
     2390    case PS_DATA_U32:
    22362391        isNaN = PS_IS_NAN(psU32, data, PS_MAX_U32);
    22372392        break;
    2238     case PS_TYPE_U64:
     2393    case PS_DATA_U64:
    22392394        isNaN = PS_IS_NAN(psU64, data, PS_MAX_U64);
    22402395        break;
    2241     case PS_TYPE_F32:
     2396    case PS_DATA_F32:
    22422397        isNaN = PS_IS_NAN(psF32, data, NAN);
    22432398        break;
    2244     case PS_TYPE_F64:
     2399    case PS_DATA_F64:
    22452400        isNaN = PS_IS_NAN(psF64, data, NAN);
    22462401        break;
     
    22532408        isNaN = PS_IS_NAN(psC64, data, NAN);
    22542409        break;
    2255     case PS_TYPE_BOOL:
     2410    case PS_DATA_BOOL:
    22562411        // XXX: what is NaN for a bool?
    22572412        isNaN = PS_IS_NAN(psU8, data, PS_MAX_U8);
Note: See TracChangeset for help on using the changeset viewer.