From 9c3ed9a7ed0f69e8d3ca6d521e330cb7f25bc163 Mon Sep 17 00:00:00 2001 From: Hiroshi Inoue Date: Tue, 26 Dec 2017 11:03:59 +0900 Subject: [PATCH] Review the level of MYLOG, QLOG. Divide *level 1(detail)* log into *level 1(tuple level)* log and *level 2(detail)* log. --- bind.c | 16 +++--- connection.c | 30 ++++++------ convert.c | 34 ++++++------- descriptor.c | 18 +++---- dlg_specific.c | 12 ++--- dlg_wingui.c | 12 ++--- drvconn.c | 4 +- execute.c | 34 ++++++------- info.c | 6 +-- misc.c | 4 +- mylog.h | 4 ++ odbcapi30.c | 4 +- odbcapiw.c | 2 +- parse.c | 34 ++++++------- pgapi30.c | 15 +++--- pgtypes.c | 8 +-- qresult.c | 40 +++++++-------- results.c | 130 ++++++++++++++++++++++++------------------------- statement.c | 63 ++++++++++++------------ win_unicode.c | 6 +-- 20 files changed, 240 insertions(+), 236 deletions(-) diff --git a/bind.c b/bind.c index 4d2dfc0..ecddea8 100644 --- a/bind.c +++ b/bind.c @@ -201,7 +201,7 @@ PGAPI_BindCol(HSTMT hstmt, break; default: SC_set_error(stmt, STMT_PROGRAM_TYPE_OUT_OF_RANGE, "Bind column 0 is not of type SQL_C_BOOKMARK", func); -MYLOG(1, "Bind column 0 is type %d not of type SQL_C_BOOKMARK\n", fCType); +MYLOG(DETAIL_LOG_LEVEL, "Bind column 0 is type %d not of type SQL_C_BOOKMARK\n", fCType); ret = SQL_ERROR; goto cleanup; } @@ -336,7 +336,7 @@ PGAPI_DescribeParam(HSTMT hstmt, } if ((ipar < 1) || (ipar > num_params)) { -MYLOG(1, "num_params=%d\n", stmt->num_params); +MYLOG(DETAIL_LOG_LEVEL, "num_params=%d\n", stmt->num_params); SC_set_error(stmt, STMT_BAD_PARAMETER_NUMBER_ERROR, "Invalid parameter number for PGAPI_DescribeParam.", func); return SQL_ERROR; } @@ -347,7 +347,7 @@ MYLOG(1, "num_params=%d\n", stmt->num_params); if (NOT_YET_PREPARED == stmt->prepared) { decideHowToPrepare(stmt, FALSE); -MYLOG(1, "howTo=%d\n", SC_get_prepare_method(stmt)); +MYLOG(DETAIL_LOG_LEVEL, "howTo=%d\n", SC_get_prepare_method(stmt)); switch (SC_get_prepare_method(stmt)) { case NAMED_PARSE_REQUEST: @@ -367,7 +367,7 @@ MYLOG(1, "howTo=%d\n", SC_get_prepare_method(stmt)); /* parameter markers, not bound parameters. */ if (pfSqlType) { -MYLOG(1, "[%d].SQLType=%d .PGType=%d\n", ipar, ipdopts->parameters[ipar].SQLType, pgtype); +MYLOG(DETAIL_LOG_LEVEL, "[%d].SQLType=%d .PGType=%d\n", ipar, ipdopts->parameters[ipar].SQLType, pgtype); if (ipdopts->parameters[ipar].SQLType) *pfSqlType = ipdopts->parameters[ipar].SQLType; else if (pgtype) @@ -437,7 +437,7 @@ PGAPI_NumParams(HSTMT hstmt, SC_set_error(stmt, STMT_EXEC_ERROR, "parameter count address is null", func); return SQL_ERROR; } -MYLOG(1, "num_params=%d,%d\n", stmt->num_params, stmt->proc_return); +MYLOG(DETAIL_LOG_LEVEL, "num_params=%d,%d\n", stmt->num_params, stmt->proc_return); if (stmt->num_params >= 0) *pcpar = stmt->num_params; else if (!stmt->statement) @@ -456,7 +456,7 @@ MYLOG(1, "num_params=%d,%d\n", stmt->num_params, stmt->proc_return); stmt->proc_return = proc_return; stmt->multi_statement = multi; } -MYLOG(1, "num_params=%d,%d\n", stmt->num_params, stmt->proc_return); +MYLOG(DETAIL_LOG_LEVEL, "num_params=%d,%d\n", stmt->num_params, stmt->proc_return); return SQL_SUCCESS; } @@ -799,7 +799,7 @@ void ARD_unbind_cols(ARDFields *self, BOOL freeall) { Int2 lf; -MYLOG(1, "freeall=%d allocated=%d bindings=%p\n", freeall, self->allocated, self->bindings); +MYLOG(DETAIL_LOG_LEVEL, "freeall=%d allocated=%d bindings=%p\n", freeall, self->allocated, self->bindings); for (lf = 1; lf <= self->allocated; lf++) reset_a_column_binding(self, lf); if (freeall) @@ -814,7 +814,7 @@ void GDATA_unbind_cols(GetDataInfo *self, BOOL freeall) { Int2 lf; -MYLOG(1, "freeall=%d allocated=%d gdata=%p\n", freeall, self->allocated, self->gdata); +MYLOG(DETAIL_LOG_LEVEL, "freeall=%d allocated=%d gdata=%p\n", freeall, self->allocated, self->gdata); if (self->fdata.ttlbuf) { free(self->fdata.ttlbuf); diff --git a/connection.c b/connection.c index f10ed93..c945549 100644 --- a/connection.c +++ b/connection.c @@ -811,9 +811,9 @@ handle_pgres_error(ConnectionClass *self, const PGresult *pgres, char *errmsg = NULL; size_t errmsglen; char *sqlstate = NULL; - int level = 0; + int level = MIN_LOG_LEVEL; - MYLOG(1, "entering\n"); + MYLOG(DETAIL_LOG_LEVEL, "entering\n"); sqlstate = PQresultErrorField(pgres, PG_DIAG_SQLSTATE); if (res && pgres) @@ -987,15 +987,15 @@ static char CC_initial_log(ConnectionClass *self, const char *func) #endif /* _MSC_VER */ ); QLOG(0, "%s", vermsg); - MYLOG(1, "Global Options: fetch=%d, unknown_sizes=%d, max_varchar_size=%d, max_longvarchar_size=%d\n", + MYLOG(DETAIL_LOG_LEVEL, "Global Options: fetch=%d, unknown_sizes=%d, max_varchar_size=%d, max_longvarchar_size=%d\n", ci->drivers.fetch_max, ci->drivers.unknown_sizes, ci->drivers.max_varchar_size, ci->drivers.max_longvarchar_size); - MYLOG(1, " unique_index=%d, use_declarefetch=%d\n", + MYLOG(DETAIL_LOG_LEVEL, " unique_index=%d, use_declarefetch=%d\n", ci->drivers.unique_index, ci->drivers.use_declarefetch); - MYLOG(1, " text_as_longvarchar=%d, unknowns_as_longvarchar=%d, bools_as_char=%d NAMEDATALEN=%d\n", + MYLOG(DETAIL_LOG_LEVEL, " text_as_longvarchar=%d, unknowns_as_longvarchar=%d, bools_as_char=%d NAMEDATALEN=%d\n", ci->drivers.text_as_longvarchar, ci->drivers.unknowns_as_longvarchar, ci->drivers.bools_as_char, @@ -1005,7 +1005,7 @@ static char CC_initial_log(ConnectionClass *self, const char *func) { encoding = check_client_encoding(ci->conn_settings); CC_set_locale_encoding(self, encoding); - MYLOG(1, " extra_systable_prefixes='%s', conn_settings='%s' conn_encoding='%s'\n", + MYLOG(DETAIL_LOG_LEVEL, " extra_systable_prefixes='%s', conn_settings='%s' conn_encoding='%s'\n", ci->drivers.extra_systable_prefixes, PRINT_NAME(ci->conn_settings), encoding ? encoding : ""); @@ -1478,7 +1478,7 @@ static void CC_clear_cursors(ConnectionClass *self, BOOL on_abort) QR_set_cursor(res, NULL); QR_Destructor(wres); CONNLOCK_ACQUIRE(self); -MYLOG(1, "%p->permanent -> %d %p\n", res, QR_is_permanent(res), QR_get_cursor(res)); +MYLOG(DETAIL_LOG_LEVEL, "%p->permanent -> %d %p\n", res, QR_is_permanent(res), QR_get_cursor(res)); } else QR_set_permanent(res); @@ -1967,7 +1967,7 @@ CC_send_query_append(ConnectionClass *self, const char *query, QueryInfo *qi, UD { discard_next_savepoint = FALSE; discard_next_release = TRUE; -MYLOG(1, "Discarded a SAVEPOINT result\n"); +MYLOG(DETAIL_LOG_LEVEL, "Discarded a SAVEPOINT result\n"); break; /* discard the result */ } if (SAVEPOINT_IN_PROGRESS == self->internal_op) @@ -1991,7 +1991,7 @@ MYLOG(1, "Discarded a SAVEPOINT result\n"); { if (discard_next_release) { -MYLOG(1, "Discarded a RELEASE result\n"); +MYLOG(DETAIL_LOG_LEVEL, "Discarded a RELEASE result\n"); discard_next_release = FALSE; break; /* discard the result */ } @@ -2164,7 +2164,7 @@ cleanup: PQclear(pgres); pgres = NULL; } -MYLOG(1, " rollback_on_error=%d CC_is_in_trans=%d discard_next_savepoint=%d query_rollback=%d\n", rollback_on_error, CC_is_in_trans(self), discard_next_savepoint, query_rollback); +MYLOG(DETAIL_LOG_LEVEL, " rollback_on_error=%d CC_is_in_trans=%d discard_next_savepoint=%d query_rollback=%d\n", rollback_on_error, CC_is_in_trans(self), discard_next_savepoint, query_rollback); if (rollback_on_error && CC_is_in_trans(self) && !discard_next_savepoint) { if (query_rollback) @@ -2242,7 +2242,7 @@ MYLOG(1, " rollback_on_error=%d CC_is_in_trans=%d discard_next_savepoint=%d quer CC_set_errornumber(self, CONN_ERROR_IGNORED); if (retres) QR_set_rstatus(retres, PORES_NONFATAL_ERROR); -MYLOG(1, " ignored abort_on_conn\n"); +MYLOG(DETAIL_LOG_LEVEL, " ignored abort_on_conn\n"); } else if (retres) { @@ -2541,9 +2541,9 @@ CC_log_error(const char *func, const char *desc, const ConnectionClass *self) if (self) { MYLOG(0, "CONN ERROR: func=%s, desc='%s', errnum=%d, errmsg='%s'\n", func, desc, self->__error_number, NULLCHECK(self->__error_message)); - MYLOG(1, " ------------------------------------------------------------\n"); - MYLOG(1, " henv=%p, conn=%p, status=%u, num_stmts=%d\n", self->henv, self, self->status, self->num_stmts); - MYLOG(1, " pqconn=%p, stmts=%p, lobj_type=%d\n", self->pqconn, self->stmts, self->lobj_type); + MYLOG(DETAIL_LOG_LEVEL, " ------------------------------------------------------------\n"); + MYLOG(DETAIL_LOG_LEVEL, " henv=%p, conn=%p, status=%u, num_stmts=%d\n", self->henv, self, self->status, self->num_stmts); + MYLOG(DETAIL_LOG_LEVEL, " pqconn=%p, stmts=%p, lobj_type=%d\n", self->pqconn, self->stmts, self->lobj_type); } else { @@ -2827,7 +2827,7 @@ LIBPQ_connect(ConnectionClass *self) if (CONNECTION_OK != pqret) { const char *errmsg; -MYLOG(1, "status=%d\n", pqret); +MYLOG(DETAIL_LOG_LEVEL, "status=%d\n", pqret); errmsg = PQerrorMessage(pqconn); CC_set_error(self, CONNECTION_SERVER_NOT_REACHED, errmsg, func); MYLOG(0, "Could not establish connection to the database; LIBPQ returned -> %s\n", errmsg); diff --git a/convert.c b/convert.c index c7a759f..458fced 100644 --- a/convert.c +++ b/convert.c @@ -1436,7 +1436,7 @@ MYLOG(0, "null_cvt_date_string=%d\n", conn->connInfo.cvt_null_date_string); */ bZone = FALSE; /* time zone stuff is unreliable */ timestamp2stime(value, &std_time, &bZone, &zone); -MYLOG(1, "2stime fr=%d\n", std_time.fr); +MYLOG(DETAIL_LOG_LEVEL, "2stime fr=%d\n", std_time.fr); } else { @@ -1889,7 +1889,7 @@ MYLOG(1, "2stime fr=%d\n", std_time.fr); { UInt4 ival = ATOI32U(neut_str); -MYLOG(1, "SQL_C_VARBOOKMARK value=%d\n", ival); +MYLOG(DETAIL_LOG_LEVEL, "SQL_C_VARBOOKMARK value=%d\n", ival); if (pcbValue) *pcbValueBindRow = sizeof(ival); if (cbValueMax >= sizeof(ival)) @@ -2700,7 +2700,7 @@ prepareParametersNoDesc(StatementClass *stmt, BOOL fake_params, BOOL param_cast) QueryParse query_org, *qp; QueryBuild query_crt, *qb; -MYLOG(1, "entering\n"); +MYLOG(DETAIL_LOG_LEVEL, "entering\n"); qp = &query_org; QP_initialize(qp, stmt); qb = &query_crt; @@ -2795,7 +2795,7 @@ desc_params_and_sync(StatementClass *stmt) SQLSMALLINT num_pa = 0; ProcessedStmt *pstmt; -MYLOG(1, "entering\n"); +MYLOG(DETAIL_LOG_LEVEL, "entering\n"); retval = SQL_ERROR; #define return DONT_CALL_RETURN_FROM_HERE??? @@ -2860,7 +2860,7 @@ RETCODE prepareParameters(StatementClass *stmt, BOOL fake_params) return SQL_SUCCESS; } -MYLOG(1, "calling prepareParameters\n"); +MYLOG(DETAIL_LOG_LEVEL, "calling prepareParameters\n"); if (prepareParametersNoDesc(stmt, fake_params, PARSE_PARAM_CAST) == SQL_ERROR) return SQL_ERROR; @@ -2886,7 +2886,7 @@ copy_statement_with_parameters(StatementClass *stmt, BOOL buildPrepareStatement) ConnInfo *ci = &(conn->connInfo); const char *bestitem = NULL; -MYLOG(1, "entering prepared=%d\n", stmt->prepared); +MYLOG(DETAIL_LOG_LEVEL, "entering prepared=%d\n", stmt->prepared); if (!stmt->statement) { SC_set_error(stmt, STMT_INTERNAL_ERROR, "No statement string", func); @@ -2947,7 +2947,7 @@ MYLOG(1, "entering prepared=%d\n", stmt->prepared); qp->from_pos = stmt->from_pos; qp->where_pos = stmt->where_pos; } -MYLOG(1, "type=%d concur=%d\n", stmt->options.cursor_type, stmt->options.scroll_concurrency); +MYLOG(DETAIL_LOG_LEVEL, "type=%d concur=%d\n", stmt->options.cursor_type, stmt->options.scroll_concurrency); } SC_miscinfo_clear(stmt); @@ -3364,7 +3364,7 @@ static int token_finish(QueryParse *qp, char oldchar, char *finished_token) qp->prev_token_end = TRUE; qp->token_curr[qp->token_len] = '\0'; strncpy_null(finished_token, qp->token_curr, sizeof(qp->token_curr)); -MYLOG(1, "finished token=%s\n", finished_token); +MYLOG(DETAIL_LOG_LEVEL, "finished token=%s\n", finished_token); ret = qp->token_len; } return ret; @@ -4041,9 +4041,9 @@ build_libpq_bind_params(StatementClass *stmt, qb.flags |= FLGB_BINARY_AS_POSSIBLE; - MYLOG(1, "num_params=%d proc_return=%d\n", num_params, stmt->proc_return); + MYLOG(DETAIL_LOG_LEVEL, "num_params=%d proc_return=%d\n", num_params, stmt->proc_return); num_p = num_params - qb.num_discard_params; -MYLOG(1, "num_p=%d\n", num_p); +MYLOG(DETAIL_LOG_LEVEL, "num_p=%d\n", num_p); discard_output = (0 != (qb.flags & FLGB_DISCARD_OUTPUT)); *nParams = 0; if (num_p > 0) @@ -4070,7 +4070,7 @@ MYLOG(1, "num_p=%d\n", num_p); goto cleanup; } - MYLOG(1, "%dth parameter type oid is %u\n", i, PIC_dsp_pgtype(conn, parameters[i])); + MYLOG(DETAIL_LOG_LEVEL, "%dth parameter type oid is %u\n", i, PIC_dsp_pgtype(conn, parameters[i])); if (i < qb.proc_return) continue; @@ -4145,7 +4145,7 @@ ResolveNumericParam(const SQL_NUMERIC_STRUCT *ns, char *chrform) UCHAR calv[MAX_NUMERIC_DIGITS]; int precision; -MYLOG(1, "C_NUMERIC [prec=%d scale=%d]", ns->precision, ns->scale); +MYLOG(DETAIL_LOG_LEVEL, "C_NUMERIC [prec=%d scale=%d]", ns->precision, ns->scale); if (0 == ns->precision) { @@ -4201,7 +4201,7 @@ MYLOG(1, "C_NUMERIC [prec=%d scale=%d]", ns->precision, ns->scale); * digit is at calv[0] */ -MYPRINTF(1, " len2=%d", len); +MYPRINTF(DETAIL_LOG_LEVEL, " len2=%d", len); /* build the final output string. */ newlen = 0; @@ -4232,7 +4232,7 @@ MYPRINTF(1, " len2=%d", len); if (0 == len) chrform[newlen++] = '0'; chrform[newlen] = '\0'; -MYLOG(1, " convval(2) len=%d %s\n", newlen, chrform); +MYLOG(DETAIL_LOG_LEVEL, " convval(2) len=%d %s\n", newlen, chrform); } /* @@ -4464,7 +4464,7 @@ ResolveOneParam(QueryBuild *qb, QueryParse *qp, BOOL *isnull, BOOL *isbinary, */ param_number = ++qb->param_number; -MYLOG(1, "para:%d(%d,%d)\n", param_number, ipdopts->allocated, apdopts->allocated); +MYLOG(DETAIL_LOG_LEVEL, "para:%d(%d,%d)\n", param_number, ipdopts->allocated, apdopts->allocated); apara = NULL; ipara = NULL; if (param_number < apdopts->allocated) @@ -4480,7 +4480,7 @@ MYLOG(1, "para:%d(%d,%d)\n", param_number, ipdopts->allocated, apdopts->allocate return SQL_ERROR; } -MYLOG(1, "ipara=%p paramType=%d %d proc_return=%d\n", ipara, ipara ? ipara->paramType : -1, PG_VERSION_LT(conn, 8.1), qb->proc_return); +MYLOG(DETAIL_LOG_LEVEL, "ipara=%p paramType=%d %d proc_return=%d\n", ipara, ipara ? ipara->paramType : -1, PG_VERSION_LT(conn, 8.1), qb->proc_return); if (param_number < qb->proc_return) { if (ipara && SQL_PARAM_OUTPUT != ipara->paramType) @@ -6167,7 +6167,7 @@ convert_to_pgbinary(const char *in, char *out, size_t len, QueryBuild *qb) for (i = 0; i < len; i++) { inc = in[i]; - MYLOG(1, "in[" FORMAT_SIZE_T "] = %d, %c\n", i, inc, inc); + MYLOG(DETAIL_LOG_LEVEL, "in[" FORMAT_SIZE_T "] = %d, %c\n", i, inc, inc); if (inc < 128 && (isalnum(inc) || inc == ' ')) out[o++] = inc; else diff --git a/descriptor.c b/descriptor.c index 3f5f9d5..1499ade 100644 --- a/descriptor.c +++ b/descriptor.c @@ -34,7 +34,7 @@ void TI_Destructor(TABLE_INFO **ti, int count) { int i; -MYLOG(1, "entering count=%d\n", count); +MYLOG(DETAIL_LOG_LEVEL, "entering count=%d\n", count); if (ti) { for (i = 0; i < count; i++) @@ -63,7 +63,7 @@ MYLOG(0, "!!!refcnt %p:%d -> %d\n", coli, coli->refcnt, coli->refcnt - 1); } void FI_Constructor(FIELD_INFO *self, BOOL reuse) { -MYLOG(1, "entering reuse=%d\n", reuse); +MYLOG(DETAIL_LOG_LEVEL, "entering reuse=%d\n", reuse); if (reuse) FI_Destructor(&self, 1, FALSE); memset(self, 0, sizeof(FIELD_INFO)); @@ -75,7 +75,7 @@ void FI_Destructor(FIELD_INFO **fi, int count, BOOL freeFI) { int i; -MYLOG(1, "entering count=%d\n", count); +MYLOG(DETAIL_LOG_LEVEL, "entering count=%d\n", count); if (fi) { for (i = 0; i < count; i++) @@ -190,7 +190,7 @@ void DC_Constructor(DescriptorClass *self, BOOL embedded, StatementClass *stmt) static void ARDFields_free(ARDFields * self) { -MYLOG(1, "entering %p bookmark=%p\n", self, self->bookmark); +MYLOG(DETAIL_LOG_LEVEL, "entering %p bookmark=%p\n", self, self->bookmark); if (self->bookmark) { free(self->bookmark); @@ -534,7 +534,7 @@ PGAPI_CopyDesc(SQLHDESC SourceDescHandle, } if (targethd->type_defined) { -MYLOG(1, "source type=%d -> target type=%d\n", srchd->desc_type, targethd->desc_type); +MYLOG(DETAIL_LOG_LEVEL, "source type=%d -> target type=%d\n", srchd->desc_type, targethd->desc_type); if (SQL_ATTR_IMP_ROW_DESC == targethd->desc_type) { MYLOG(0, "can't modify IRD\n"); @@ -556,19 +556,19 @@ MYLOG(1, "source type=%d -> target type=%d\n", srchd->desc_type, targethd->desc_ switch (srchd->desc_type) { case SQL_ATTR_APP_ROW_DESC: -MYLOG(1, "src=%p target=%p type=%d", src, target, srchd->desc_type); +MYLOG(DETAIL_LOG_LEVEL, "src=%p target=%p type=%d", src, target, srchd->desc_type); if (!targethd->type_defined) { targethd->desc_type = srchd->desc_type; } ard_src = &(src->ardf); -MYPRINTF(1, " rowset_size=" FORMAT_LEN " bind_size=%d ope_ptr=%p off_ptr=%p\n", +MYPRINTF(DETAIL_LOG_LEVEL, " rowset_size=" FORMAT_LEN " bind_size=%d ope_ptr=%p off_ptr=%p\n", ard_src->size_of_rowset, ard_src->bind_size, ard_src->row_operation_ptr, ard_src->row_offset_ptr); ard_tgt = &(target->ardf); -MYPRINTF(1, " target=%p", ard_tgt); +MYPRINTF(DETAIL_LOG_LEVEL, " target=%p", ard_tgt); ARDFields_copy(ard_src, ard_tgt); -MYPRINTF(1, " offset_ptr=%p\n", ard_tgt->row_offset_ptr); +MYPRINTF(DETAIL_LOG_LEVEL, " offset_ptr=%p\n", ard_tgt->row_offset_ptr); break; case SQL_ATTR_APP_PARAM_DESC: if (!targethd->type_defined) diff --git a/dlg_specific.c b/dlg_specific.c index d42428d..2eff402 100644 --- a/dlg_specific.c +++ b/dlg_specific.c @@ -292,7 +292,7 @@ makeConnectString(char *connect_string, const ConnInfo *ci, UWORD len) BOOL abbrev = (len < 1024) || 0 < ci->force_abbrev_connstr; UInt4 flag; -MYLOG(1, "force_abbrev=%d abbrev=%d\n", ci->force_abbrev_connstr, abbrev); +MYLOG(DETAIL_LOG_LEVEL, "force_abbrev=%d abbrev=%d\n", ci->force_abbrev_connstr, abbrev); encode(ci->password, encoded_item, sizeof(encoded_item)); /* fundamental info */ nlen = MAX_CONNECT_STRING; @@ -313,7 +313,7 @@ MYLOG(1, "force_abbrev=%d abbrev=%d\n", ci->force_abbrev_connstr, abbrev); /* extra info */ hlen = strlen(connect_string); nlen = MAX_CONNECT_STRING - hlen; -MYLOG(1, "hlen=" FORMAT_SSIZE_T "\n", hlen); +MYLOG(DETAIL_LOG_LEVEL, "hlen=" FORMAT_SSIZE_T "\n", hlen); if (!abbrev) { char protocol_and[16]; @@ -1054,14 +1054,14 @@ MYLOG(0, "drivername=%s\n", drivername); get_Ci_Drivers(DSN, ODBC_INI, &(ci->drivers)); STR_TO_NAME(ci->drivers.drivername, drivername); - MYLOG(1, "DSN info: DSN='%s',server='%s',port='%s',dbase='%s',user='%s',passwd='%s'\n", + MYLOG(DETAIL_LOG_LEVEL, "DSN info: DSN='%s',server='%s',port='%s',dbase='%s',user='%s',passwd='%s'\n", DSN, ci->server, ci->port, ci->database, ci->username, NAME_IS_VALID(ci->password) ? "xxxxx" : ""); - MYLOG(1, " onlyread='%s',showoid='%s',fakeoidindex='%s',showsystable='%s'\n", + MYLOG(DETAIL_LOG_LEVEL, " onlyread='%s',showoid='%s',fakeoidindex='%s',showsystable='%s'\n", ci->onlyread, ci->show_oid_column, ci->fake_oid_index, @@ -1071,12 +1071,12 @@ MYLOG(0, "drivername=%s\n", drivername); #ifdef NOT_USED char *enc = (char *) check_client_encoding(ci->conn_settings); - MYLOG(1, " conn_settings='%s', conn_encoding='%s'\n", ci->conn_settings, + MYLOG(DETAIL_LOG_LEVEL, " conn_settings='%s', conn_encoding='%s'\n", ci->conn_settings, NULL != enc ? enc : "(null)"); if (NULL != enc) free(enc); #endif /* NOT_USED */ - MYLOG(1, " translation_dll='%s',translation_option='%s'\n", + MYLOG(DETAIL_LOG_LEVEL, " translation_dll='%s',translation_option='%s'\n", ci->translation_dll, ci->translation_option); } diff --git a/dlg_wingui.c b/dlg_wingui.c index 5cee9ba..7980f5e 100644 --- a/dlg_wingui.c +++ b/dlg_wingui.c @@ -218,16 +218,18 @@ MYLOG(0, "entering src=%d\n", src); return 0; } +#define INIT_DISP_LOGVAL 2 + static int driver_options_update(HWND hdlg, ConnInfo *ci) { GLOBAL_VALUES *comval; BOOL bTranslated; -MYLOG(2, "entering\n"); +MYLOG(3, "entering\n"); comval = &(ci->drivers); - (comval->commlog = GetDlgItemInt(hdlg, DS_COMMLOG, &bTranslated, FALSE)) || bTranslated || (comval->commlog = 1); + (comval->commlog = GetDlgItemInt(hdlg, DS_COMMLOG, &bTranslated, FALSE)) || bTranslated || (comval->commlog = INIT_DISP_LOGVAL); comval->unique_index = IsDlgButtonChecked(hdlg, DRV_UNIQUEINDEX); comval->use_declarefetch = IsDlgButtonChecked(hdlg, DRV_USEDECLAREFETCH); @@ -247,9 +249,7 @@ MYLOG(2, "entering\n"); comval->parse = IsDlgButtonChecked(hdlg, DRV_PARSE); - (comval->debug = GetDlgItemInt(hdlg, DS_DEBUG, &bTranslated, FALSE)) || bTranslated || (comval->debug = 1); - if (!bTranslated) - comval->debug = 1; + (comval->debug = GetDlgItemInt(hdlg, DS_DEBUG, &bTranslated, FALSE)) || bTranslated || (comval->debug = INIT_DISP_LOGVAL); comval->fetch_max = GetDlgItemInt(hdlg, DRV_CACHE_SIZE, NULL, FALSE); comval->max_varchar_size = GetDlgItemInt(hdlg, DRV_VARCHAR_SIZE, NULL, FALSE); @@ -393,7 +393,7 @@ CtrlCheckButton(HWND hdlg, int nIDcheck, int nIDint) { ShowWindow(GetDlgItem(hdlg, nIDint), SW_SHOW); if (bTranslated) - SetDlgItemInt(hdlg, nIDint, 1, FALSE); + SetDlgItemInt(hdlg, nIDint, INIT_DISP_LOGVAL, FALSE); } break; case BST_UNCHECKED: diff --git a/drvconn.c b/drvconn.c index 8cb4e23..7224c17 100644 --- a/drvconn.c +++ b/drvconn.c @@ -173,7 +173,7 @@ PGAPI_DriverConnect(HDBC hdbc, #ifdef WIN32 dialog: #endif -MYLOG(1, "DriverCompletion=%d\n", fDriverCompletion); +MYLOG(DETAIL_LOG_LEVEL, "DriverCompletion=%d\n", fDriverCompletion); switch (fDriverCompletion) { #ifdef WIN32 @@ -228,7 +228,7 @@ MYLOG(1, "DriverCompletion=%d\n", fDriverCompletion); } reqs = 0; -MYLOG(1, "before CC_connect\n"); +MYLOG(DETAIL_LOG_LEVEL, "before CC_connect\n"); /* do the actual connect */ retval = CC_connect(conn, salt); if (retval < 0) diff --git a/execute.c b/execute.c index ce2d27b..7e8d3b5 100644 --- a/execute.c +++ b/execute.c @@ -128,7 +128,7 @@ PGAPI_Prepare(HSTMT hstmt, cleanup: #undef return -MYLOG(1, "leaving %d\n", retval); +MYLOG(DETAIL_LOG_LEVEL, "leaving %d\n", retval); return retval; } @@ -155,7 +155,7 @@ PGAPI_ExecDirect(HSTMT hstmt, * execute this statement again */ stmt->statement = make_string(szSqlStr, cbSqlStr, NULL, 0); -MYLOG(1, "a2\n"); +MYLOG(DETAIL_LOG_LEVEL, "a2\n"); if (!stmt->statement) { SC_set_error(stmt, STMT_NO_MEMORY_ERROR, "No memory available to store statement", func); @@ -430,7 +430,7 @@ RETCODE Exec_with_parameters_resolved(StatementClass *stmt, BOOL *exec_end) if (HowToPrepareBeforeExec(stmt, FALSE) >= allowParse) prepare_before_exec = TRUE; -MYLOG(1, "prepare_before_exec=%d srv=%d\n", prepare_before_exec, conn->connInfo.use_server_side_prepare); +MYLOG(DETAIL_LOG_LEVEL, "prepare_before_exec=%d srv=%d\n", prepare_before_exec, conn->connInfo.use_server_side_prepare); /* Create the statement with parameters substituted. */ retval = copy_statement_with_parameters(stmt, prepare_before_exec); stmt->current_exec_param = -1; @@ -551,7 +551,7 @@ StartRollbackState(StatementClass *stmt) ConnectionClass *conn; ConnInfo *ci = NULL; -MYLOG(1, "entering %p->external=%d\n", stmt, stmt->external); +MYLOG(DETAIL_LOG_LEVEL, "entering %p->external=%d\n", stmt, stmt->external); conn = SC_get_conn(stmt); if (conn) ci = &conn->connInfo; @@ -636,7 +636,7 @@ SetStatementSvp(StatementClass *stmt, unsigned int option) ENTER_CONN_CS(conn); conn->lock_CC_for_rb++; } -MYLOG(1, " %p->accessed=%d opt=%u in_progress=%u prev=%u\n", conn, CC_accessed_db(conn), option, conn->opt_in_progress, conn->opt_previous); +MYLOG(DETAIL_LOG_LEVEL, " %p->accessed=%d opt=%u in_progress=%u prev=%u\n", conn, CC_accessed_db(conn), option, conn->opt_in_progress, conn->opt_previous); conn->opt_in_progress &= option; switch (stmt->statement_type) { @@ -679,7 +679,7 @@ MYLOG(1, " %p->accessed=%d opt=%u in_progress=%u prev=%u\n", conn, CC_accessed_d } } CC_set_accessed_db(conn); -MYLOG(1, "leaving %p->accessed=%d\n", conn, CC_accessed_db(conn)); +MYLOG(DETAIL_LOG_LEVEL, "leaving %p->accessed=%d\n", conn, CC_accessed_db(conn)); return ret; } @@ -690,7 +690,7 @@ DiscardStatementSvp(StatementClass *stmt, RETCODE ret, BOOL errorOnly) ConnectionClass *conn = SC_get_conn(stmt); BOOL start_stmt = FALSE; -MYLOG(1, "entering %p->accessed=%d is_in=%d is_rb=%d is_tc=%d\n", conn, CC_accessed_db(conn), +MYLOG(DETAIL_LOG_LEVEL, "entering %p->accessed=%d is_in=%d is_rb=%d is_tc=%d\n", conn, CC_accessed_db(conn), CC_is_in_trans(conn), SC_is_rb_stmt(stmt), SC_is_tc_stmt(stmt)); if (conn->lock_CC_for_rb > 0) MYLOG(0, "in_progress=%u previous=%d\n", conn->opt_in_progress, conn->opt_previous); @@ -730,7 +730,7 @@ CC_is_in_trans(conn), SC_is_rb_stmt(stmt), SC_is_tc_stmt(stmt)); } else if (errorOnly) return ret; -MYLOG(1, "\tret=%d\n", ret); +MYLOG(DETAIL_LOG_LEVEL, "\tret=%d\n", ret); cleanup: #ifdef NOT_USED if (!SC_is_prepare_statement(stmt) && ONCE_DESCRIBED == stmt->prepared) @@ -748,11 +748,11 @@ cleanup: { LEAVE_CONN_CS(conn); conn->lock_CC_for_rb--; - MYLOG(1, " release conn_lock\n"); + MYLOG(DETAIL_LOG_LEVEL, " release conn_lock\n"); } CC_start_stmt(conn); } - MYLOG(1, "leaving %d\n", ret); + MYLOG(DETAIL_LOG_LEVEL, "leaving %d\n", ret); return ret; } @@ -1323,7 +1323,7 @@ PGAPI_ParamData(HSTMT hstmt, /* Done, now copy the params and then execute the statement */ ipdopts = SC_get_IPDF(estmt); -MYLOG(1, "ipdopts=%p\n", ipdopts); +MYLOG(DETAIL_LOG_LEVEL, "ipdopts=%p\n", ipdopts); if (estmt->data_at_exec == 0) { BOOL exec_end; @@ -1356,16 +1356,16 @@ MYLOG(1, "ipdopts=%p\n", ipdopts); num_p = estmt->num_params; if (num_p < 0) PGAPI_NumParams(estmt, &num_p); -MYLOG(1, "i=%d allocated=%d num_p=%d\n", i, apdopts->allocated, num_p); +MYLOG(DETAIL_LOG_LEVEL, "i=%d allocated=%d num_p=%d\n", i, apdopts->allocated, num_p); if (num_p > apdopts->allocated) num_p = apdopts->allocated; /* At least 1 data at execution parameter, so Fill in the token value */ for (; i < num_p; i++) { -MYLOG(1, "i=%d", i); +MYLOG(DETAIL_LOG_LEVEL, "i=%d", i); if (apdopts->parameters[i].data_at_exec) { -MYPRINTF(1, " at exec buffer=%p", apdopts->parameters[i].buffer); +MYPRINTF(DETAIL_LOG_LEVEL, " at exec buffer=%p", apdopts->parameters[i].buffer); estmt->data_at_exec--; estmt->current_exec_param = i; estmt->put_data = FALSE; @@ -1377,7 +1377,7 @@ MYPRINTF(1, " at exec buffer=%p", apdopts->parameters[i].buffer); SQLULEN offset = apdopts->param_offset_ptr ? *apdopts->param_offset_ptr : 0; SQLLEN perrow = apdopts->param_bind_type > 0 ? apdopts->param_bind_type : apdopts->parameters[i].buflen; -MYPRINTF(1, " offset=" FORMAT_LEN " perrow=" FORMAT_LEN, offset, perrow); +MYPRINTF(DETAIL_LOG_LEVEL, " offset=" FORMAT_LEN " perrow=" FORMAT_LEN, offset, perrow); *prgbValue = apdopts->parameters[i].buffer + offset + estmt->exec_current_row * perrow; } else @@ -1385,11 +1385,11 @@ MYPRINTF(1, " offset=" FORMAT_LEN " perrow=" FORMAT_LEN, offset, perrow); } break; } -MYPRINTF(1, "\n"); +MYPRINTF(DETAIL_LOG_LEVEL, "\n"); } retval = SQL_NEED_DATA; -MYLOG(1, "return SQL_NEED_DATA\n"); +MYLOG(DETAIL_LOG_LEVEL, "return SQL_NEED_DATA\n"); cleanup: #undef return SC_setInsertedTable(stmt, retval); diff --git a/info.c b/info.c index b1011d4..1f0818f 100644 --- a/info.c +++ b/info.c @@ -1156,7 +1156,7 @@ PGAPI_GetTypeInfo(HSTMT hstmt, if (sqlType == SQL_LONGVARBINARY) { ConnInfo *ci = &(conn->connInfo); -MYLOG(1, "%d sqltype=%d -> pgtype=%d\n", ci->bytea_as_longvarbinary, sqlType, pgType); +MYLOG(DETAIL_LOG_LEVEL, "%d sqltype=%d -> pgtype=%d\n", ci->bytea_as_longvarbinary, sqlType, pgType); } if (fSqlType == SQL_ALL_TYPES || fSqlType == sqlType) @@ -1187,7 +1187,7 @@ MYLOG(0, "aunq_match=%d pgtcount=%d\n", aunq_match, pgtcount); { set_tuplefield_string(&tuple[GETTYPE_TYPE_NAME], PGTYPE_TO_NAME(conn, pgType, TRUE)); set_tuplefield_int2(&tuple[GETTYPE_NULLABLE], SQL_NO_NULLS); -MYLOG(1, "serial in\n"); +MYLOG(DETAIL_LOG_LEVEL, "serial in\n"); } else { @@ -2942,7 +2942,7 @@ retry_public_schema: set_tuplefield_int4(&tuple[SPECOLS_BUFFER_LENGTH], PGTYPE_ATTR_BUFFER_LENGTH(conn, the_type, atttypmod)); set_tuplefield_int2(&tuple[SPECOLS_DECIMAL_DIGITS], PGTYPE_ATTR_DECIMAL_DIGITS(conn, the_type, atttypmod)); set_tuplefield_int2(&tuple[SPECOLS_PSEUDO_COLUMN], SQL_PC_NOT_PSEUDO); -MYLOG(1, "Add ctid\n"); +MYLOG(DETAIL_LOG_LEVEL, "Add ctid\n"); } } else diff --git a/misc.c b/misc.c index 040f870..f7ff1d2 100644 --- a/misc.c +++ b/misc.c @@ -125,9 +125,9 @@ make_string(const SQLCHAR *s, SQLINTEGER len, char *buf, size_t bufsize) return buf; } -MYLOG(1, "malloc size=" FORMAT_SIZE_T "\n", length); +MYLOG(DETAIL_LOG_LEVEL, "malloc size=" FORMAT_SIZE_T "\n", length); str = malloc(length + 1); -MYLOG(1, "str=%p\n", str); +MYLOG(DETAIL_LOG_LEVEL, "str=%p\n", str); if (!str) return NULL; diff --git a/mylog.h b/mylog.h index c6b2acc..2a2e734 100644 --- a/mylog.h +++ b/mylog.h @@ -66,6 +66,10 @@ const char *po_basename(const char *path); #define QPRINTF(level, ...) ((level < get_qlog() ? qprintf(__VA_ARGS__) : 0), MYPRINTF(level, __VA_ARGS__)) #endif /* __GNUC__ */ +#define MIN_LOG_LEVEL 0 +#define TUPLE_LOG_LEVEL 1 +#define DETAIL_LOG_LEVEL 2 + int get_qlog(void); int get_mylog(void); diff --git a/odbcapi30.c b/odbcapi30.c index 4a15efe..7fa1cbd 100644 --- a/odbcapi30.c +++ b/odbcapi30.c @@ -63,7 +63,7 @@ SQLAllocHandle(SQLSMALLINT HandleType, ENTER_CONN_CS(conn); ret = PGAPI_AllocDesc(InputHandle, OutputHandle); LEAVE_CONN_CS(conn); -MYLOG(1, "OutputHandle=%p\n", *OutputHandle); +MYLOG(DETAIL_LOG_LEVEL, "OutputHandle=%p\n", *OutputHandle); break; default: ret = SQL_ERROR; @@ -556,7 +556,7 @@ PGAPI_GetFunctions30(HDBC hdbc, SQLUSMALLINT fFunction, SQLUSMALLINT FAR * pfExi ConnectionClass *conn = (ConnectionClass *) hdbc; ConnInfo *ci = &(conn->connInfo); -MYLOG(1, "lie=%d\n", ci->drivers.lie); +MYLOG(DETAIL_LOG_LEVEL, "lie=%d\n", ci->drivers.lie); CC_examine_global_transaction(conn); CC_clear_error(conn); if (fFunction != SQL_API_ODBC3_ALL_FUNCTIONS) diff --git a/odbcapiw.c b/odbcapiw.c index 593d700..f719649 100644 --- a/odbcapiw.c +++ b/odbcapiw.c @@ -174,7 +174,7 @@ SQLDriverConnectW(HDBC hdbc, utf8_to_ucs2(szOut, maxlen, szConnStrOut, cbConnStrOutMax); if (outlen >= cbConnStrOutMax && NULL != szConnStrOut && NULL != pcbConnStrOut) { -MYLOG(1, "cbConnstrOutMax=%d pcb=%p\n", cbConnStrOutMax, pcbConnStrOut); +MYLOG(DETAIL_LOG_LEVEL, "cbConnstrOutMax=%d pcb=%p\n", cbConnStrOutMax, pcbConnStrOut); if (SQL_SUCCESS == ret) { CC_set_error(conn, CONN_TRUNCATED, "the ConnStrOut is too small", func); diff --git a/parse.c b/parse.c index 8086440..6645627 100644 --- a/parse.c +++ b/parse.c @@ -288,7 +288,7 @@ getColInfo(COL_INFO *col_info, FIELD_INFO *fi, int k) { char *str; -MYLOG(1, "entering non-manual result\n"); +MYLOG(DETAIL_LOG_LEVEL, "entering non-manual result\n"); fi->dquote = TRUE; STR_TO_NAME(fi->column_name, QR_get_value_backend_text(col_info->result, k, COLUMNS_COLUMN_NAME)); @@ -313,7 +313,7 @@ searchColInfo(COL_INFO *col_info, FIELD_INFO *fi) OID basetype; const char *col; -MYLOG(1, "entering num_cols=" FORMAT_ULEN " col=%s\n", QR_get_num_cached_tuples(col_info->result), PRINT_NAME(fi->column_name)); +MYLOG(DETAIL_LOG_LEVEL, "entering num_cols=" FORMAT_ULEN " col=%s\n", QR_get_num_cached_tuples(col_info->result), PRINT_NAME(fi->column_name)); if (fi->attnum < 0) return FALSE; for (k = 0; k < QR_get_num_cached_tuples(col_info->result); k++) @@ -324,7 +324,7 @@ MYLOG(1, "entering num_cols=" FORMAT_ULEN " col=%s\n", QR_get_num_cached_tuples( if (basetype = (OID) strtoul(QR_get_value_backend_text(col_info->result, k, COLUMNS_BASE_TYPEID), NULL, 10), 0 == basetype) basetype = (OID) strtoul(QR_get_value_backend_text(col_info->result, k, COLUMNS_FIELD_TYPE), NULL, 10); atttypmod = QR_get_value_backend_int(col_info->result, k, COLUMNS_ATTTYPMOD, NULL); -MYLOG(1, "%d attnum=%d\n", k, attnum); +MYLOG(DETAIL_LOG_LEVEL, "%d attnum=%d\n", k, attnum); if (attnum == fi->attnum && basetype == fi->basetype && atttypmod == fi->typmod) @@ -337,7 +337,7 @@ MYLOG(1, "%d attnum=%d\n", k, attnum); else if (NAME_IS_VALID(fi->column_name)) { col = QR_get_value_backend_text(col_info->result, k, COLUMNS_COLUMN_NAME); -MYLOG(1, "%d col=%s\n", k, col); +MYLOG(DETAIL_LOG_LEVEL, "%d col=%s\n", k, col); if (fi->dquote) cmp = strcmp(col, GET_NAME(fi->column_name)); else @@ -595,7 +595,7 @@ static BOOL has_multi_table(const StatementClass *stmt) BOOL multi_table = FALSE; QResultClass *res; -MYLOG(1, "entering ntab=%d", stmt->ntab); +MYLOG(DETAIL_LOG_LEVEL, "entering ntab=%d", stmt->ntab); if (1 < stmt->ntab) multi_table = TRUE; else if (SC_has_join(stmt)) @@ -614,14 +614,14 @@ MYLOG(1, "entering ntab=%d", stmt->ntab); reloid = greloid; else if (reloid != greloid) { -MYPRINTF(1, " DOHHH i=%d %u!=%u ", i, reloid, greloid); +MYPRINTF(DETAIL_LOG_LEVEL, " DOHHH i=%d %u!=%u ", i, reloid, greloid); multi_table = TRUE; break; } } } } -MYPRINTF(1, " multi=%d\n", multi_table); +MYPRINTF(DETAIL_LOG_LEVEL, " multi=%d\n", multi_table); return multi_table; } /* @@ -944,7 +944,7 @@ getColumnsInfo(ConnectionClass *conn, TABLE_INFO *wti, OID greloid, StatementCla STR_TO_NAME(wti->table_name, QR_get_value_backend_text(res, 0, COLUMNS_TABLE_NAME)); } -MYLOG(1, "#2 %p->table_name=%s(%u)\n", wti, PRINT_NAME(wti->table_name), wti->table_oid); +MYLOG(DETAIL_LOG_LEVEL, "#2 %p->table_name=%s(%u)\n", wti, PRINT_NAME(wti->table_name), wti->table_oid); /* * Store the table name and the SQLColumns result * structure @@ -968,7 +968,7 @@ MYLOG(1, "#2 %p->table_name=%s(%u)\n", wti, PRINT_NAME(wti->table_name), wti->ta conn->ntables++; if (res && QR_get_num_cached_tuples(res) > 0) -MYLOG(1, "oid item == %s\n", (const char *) QR_get_value_backend_text(res, 0, 3)); +MYLOG(DETAIL_LOG_LEVEL, "oid item == %s\n", (const char *) QR_get_value_backend_text(res, 0, 3)); MYLOG(0, "Created col_info table='%s', ntables=%d\n", PRINT_NAME(wti->table_name), conn->ntables); /* Associate a table from the statement with a SQLColumn info */ @@ -989,7 +989,7 @@ BOOL getCOLIfromTI(const char *func, ConnectionClass *conn, StatementClass *stmt TABLE_INFO *wti = *pti; COL_INFO *coli; -MYLOG(1, "entering reloid=%u ti=%p\n", reloid, wti); +MYLOG(DETAIL_LOG_LEVEL, "entering reloid=%u ti=%p\n", reloid, wti); if (!conn) conn = SC_get_conn(stmt); if (!wti) /* SQLColAttribute case */ @@ -1011,7 +1011,7 @@ MYLOG(1, "entering reloid=%u ti=%p\n", reloid, wti); } if (!wti) { -MYLOG(1, "before increaseNtab\n"); +MYLOG(DETAIL_LOG_LEVEL, "before increaseNtab\n"); if (!increaseNtab(stmt, func)) return FALSE; wti = stmt->ti[stmt->ntab - 1]; @@ -1019,7 +1019,7 @@ MYLOG(1, "before increaseNtab\n"); } *pti = wti; } -MYLOG(1, "fi=%p greloid=%d col_info=%p\n", wti, greloid, wti->col_info); +MYLOG(DETAIL_LOG_LEVEL, "fi=%p greloid=%d col_info=%p\n", wti, greloid, wti->col_info); if (0 == greloid) greloid = wti->table_oid; if (NULL != wti->col_info) @@ -1084,7 +1084,7 @@ cleanup: STR_TO_NAME(wti->table_name, QR_get_value_backend_text(res, 0, COLUMNS_TABLE_NAME)); } -MYLOG(1, "#1 %p->table_name=%s(%u)\n", wti, PRINT_NAME(wti->table_name), wti->table_oid); +MYLOG(DETAIL_LOG_LEVEL, "#1 %p->table_name=%s(%u)\n", wti, PRINT_NAME(wti->table_name), wti->table_oid); if (colatt /* SQLColAttribute case */ && 0 == (wti->flags & TI_COLATTRIBUTE)) { @@ -1095,7 +1095,7 @@ MYLOG(1, "#1 %p->table_name=%s(%u)\n", wti, PRINT_NAME(wti->table_name), wti->ta } else if (!colatt && stmt) SC_set_parse_status(stmt, STMT_PARSE_FATAL); -MYLOG(1, "leaving returns %d\n", found); +MYLOG(DETAIL_LOG_LEVEL, "leaving returns %d\n", found); return found; } @@ -1110,7 +1110,7 @@ SC_set_SS_columnkey(StatementClass *stmt) BOOL contains_key = FALSE; int i; -MYLOG(1, "entering fields=" FORMAT_SIZE_T " ntab=%d\n", nfields, stmt->ntab); +MYLOG(DETAIL_LOG_LEVEL, "entering fields=" FORMAT_SIZE_T " ntab=%d\n", nfields, stmt->ntab); if (!fi) return ret; if (0 >= nfields) return ret; if (!has_multi_table(stmt) && 1 == stmt->ntab) @@ -1148,7 +1148,7 @@ MYLOG(1, "entering fields=" FORMAT_SIZE_T " ntab=%d\n", nfields, stmt->ntab); if (oneti == tfi->ti && strcmp(keycolnam, SAFE_NAME(tfi->column_name)) == 0) { -MYLOG(1, "key %s found at %p\n", keycolnam, fi + i); +MYLOG(DETAIL_LOG_LEVEL, "key %s found at %p\n", keycolnam, fi + i); tfi->columnkey = TRUE; break; } @@ -1166,7 +1166,7 @@ MYLOG(1, "key %s found at %p\n", keycolnam, fi + i); goto cleanup; ret = SQL_SUCCESS; } -MYLOG(1, "contains_key=%d\n", contains_key); +MYLOG(DETAIL_LOG_LEVEL, "contains_key=%d\n", contains_key); for (i = 0; i < nfields; i++) { if (tfi = fi[i], NULL == tfi) diff --git a/pgapi30.c b/pgapi30.c index cccf379..d3a2634 100644 --- a/pgapi30.c +++ b/pgapi30.c @@ -20,6 +20,7 @@ #include #include + #include "environ.h" #include "connection.h" #include "statement.h" @@ -292,7 +293,7 @@ PGAPI_GetDiagField(SQLSMALLINT HandleType, SQLHANDLE Handle, rc = QR_get_num_total_tuples(res) - res->dl_count; } *((SQLLEN *) DiagInfoPtr) = rc; -MYLOG(1, "rc=" FORMAT_LEN "\n", rc); +MYLOG(DETAIL_LOG_LEVEL, "rc=" FORMAT_LEN "\n", rc); ret = SQL_SUCCESS; break; case SQL_DIAG_ROW_COUNT: @@ -712,14 +713,14 @@ APDSetField(DescriptorClass *desc, SQLSMALLINT RecNumber, } if (RecNumber <=0) { -MYLOG(1, "RecN=%d allocated=%d\n", RecNumber, opts->allocated); +MYLOG(DETAIL_LOG_LEVEL, "RecN=%d allocated=%d\n", RecNumber, opts->allocated); DC_set_error(desc, DESC_BAD_PARAMETER_NUMBER_ERROR, "bad parameter number"); return SQL_ERROR; } if (RecNumber > opts->allocated) { -MYLOG(1, "RecN=%d allocated=%d\n", RecNumber, opts->allocated); +MYLOG(DETAIL_LOG_LEVEL, "RecN=%d allocated=%d\n", RecNumber, opts->allocated); parameter_bindings_set(opts, RecNumber, TRUE); /* DC_set_error(desc, DESC_BAD_PARAMETER_NUMBER_ERROR, "bad parameter number"); @@ -881,7 +882,7 @@ IPDSetField(DescriptorClass *desc, SQLSMALLINT RecNumber, } if (RecNumber <= 0 || RecNumber > ipdopts->allocated) { -MYLOG(1, "RecN=%d allocated=%d\n", RecNumber, ipdopts->allocated); +MYLOG(DETAIL_LOG_LEVEL, "RecN=%d allocated=%d\n", RecNumber, ipdopts->allocated); DC_set_error(desc, DESC_BAD_PARAMETER_NUMBER_ERROR, "bad parameter number"); return SQL_ERROR; @@ -1160,7 +1161,7 @@ APDGetField(DescriptorClass *desc, SQLSMALLINT RecNumber, break; default:if (RecNumber <= 0 || RecNumber > opts->allocated) { -MYLOG(1, "RecN=%d allocated=%d\n", RecNumber, opts->allocated); +MYLOG(DETAIL_LOG_LEVEL, "RecN=%d allocated=%d\n", RecNumber, opts->allocated); DC_set_error(desc, DESC_BAD_PARAMETER_NUMBER_ERROR, "bad parameter number"); return SQL_ERROR; @@ -1414,7 +1415,7 @@ IPDGetField(DescriptorClass *desc, SQLSMALLINT RecNumber, break; default:if (RecNumber <= 0 || RecNumber > ipdopts->allocated) { -MYLOG(1, "RecN=%d allocated=%d\n", RecNumber, ipdopts->allocated); +MYLOG(DETAIL_LOG_LEVEL, "RecN=%d allocated=%d\n", RecNumber, ipdopts->allocated); DC_set_error(desc, DESC_BAD_PARAMETER_NUMBER_ERROR, "bad parameter number"); return SQL_ERROR; @@ -1945,7 +1946,7 @@ PGAPI_SetStmtAttr(HSTMT StatementHandle, else { stmt->ard = (DescriptorClass *) Value; -MYLOG(1, "set ard=%p\n", stmt->ard); +MYLOG(DETAIL_LOG_LEVEL, "set ard=%p\n", stmt->ard); } break; case SQL_ATTR_APP_PARAM_DESC: /* 10011 */ diff --git a/pgtypes.c b/pgtypes.c index ddf68f2..e2da0a7 100644 --- a/pgtypes.c +++ b/pgtypes.c @@ -303,17 +303,17 @@ getCharColumnSizeX(const ConnectionClass *conn, OID type, int atttypmod, int adt * Static ColumnSize (i.e., the Maximum ColumnSize of the datatype) This * has nothing to do with a result set. */ -MYLOG(1, "!!! atttypmod < 0 ?\n"); +MYLOG(DETAIL_LOG_LEVEL, "!!! atttypmod < 0 ?\n"); if (atttypmod < 0 && adtsize_or_longestlen < 0) return maxsize; -MYLOG(1, "!!! adtsize_or_logngest=%d\n", adtsize_or_longestlen); +MYLOG(DETAIL_LOG_LEVEL, "!!! adtsize_or_logngest=%d\n", adtsize_or_longestlen); p = adtsize_or_longestlen; /* longest */ /* * Catalog Result Sets -- use assigned column width (i.e., from * set_tuplefield_string) */ -MYLOG(1, "!!! catalog_result=%d\n", handle_unknown_size_as); +MYLOG(DETAIL_LOG_LEVEL, "!!! catalog_result=%d\n", handle_unknown_size_as); if (UNKNOWNS_AS_LONGEST == handle_unknown_size_as) { MYLOG(0, "LONGEST: p = %d\n", p); @@ -794,7 +794,7 @@ pgtype_attr_to_name(const ConnectionClass *conn, OID type, int atttypmod, BOOL a case PG_TYPE_XID: return "xid"; case PG_TYPE_INT4: -MYLOG(1, "pgtype_to_name int4\n"); +MYLOG(DETAIL_LOG_LEVEL, "pgtype_to_name int4\n"); return auto_increment ? "serial" : "int4"; case PG_TYPE_FLOAT4: return "float4"; diff --git a/qresult.c b/qresult.c index 325c4be..466a482 100644 --- a/qresult.c +++ b/qresult.c @@ -440,7 +440,7 @@ TupleField *QR_AddNew(QResultClass *self) UInt4 num_fields; if (!self) return NULL; -MYLOG(1, FORMAT_ULEN "th row(%d fields) alloc=" FORMAT_LEN "\n", self->num_cached_rows, QR_NumResultCols(self), self->count_backend_allocated); +MYLOG(DETAIL_LOG_LEVEL, FORMAT_ULEN "th row(%d fields) alloc=" FORMAT_LEN "\n", self->num_cached_rows, QR_NumResultCols(self), self->count_backend_allocated); if (num_fields = QR_NumResultCols(self), !num_fields) return NULL; if (self->num_fields <= 0) { @@ -656,7 +656,7 @@ QR_from_PGresult(QResultClass *self, StatementClass *stmt, ConnectionClass *conn if (SQL_PARAM_OUTPUT == paramType || SQL_PARAM_INPUT_OUTPUT == paramType) { -MYLOG(1, "[%d].PGType %u->%u\n", i, PIC_get_pgtype(ipdopts->parameters[i]), CI_get_oid(QR_get_fields(self), cidx)); +MYLOG(DETAIL_LOG_LEVEL, "[%d].PGType %u->%u\n", i, PIC_get_pgtype(ipdopts->parameters[i]), CI_get_oid(QR_get_fields(self), cidx)); PIC_set_pgtype(ipdopts->parameters[i], CI_get_oid(QR_get_fields(self), cidx)); cidx++; } @@ -671,7 +671,7 @@ MYLOG(1, "[%d].PGType %u->%u\n", i, PIC_get_pgtype(ipdopts->parameters[i]), CI_g if (!QR_read_tuples_from_pgres(self, pgres)) return FALSE; -MYLOG(1, "!!%p->cursTup=" FORMAT_LEN " total_read=" FORMAT_ULEN "\n", self, self->cursTuple, self->num_total_read); +MYLOG(DETAIL_LOG_LEVEL, "!!%p->cursTup=" FORMAT_LEN " total_read=" FORMAT_ULEN "\n", self, self->cursTuple, self->num_total_read); if (!QR_once_reached_eof(self) && self->cursTuple >= (Int4) self->num_total_read) self->num_total_read = self->cursTuple + 1; /* EOF is 'fetched < fetch requested' */ @@ -759,7 +759,7 @@ QR_close(QResultClass *self) does_commit = TRUE; } -MYLOG(1, " Case I CC_send_query %s flag=%x\n", buf, flag); +MYLOG(DETAIL_LOG_LEVEL, " Case I CC_send_query %s flag=%x\n", buf, flag); res = CC_send_query(conn, buf, NULL, flag, NULL); QR_Destructor(res); if (does_commit) @@ -805,7 +805,7 @@ QR_prepare_for_tupledata(QResultClass *self) BOOL haskeyset = QR_haskeyset(self); SQLULEN num_total_rows = QR_get_num_total_tuples(self); -MYLOG(1, "entering %p->num_fields=%d\n", self, self->num_fields); +MYLOG(DETAIL_LOG_LEVEL, "entering %p->num_fields=%d\n", self, self->num_fields); if (!QR_get_cursor(self)) { @@ -955,8 +955,8 @@ QR_next_tuple(QResultClass *self, StatementClass *stmt) ConnInfo *ci; BOOL reached_eof_now = FALSE, curr_eof; /* detecting EOF is pretty important */ -MYLOG(1, "Oh %p->fetch_number=" FORMAT_LEN "\n", self, self->fetch_number); -MYLOG(1, "in total_read=" FORMAT_ULEN " cursT=" FORMAT_LEN " currT=" FORMAT_LEN " ad=%d total=" FORMAT_ULEN " rowsetSize=%d\n", self->num_total_read, self->cursTuple, stmt->currTuple, self->ad_count, QR_get_num_total_tuples(self), self->rowset_size_include_ommitted); +MYLOG(DETAIL_LOG_LEVEL, "Oh %p->fetch_number=" FORMAT_LEN "\n", self, self->fetch_number); +MYLOG(DETAIL_LOG_LEVEL, "in total_read=" FORMAT_ULEN " cursT=" FORMAT_LEN " currT=" FORMAT_LEN " ad=%d total=" FORMAT_ULEN " rowsetSize=%d\n", self->num_total_read, self->cursTuple, stmt->currTuple, self->ad_count, QR_get_num_total_tuples(self), self->rowset_size_include_ommitted); num_total_rows = QR_get_num_total_tuples(self); conn = QR_get_conn(self); @@ -991,7 +991,7 @@ MYLOG(1, "in total_read=" FORMAT_ULEN " cursT=" FORMAT_LEN " currT=" FORMAT_LEN } else self->cache_size = req_size; -MYLOG(1, "cache=" FORMAT_ULEN " rowset=%d movement=" FORMAT_ULEN "\n", self->cache_size, req_size, movement); +MYLOG(DETAIL_LOG_LEVEL, "cache=" FORMAT_ULEN " rowset=%d movement=" FORMAT_ULEN "\n", self->cache_size, req_size, movement); SPRINTF_FIXED(movecmd, "move backward " FORMAT_ULEN " in \"%s\"", movement, QR_get_cursor(self)); @@ -1017,7 +1017,7 @@ MYLOG(1, "cache=" FORMAT_ULEN " rowset=%d movement=" FORMAT_ULEN "\n", self->cac moved = movement; if (sscanf(mres->command, "MOVE " FORMAT_ULEN, &moved) > 0) { -MYLOG(1, "moved=" FORMAT_ULEN " ? " FORMAT_ULEN "\n", moved, movement); +MYLOG(DETAIL_LOG_LEVEL, "moved=" FORMAT_ULEN " ? " FORMAT_ULEN "\n", moved, movement); if (moved < movement) { if (0 < moved) @@ -1066,7 +1066,7 @@ MYLOG(1, "moved=" FORMAT_ULEN " ? " FORMAT_ULEN "\n", moved, movement); /* return a row from cache */ MYLOG(0, "fetch_number < fcount: returning tuple " FORMAT_LEN ", fcount = " FORMAT_LEN "\n", fetch_number, num_backend_rows); self->tupleField = the_tuples + (fetch_number * num_fields); -MYLOG(1, "tupleField=%p\n", self->tupleField); +MYLOG(DETAIL_LOG_LEVEL, "tupleField=%p\n", self->tupleField); /* move to next row */ QR_inc_next_in_cache(self); RETURN(TRUE) @@ -1110,7 +1110,7 @@ MYLOG(1, "tupleField=%p\n", self->tupleField); /* not a correction */ self->cache_size = fetch_size; /* clear obsolete tuples */ -MYLOG(1, "clear obsolete " FORMAT_LEN " tuples\n", num_backend_rows); +MYLOG(DETAIL_LOG_LEVEL, "clear obsolete " FORMAT_LEN " tuples\n", num_backend_rows); ClearCachedRows(tuple, num_fields, num_backend_rows); self->dataFilled = FALSE; QR_stop_movement(self); @@ -1171,7 +1171,7 @@ MYLOG(1, "clear obsolete " FORMAT_LEN " tuples\n", num_backend_rows); self->tupleField = NULL; curr_eof = reached_eof_now = (QR_once_reached_eof(self) && self->cursTuple >= (Int4)self->num_total_read); -MYLOG(1, "reached_eof_now=%d\n", reached_eof_now); +MYLOG(DETAIL_LOG_LEVEL, "reached_eof_now=%d\n", reached_eof_now); MYLOG(0, ": PGresult: fetch_total = " FORMAT_ULEN " & this_fetch = " FORMAT_ULEN "\n", self->num_total_read, self->num_cached_rows); MYLOG(0, ": PGresult: cursTuple = " FORMAT_LEN ", offset = " FORMAT_LEN "\n", self->cursTuple, offset); @@ -1214,7 +1214,7 @@ MYLOG(1, "reached_eof_now=%d\n", reached_eof_now); add_size = fetch_size - cur_fetch; else if (add_size < 0) add_size = 0; -MYLOG(1, "will add " FORMAT_LEN " added_tuples from " FORMAT_LEN " and select the " FORMAT_LEN "th added tuple " FORMAT_LEN "\n", add_size, start_idx, offset - num_backend_rows + start_idx, cur_fetch); +MYLOG(DETAIL_LOG_LEVEL, "will add " FORMAT_LEN " added_tuples from " FORMAT_LEN " and select the " FORMAT_LEN "th added tuple " FORMAT_LEN "\n", add_size, start_idx, offset - num_backend_rows + start_idx, cur_fetch); if (enlargeKeyCache(self, add_size, "Out of memory while adding tuples") < 0) RETURN(FALSE) /* append the KeySet info first */ @@ -1292,7 +1292,7 @@ MYLOG(1, "will add " FORMAT_LEN " added_tuples from " FORMAT_LEN " and select th for (i = 0; i < num_backend_rows; i++) { self->keyset[i].status &= (~CURS_NEEDS_REREAD); -/*MYLOG(1, "keyset[%d].status=%x\n", i, self->keyset[i].status);*/ +/*MYLOG(DETAIL_LOG_LEVEL, "keyset[%d].status=%x\n", i, self->keyset[i].status);*/ } } @@ -1300,7 +1300,7 @@ cleanup: LEAVE_CONN_CS(conn); #undef RETURN #undef return -MYLOG(1, "returning %d offset=" FORMAT_LEN "\n", ret, offset); +MYLOG(DETAIL_LOG_LEVEL, "returning %d offset=" FORMAT_LEN "\n", ret, offset); return ret; } @@ -1371,7 +1371,7 @@ nextrow: this_keyset->status = 0; } - QLOG(1, "\t"); + QLOG(TUPLE_LOG_LEVEL, "\t"); for (field_lf = 0; field_lf < ci_num_fields; field_lf++) { BOOL isnull = FALSE; @@ -1382,7 +1382,7 @@ nextrow: { this_tuplefield[field_lf].len = 0; this_tuplefield[field_lf].value = 0; - QPRINTF(1, " (null)"); + QPRINTF(TUPLE_LOG_LEVEL, " (null)"); continue; } else @@ -1398,7 +1398,7 @@ nextrow: memcpy(buffer, value, len); buffer[len] = '\0'; - QPRINTF(1, " '%s'(%d)", buffer, len); + QPRINTF(TUPLE_LOG_LEVEL, " '%s'(%d)", buffer, len); if (field_lf >= effective_cols) { @@ -1436,7 +1436,7 @@ nextrow: } } } - QPRINTF(1, "\n"); + QPRINTF(TUPLE_LOG_LEVEL, "\n"); self->cursTuple++; if (self->num_fields > 0) { @@ -1460,7 +1460,7 @@ nextrow: self->dataFilled = TRUE; self->tupleField = self->backend_tuples + (self->fetch_number * self->num_fields); -MYLOG(1, "tupleField=%p\n", self->tupleField); +MYLOG(DETAIL_LOG_LEVEL, "tupleField=%p\n", self->tupleField); QR_set_rstatus(self, PORES_TUPLES_OK); diff --git a/results.c b/results.c index 6478d72..0068132 100644 --- a/results.c +++ b/results.c @@ -55,7 +55,7 @@ PGAPI_RowCount(HSTMT hstmt, if (stmt->proc_return > 0) { *pcrow = 0; - MYLOG(1, "returning RowCount=" FORMAT_LEN "\n", *pcrow); + MYLOG(DETAIL_LOG_LEVEL, "returning RowCount=" FORMAT_LEN "\n", *pcrow); return SQL_SUCCESS; } @@ -110,10 +110,10 @@ SC_describe_ok(StatementClass *stmt, BOOL build_fi, int col_idx, const char *fun FIELD_INFO *fi; TABLE_INFO *ti = NULL; -MYLOG(1, "build_fi=%d reloid=%u\n", build_fi, reloid); +MYLOG(DETAIL_LOG_LEVEL, "build_fi=%d reloid=%u\n", build_fi, reloid); if (build_fi && 0 != QR_get_attid(result, col_idx)) getCOLIfromTI(func, NULL, stmt, reloid, &ti); -MYLOG(1, "nfields=%d\n", irdflds->nfields); +MYLOG(DETAIL_LOG_LEVEL, "nfields=%d\n", irdflds->nfields); if (irdflds->fi && col_idx < (int) irdflds->nfields) { fi = irdflds->fi[col_idx]; @@ -255,7 +255,7 @@ PGAPI_DescribeCol(HSTMT hstmt, { SQLSMALLINT fType = stmt->options.use_bookmarks == SQL_UB_VARIABLE ? SQL_BINARY : SQL_INTEGER; -MYLOG(1, "answering bookmark info\n"); +MYLOG(DETAIL_LOG_LEVEL, "answering bookmark info\n"); if (szColName && cbColNameMax > 0) *szColName = '\0'; if (pcbColName) @@ -516,7 +516,7 @@ PGAPI_ColAttributes(HSTMT hstmt, res = SC_get_Curres(stmt); if (0 == icol && SQL_DESC_COUNT != fDescType) /* bookmark column */ { -MYLOG(1, "answering bookmark info\n"); +MYLOG(DETAIL_LOG_LEVEL, "answering bookmark info\n"); switch (fDescType) { case SQL_DESC_OCTET_LENGTH: @@ -688,11 +688,11 @@ MYLOG(1, "answering bookmark info\n"); /* otherwise same as column name -- FALL THROUGH!!! */ case SQL_DESC_NAME: - MYLOG(1, "fi=%p (alias, name)=", fi); + MYLOG(DETAIL_LOG_LEVEL, "fi=%p (alias, name)=", fi); if (fi) - MYPRINTF(1, "(%s,%s)\n", PRINT_NAME(fi->column_alias), PRINT_NAME(fi->column_name)); + MYPRINTF(DETAIL_LOG_LEVEL, "(%s,%s)\n", PRINT_NAME(fi->column_alias), PRINT_NAME(fi->column_name)); else - MYPRINTF(1, "NULL\n"); + MYPRINTF(DETAIL_LOG_LEVEL, "NULL\n"); p = fi ? (NAME_IS_NULL(fi->column_alias) ? SAFE_NAME(fi->column_name) : GET_NAME(fi->column_alias)) : QR_get_fieldname(res, col_idx); MYLOG(0, "COLUMN_NAME = '%s'\n", p); @@ -709,7 +709,7 @@ MYLOG(1, "answering bookmark info\n"); case SQL_COLUMN_MONEY: /* == SQL_DESC_FIXED_PREC_SCALE */ value = pgtype_money(conn, field_type); -MYLOG(1, "COLUMN_MONEY=" FORMAT_LEN "\n", value); +MYLOG(DETAIL_LOG_LEVEL, "COLUMN_MONEY=" FORMAT_LEN "\n", value); break; case SQL_DESC_NULLABLE: @@ -717,7 +717,7 @@ MYLOG(1, "COLUMN_MONEY=" FORMAT_LEN "\n", value); value = TRUE; else value = fi ? fi->nullable : pgtype_nullable(conn, field_type); -MYLOG(1, "COLUMN_NULLABLE=" FORMAT_LEN "\n", value); +MYLOG(DETAIL_LOG_LEVEL, "COLUMN_NULLABLE=" FORMAT_LEN "\n", value); break; case SQL_COLUMN_OWNER_NAME: /* == SQL_DESC_SCHEMA_NAME */ @@ -739,7 +739,7 @@ MYLOG(1, "COLUMN_NULLABLE=" FORMAT_LEN "\n", value); case SQL_COLUMN_SCALE: /* in 2.x */ value = pgtype_decimal_digits(stmt, field_type, col_idx); -MYLOG(1, "COLUMN_SCALE=" FORMAT_LEN "\n", value); +MYLOG(DETAIL_LOG_LEVEL, "COLUMN_SCALE=" FORMAT_LEN "\n", value); if (value < 0) value = 0; break; @@ -994,7 +994,7 @@ PGAPI_GetData(HSTMT hstmt, case SQL_C_VARBOOKMARK: break; default: -MYLOG(1, "GetData Column 0 is type %d not of type SQL_C_BOOKMARK\n", target_type); +MYLOG(DETAIL_LOG_LEVEL, "GetData Column 0 is type %d not of type SQL_C_BOOKMARK\n", target_type); SC_set_error(stmt, STMT_PROGRAM_TYPE_OUT_OF_RANGE, "Column 0 is not of type SQL_C_BOOKMARK", func); return SQL_ERROR; } @@ -1034,7 +1034,7 @@ MYLOG(1, "GetData Column 0 is type %d not of type SQL_C_BOOKMARK\n", target_type { SQLLEN curt = GIdx2CacheIdx(stmt->currTuple, stmt, res); value = QR_get_value_backend_row(res, curt, icol); -MYLOG(1, "currT=" FORMAT_LEN " base=" FORMAT_LEN " rowset=" FORMAT_LEN "\n", stmt->currTuple, QR_get_rowstart_in_cache(res), SC_get_rowset_start(stmt)); +MYLOG(DETAIL_LOG_LEVEL, "currT=" FORMAT_LEN " base=" FORMAT_LEN " rowset=" FORMAT_LEN "\n", stmt->currTuple, QR_get_rowstart_in_cache(res), SC_get_rowset_start(stmt)); MYLOG(0, " value = '%s'\n", NULL_IF_NULL(value)); } } @@ -1136,7 +1136,7 @@ MYLOG(1, "currT=" FORMAT_LEN " base=" FORMAT_LEN " rowset=" FORMAT_LEN "\n", stm cleanup: #undef return -MYLOG(1, "leaving %d\n", result); +MYLOG(DETAIL_LOG_LEVEL, "leaving %d\n", result); return result; } @@ -1228,10 +1228,10 @@ getNthValid(const QResultClass *res, SQLLEN sta, UWORD orientation, if (!QR_once_reached_eof(res)) num_tuples = INT_MAX; /* Note that the parameter nth is 1-based */ -MYLOG(1, "get " FORMAT_ULEN "th Valid data from " FORMAT_LEN " to %s [dlt=%d]", nth, sta, orientation == SQL_FETCH_PRIOR ? "backward" : "forward", res->dl_count); +MYLOG(DETAIL_LOG_LEVEL, "get " FORMAT_ULEN "th Valid data from " FORMAT_LEN " to %s [dlt=%d]", nth, sta, orientation == SQL_FETCH_PRIOR ? "backward" : "forward", res->dl_count); if (0 == res->dl_count) { - MYPRINTF(1, "\n"); + MYPRINTF(DETAIL_LOG_LEVEL, "\n"); if (SQL_FETCH_PRIOR == orientation) { if (sta + 1 >= (SQLLEN) nth) @@ -1264,10 +1264,10 @@ MYLOG(1, "get " FORMAT_ULEN "th Valid data from " FORMAT_LEN " to %s [dlt=%d]", { *nearest = sta + 1 - nth; delsta = (-1); - MYPRINTF(1, "deleted "); + MYPRINTF(DETAIL_LOG_LEVEL, "deleted "); for (i = res->dl_count - 1; i >=0 && *nearest <= deleted[i]; i--) { - MYPRINTF(1, "[" FORMAT_LEN "]=" FORMAT_LEN " ", i, deleted[i]); + MYPRINTF(DETAIL_LOG_LEVEL, "[" FORMAT_LEN "]=" FORMAT_LEN " ", i, deleted[i]); if (sta >= deleted[i]) { (*nearest)--; @@ -1275,7 +1275,7 @@ MYLOG(1, "get " FORMAT_ULEN "th Valid data from " FORMAT_LEN " to %s [dlt=%d]", delsta = i; } } - MYPRINTF(1, "nearest=" FORMAT_LEN "\n", *nearest); + MYPRINTF(DETAIL_LOG_LEVEL, "nearest=" FORMAT_LEN "\n", *nearest); if (*nearest < 0) { *nearest = -1; @@ -1286,7 +1286,7 @@ MYLOG(1, "get " FORMAT_ULEN "th Valid data from " FORMAT_LEN " to %s [dlt=%d]", } else { - MYPRINTF(1, "\n"); + MYPRINTF(DETAIL_LOG_LEVEL, "\n"); *nearest = sta - 1 + nth; delsta = res->dl_count; if (!QR_once_reached_eof(res)) @@ -1317,7 +1317,7 @@ MYLOG(1, "get " FORMAT_ULEN "th Valid data from " FORMAT_LEN " to %s [dlt=%d]", if (0 == (keyset->status & (CURS_SELF_DELETING | CURS_SELF_DELETED | CURS_OTHER_DELETED))) { *nearest = i; -MYPRINTF(1, " nearest=" FORMAT_LEN "\n", *nearest); +MYPRINTF(DETAIL_LOG_LEVEL, " nearest=" FORMAT_LEN "\n", *nearest); if (++count == nth) return count; } @@ -1332,14 +1332,14 @@ MYPRINTF(1, " nearest=" FORMAT_LEN "\n", *nearest); if (0 == (keyset->status & (CURS_SELF_DELETING | CURS_SELF_DELETED | CURS_OTHER_DELETED))) { *nearest = i; -MYPRINTF(1, " nearest=" FORMAT_LEN "\n", *nearest); +MYPRINTF(DETAIL_LOG_LEVEL, " nearest=" FORMAT_LEN "\n", *nearest); if (++count == nth) return count; } } *nearest = num_tuples; } -MYPRINTF(1, " nearest not found\n"); +MYPRINTF(DETAIL_LOG_LEVEL, " nearest not found\n"); return -(SQLLEN)count; } @@ -1358,7 +1358,7 @@ move_cursor_position_if_needed(StatementClass *self, QResultClass *res) res->move_offset = 0; return; } -MYLOG(1, "BASE=" FORMAT_LEN " numb=" FORMAT_LEN " curr=" FORMAT_LEN " cursT=" FORMAT_LEN "\n", QR_get_rowstart_in_cache(res), res->num_cached_rows, self->currTuple, res->cursTuple); +MYLOG(DETAIL_LOG_LEVEL, "BASE=" FORMAT_LEN " numb=" FORMAT_LEN " curr=" FORMAT_LEN " cursT=" FORMAT_LEN "\n", QR_get_rowstart_in_cache(res), res->num_cached_rows, self->currTuple, res->cursTuple); /* normal case */ res->move_offset = 0; @@ -1388,7 +1388,7 @@ MYLOG(1, "BASE=" FORMAT_LEN " numb=" FORMAT_LEN " curr=" FORMAT_LEN " cursT=" FO */ #define EXTFETCH_RETURN_BOF(stmt, res) \ { \ -MYLOG(1, "RETURN_BOF\n"); \ +MYLOG(DETAIL_LOG_LEVEL, "RETURN_BOF\n"); \ SC_set_rowset_start(stmt, -1, TRUE); \ stmt->currTuple = -1; \ /* move_cursor_position_if_needed(stmt, res); */ \ @@ -1396,7 +1396,7 @@ MYLOG(1, "RETURN_BOF\n"); \ } #define EXTFETCH_RETURN_EOF(stmt, res) \ { \ -MYLOG(1, "RETURN_EOF\n"); \ +MYLOG(DETAIL_LOG_LEVEL, "RETURN_EOF\n"); \ SC_set_rowset_start(stmt, num_tuples, TRUE); \ stmt->currTuple = -1; \ /* move_cursor_position_if_needed(stmt, res); */ \ @@ -1501,7 +1501,7 @@ PGAPI_ExtendedFetch(HSTMT hstmt, if (useCursor && !reached_eof) num_tuples = INT_MAX; -MYLOG(1, "num_tuples=" FORMAT_LEN "\n", num_tuples); +MYLOG(DETAIL_LOG_LEVEL, "num_tuples=" FORMAT_LEN "\n", num_tuples); /* Save and discard the saved rowset size */ save_rowset_size = stmt->save_rowset_size; stmt->save_rowset_size = -1; @@ -1845,7 +1845,7 @@ MYLOG(1, "num_tuples=" FORMAT_LEN "\n", num_tuples); if (SQL_NO_DATA_FOUND != result && res->keyset) { currp = GIdx2KResIdx(SC_get_rowset_start(stmt), stmt, res); -MYLOG(1, "currp=" FORMAT_LEN "\n", currp); +MYLOG(DETAIL_LOG_LEVEL, "currp=" FORMAT_LEN "\n", currp); if (currp < 0) { result = SQL_ERROR; @@ -1871,10 +1871,10 @@ MYLOG(1, "currp=" FORMAT_LEN "\n", currp); break; } } -MYLOG(1, "ExtFetch result=%d\n", result); +MYLOG(DETAIL_LOG_LEVEL, "ExtFetch result=%d\n", result); if (currp_is_valid && SQL_SUCCESS_WITH_INFO == result && 0 == stmt->last_fetch_count) { -MYLOG(1, "just skipping deleted row " FORMAT_LEN "\n", currp); +MYLOG(DETAIL_LOG_LEVEL, "just skipping deleted row " FORMAT_LEN "\n", currp); if (rowsetSize - i + fc_io > reqsize) QR_set_reqsize(res, (Int4) (rowsetSize - i + fc_io)); result = SC_fetch(stmt); @@ -1943,7 +1943,7 @@ MYLOG(1, "just skipping deleted row " FORMAT_LEN "\n", currp); /* Set the number of rows retrieved */ if (pcrow) *pcrow = i; -MYLOG(1, "pcrow=" FORMAT_LEN "\n", i); +MYLOG(DETAIL_LOG_LEVEL, "pcrow=" FORMAT_LEN "\n", i); if (i == 0) /* Only DeclareFetch should wind up here */ @@ -2056,7 +2056,7 @@ static void AddRollback(StatementClass *stmt, QResultClass *res, SQLLEN index, c if (!CC_is_in_trans(conn)) return; -MYLOG(1, "entering " FORMAT_LEN "(%u,%u) %s\n", index, keyset->blocknum, keyset->offset, dmlcode == SQL_ADD ? "ADD" : (dmlcode == SQL_UPDATE ? "UPDATE" : (dmlcode == SQL_DELETE ? "DELETE" : "REFRESH"))); +MYLOG(DETAIL_LOG_LEVEL, "entering " FORMAT_LEN "(%u,%u) %s\n", index, keyset->blocknum, keyset->offset, dmlcode == SQL_ADD ? "ADD" : (dmlcode == SQL_UPDATE ? "UPDATE" : (dmlcode == SQL_DELETE ? "DELETE" : "REFRESH"))); if (!res->rollback) { res->rb_count = 0; @@ -2106,7 +2106,7 @@ SQLLEN ClearCachedRows(TupleField *tuple, int num_fields, SQLLEN num_rows) { if (tuple->value) { -MYLOG(1, "freeing tuple[" FORMAT_LEN "][" FORMAT_LEN "].value=%p\n", i / num_fields, i % num_fields, tuple->value); +MYLOG(DETAIL_LOG_LEVEL, "freeing tuple[" FORMAT_LEN "][" FORMAT_LEN "].value=%p\n", i / num_fields, i % num_fields, tuple->value); free(tuple->value); tuple->value = NULL; } @@ -2118,7 +2118,7 @@ SQLLEN ReplaceCachedRows(TupleField *otuple, const TupleField *ituple, int num_f { SQLLEN i; -MYLOG(1, "entering %p num_fields=%d num_rows=" FORMAT_LEN "\n", otuple, num_fields, num_rows); +MYLOG(DETAIL_LOG_LEVEL, "entering %p num_fields=%d num_rows=" FORMAT_LEN "\n", otuple, num_fields, num_rows); for (i = 0; i < num_fields * num_rows; i++, ituple++, otuple++) { if (otuple->value) @@ -2129,7 +2129,7 @@ MYLOG(1, "entering %p num_fields=%d num_rows=" FORMAT_LEN "\n", otuple, num_fiel if (ituple->value) { otuple->value = strdup(ituple->value); -MYLOG(1, "[" FORMAT_LEN "," FORMAT_LEN "] %s copied\n", i / num_fields, i % num_fields, (const char *) otuple->value); +MYLOG(DETAIL_LOG_LEVEL, "[" FORMAT_LEN "," FORMAT_LEN "] %s copied\n", i / num_fields, i % num_fields, (const char *) otuple->value); } if (otuple->value) otuple->len = ituple->len; @@ -2144,7 +2144,7 @@ int MoveCachedRows(TupleField *otuple, TupleField *ituple, Int2 num_fields, SQLL { int i; -MYLOG(1, "entering %p num_fields=%d num_rows=" FORMAT_LEN "\n", otuple, num_fields, num_rows); +MYLOG(DETAIL_LOG_LEVEL, "entering %p num_fields=%d num_rows=" FORMAT_LEN "\n", otuple, num_fields, num_rows); for (i = 0; i < num_fields * num_rows; i++, ituple++, otuple++) { if (otuple->value) @@ -2156,7 +2156,7 @@ MYLOG(1, "entering %p num_fields=%d num_rows=" FORMAT_LEN "\n", otuple, num_fiel { otuple->value = ituple->value; ituple->value = NULL; -MYLOG(1, "[%d,%d] %s copied\n", i / num_fields, i % num_fields, (const char *) otuple->value); +MYLOG(DETAIL_LOG_LEVEL, "[%d,%d] %s copied\n", i / num_fields, i % num_fields, (const char *) otuple->value); } otuple->len = ituple->len; ituple->len = -1; @@ -2262,7 +2262,7 @@ static void AddAdded(StatementClass *stmt, QResultClass *res, SQLLEN index, cons if (!res) return; num_fields = res->num_fields; -MYLOG(1, "entering index=" FORMAT_LEN ", tuple=%p, num_fields=%d\n", index, tuple_added, num_fields); +MYLOG(DETAIL_LOG_LEVEL, "entering index=" FORMAT_LEN ", tuple=%p, num_fields=%d\n", index, tuple_added, num_fields); ad_count = res->ad_count; res->ad_count++; if (QR_get_cursor(res)) @@ -2360,7 +2360,7 @@ CommitAdded(QResultClass *res) } if (status != added_keyset[i].status) { -MYLOG(1, "!!Commit Added=" FORMAT_ULEN "(%d)\n", QR_get_num_total_read(res) + i, i); +MYLOG(DETAIL_LOG_LEVEL, "!!Commit Added=" FORMAT_ULEN "(%d)\n", QR_get_num_total_read(res) + i, i); added_keyset[i].status = status; } } @@ -2376,7 +2376,7 @@ AddDeleted(QResultClass *res, SQLULEN index, const KeySet *keyset) UWORD status; Int2 num_fields = res->num_fields; -MYLOG(1, "entering " FORMAT_ULEN "\n", index); +MYLOG(DETAIL_LOG_LEVEL, "entering " FORMAT_ULEN "\n", index); dl_count = res->dl_count; res->dl_count++; if (!QR_get_cursor(res)) @@ -2506,7 +2506,7 @@ CommitDeleted(QResultClass *res) } if (status != deleted_keyset->status) { -MYLOG(1, "Deleted=" FORMAT_LEN "(%d)\n", *deleted, i); +MYLOG(DETAIL_LOG_LEVEL, "Deleted=" FORMAT_LEN "(%d)\n", *deleted, i); deleted_keyset->status = status; } } @@ -2552,7 +2552,7 @@ AddUpdated(StatementClass *stmt, SQLLEN index, const KeySet *keyset, const Tuple int i; UWORD status; -MYLOG(1, "entering index=" FORMAT_LEN "\n", index); +MYLOG(DETAIL_LOG_LEVEL, "entering index=" FORMAT_LEN "\n", index); if (!stmt) return; if (res = SC_get_Curres(stmt), !res) return; if (!keyset) return; @@ -2739,7 +2739,7 @@ CommitUpdated(QResultClass *res) } if (status != updated_keyset[i].status) { -MYLOG(1, "!!Commit Updated=" FORMAT_LEN "(%d)\n", res->updated[i], i); +MYLOG(DETAIL_LOG_LEVEL, "!!Commit Updated=" FORMAT_LEN "(%d)\n", res->updated[i], i); updated_keyset[i].status = status; } } @@ -2756,7 +2756,7 @@ DiscardRollback(StatementClass *stmt, QResultClass *res) KeySet *keyset; BOOL kres_is_valid; -MYLOG(1, "entering\n"); +MYLOG(DETAIL_LOG_LEVEL, "entering\n"); if (QR_get_cursor(res)) { CommitAdded(res); @@ -2819,7 +2819,7 @@ UndoRollback(StatementClass *stmt, QResultClass *res, BOOL partial) int doubtp; int j; - MYLOG(1, " "); + MYLOG(DETAIL_LOG_LEVEL, " "); for (i = 0, doubtp = 0; i < res->rb_count; i++) { keys.status = 0; @@ -2827,7 +2827,7 @@ UndoRollback(StatementClass *stmt, QResultClass *res, BOOL partial) keys.offset = rollback[i].offset; keys.oid = rollback[i].oid; texist = tupleExists(stmt, &keys); -MYPRINTF(1, "texist[%d]=%d", i, texist); +MYPRINTF(DETAIL_LOG_LEVEL, "texist[%d]=%d", i, texist); if (SQL_ADD == rollback[i].option) { if (texist) @@ -2845,10 +2845,10 @@ MYPRINTF(1, "texist[%d]=%d", i, texist); if (doubtp == i) doubtp = i + 1; } -MYPRINTF(1, " (doubtp=%d)", doubtp); +MYPRINTF(DETAIL_LOG_LEVEL, " (doubtp=%d)", doubtp); } rollbp = i; -MYPRINTF(1, " doubtp=%d,rollbp=%d\n", doubtp, rollbp); +MYPRINTF(DETAIL_LOG_LEVEL, " doubtp=%d,rollbp=%d\n", doubtp, rollbp); do { rollbps = rollbp; @@ -2857,7 +2857,7 @@ MYPRINTF(1, " doubtp=%d,rollbp=%d\n", doubtp, rollbp); index = rollback[i].index; if (SQL_ADD == rollback[i].option) { -MYLOG(1, "index[%d]=" FORMAT_LEN "\n", i, index); +MYLOG(DETAIL_LOG_LEVEL, "index[%d]=" FORMAT_LEN "\n", i, index); if (index < 0) { midx = index; @@ -2868,7 +2868,7 @@ MYLOG(1, "index[%d]=" FORMAT_LEN "\n", i, index); pidx = index; midx = res->num_total_read - index - 1; } -MYLOG(1, "pidx=" FORMAT_LEN ",midx=" FORMAT_LEN "\n", pidx, midx); +MYLOG(DETAIL_LOG_LEVEL, "pidx=" FORMAT_LEN ",midx=" FORMAT_LEN "\n", pidx, midx); for (j = rollbp - 1; j > i; j--) { if (rollback[j].index == midx || @@ -2876,12 +2876,12 @@ MYLOG(1, "pidx=" FORMAT_LEN ",midx=" FORMAT_LEN "\n", pidx, midx); { if (SQL_DELETE == rollback[j].option) { -MYLOG(1, "delete[%d].index=" FORMAT_LEN "\n", j, rollback[j].index); +MYLOG(DETAIL_LOG_LEVEL, "delete[%d].index=" FORMAT_LEN "\n", j, rollback[j].index); break; } /*else if (SQL_UPDATE == rollback[j].option) { -MYLOG(1, "update[%d].index=%d\n", j, rollback[j].index); +MYLOG(DETAIL_LOG_LEVEL, "update[%d].index=%d\n", j, rollback[j].index); if (IndexExists(stmt, res, rollback + j)) break; }*/ @@ -2896,11 +2896,11 @@ MYLOG(1, "update[%d].index=%d\n", j, rollback[j].index); } } while (rollbp < rollbps); } -MYLOG(1, "rollbp=%d\n", rollbp); +MYLOG(DETAIL_LOG_LEVEL, "rollbp=%d\n", rollbp); for (i = res->rb_count - 1; i >= rollbp; i--) { -MYLOG(1, "do %d(%d)\n", i, rollback[i].option); +MYLOG(DETAIL_LOG_LEVEL, "do %d(%d)\n", i, rollback[i].option); index = rollback[i].index; if (curs) { @@ -2926,7 +2926,7 @@ MYLOG(1, "do %d(%d)\n", i, rollback[i].option); status = wkey->status; } } -MYLOG(1, " index=" FORMAT_LEN " status=%hx", index, status); +MYLOG(DETAIL_LOG_LEVEL, " index=" FORMAT_LEN " status=%hx", index, status); if (kres_is_valid) { QResultClass *qres; @@ -2949,11 +2949,11 @@ MYLOG(1, " index=" FORMAT_LEN " status=%hx", index, status); continue; else { -MYPRINTF(1, " (%u, %u)", wkey->blocknum, wkey->offset); +MYPRINTF(DETAIL_LOG_LEVEL, " (%u, %u)", wkey->blocknum, wkey->offset); wkey->blocknum = rollback[i].blocknum; wkey->offset = rollback[i].offset; wkey->oid = rollback[i].oid; -MYPRINTF(1, "->(%u, %u)", wkey->blocknum, wkey->offset); +MYPRINTF(DETAIL_LOG_LEVEL, "->(%u, %u)", wkey->blocknum, wkey->offset); wkey->status &= ~KEYSET_INFO_PUBLIC; if (SQL_DELETE == rollback[i].option) wkey->status &= ~CURS_SELF_DELETING; @@ -2979,7 +2979,7 @@ MYPRINTF(1, "->(%u, %u)", wkey->blocknum, wkey->offset); } } } - MYPRINTF(1, "\n"); + MYPRINTF(DETAIL_LOG_LEVEL, "\n"); res->rb_count = rollbp; if (0 == rollbp) { @@ -3025,7 +3025,7 @@ positioned_load(StatementClass *stmt, UInt4 flag, const UInt4 *oidint, const cha const ssize_t from_pos = stmt->load_from_pos; const char *load_stmt = stmt->load_statement; -MYLOG(1, "entering bestitem=%s bestqual=%s\n", SAFE_NAME(ti->bestitem), SAFE_NAME(ti->bestqual)); +MYLOG(DETAIL_LOG_LEVEL, "entering bestitem=%s bestqual=%s\n", SAFE_NAME(ti->bestitem), SAFE_NAME(ti->bestqual)); initPQExpBuffer(&selstr); #define return DONT_CALL_RETURN_FROM_HERE??? if (TI_has_subclass(ti)) @@ -3747,7 +3747,7 @@ SC_pos_newload(StatementClass *stmt, const UInt4 *oidint, BOOL tidRef, appendData = TRUE; else { -MYLOG(1, "total " FORMAT_LEN " <> backend " FORMAT_LEN " - base " FORMAT_LEN " + start " FORMAT_LEN " cursor_type=%d\n", +MYLOG(DETAIL_LOG_LEVEL, "total " FORMAT_LEN " <> backend " FORMAT_LEN " - base " FORMAT_LEN " + start " FORMAT_LEN " cursor_type=%d\n", num_total_rows, num_cached_rows, QR_get_rowstart_in_cache(res), SC_get_rowset_start(stmt), stmt->options.cursor_type); } @@ -3774,7 +3774,7 @@ QR_get_rowstart_in_cache(res), SC_get_rowset_start(stmt), stmt->options.cursor_t } if (appendData) { -MYLOG(1, "total " FORMAT_LEN " == backend " FORMAT_LEN " - base " FORMAT_LEN " + start " FORMAT_LEN " cursor_type=%d\n", +MYLOG(DETAIL_LOG_LEVEL, "total " FORMAT_LEN " == backend " FORMAT_LEN " - base " FORMAT_LEN " + start " FORMAT_LEN " cursor_type=%d\n", num_total_rows, num_cached_rows, QR_get_rowstart_in_cache(res), SC_get_rowset_start(stmt), stmt->options.cursor_type); if (num_cached_rows >= res->count_backend_allocated) @@ -3882,7 +3882,7 @@ pos_update_callback(RETCODE retcode, void *para) { MYLOG(0, "entering\n"); ret = irow_update(ret, s->stmt, s->qstmt, s->global_ridx, &s->old_keyset); -MYLOG(1, "irow_update ret=%d,%d\n", ret, SC_get_errornumber(s->qstmt)); +MYLOG(DETAIL_LOG_LEVEL, "irow_update ret=%d,%d\n", ret, SC_get_errornumber(s->qstmt)); if (ret != SQL_SUCCESS) SC_error_copy(s->stmt, s->qstmt, TRUE); PGAPI_FreeStmt(s->qstmt, SQL_DROP); @@ -4282,7 +4282,7 @@ SC_pos_delete(StatementClass *stmt, } else res->keyset[kres_ridx].status |= (SQL_ROW_DELETED | CURS_SELF_DELETED); -MYLOG(1, ".status[" FORMAT_ULEN "]=%x\n", global_ridx, res->keyset[kres_ridx].status); +MYLOG(DETAIL_LOG_LEVEL, ".status[" FORMAT_ULEN "]=%x\n", global_ridx, res->keyset[kres_ridx].status); } if (irdflds->rowStatusArray) { @@ -4794,8 +4794,8 @@ RETCODE spos_callback(RETCODE retcode, void *para) res->recent_processed_row_count = s->stmt->diag_row_count = s->processed; if (opts) /* logging */ { - MYLOG(1, "processed=" FORMAT_POSIROW " ret=%d rowset=" FORMAT_LEN, s->processed, ret, opts->size_of_rowset_odbc2); - MYPRINTF(1, "," FORMAT_LEN "\n", opts->size_of_rowset); + MYLOG(DETAIL_LOG_LEVEL, "processed=" FORMAT_POSIROW " ret=%d rowset=" FORMAT_LEN, s->processed, ret, opts->size_of_rowset_odbc2); + MYPRINTF(DETAIL_LOG_LEVEL, "," FORMAT_LEN "\n", opts->size_of_rowset); } return ret; diff --git a/statement.c b/statement.c index 5372e04..2b96655 100644 --- a/statement.c +++ b/statement.c @@ -593,11 +593,11 @@ SC_set_rowset_start(StatementClass *stmt, SQLLEN start, BOOL valid_base) QResultClass *res = SC_get_Curres(stmt); SQLLEN incr = start - stmt->rowset_start; -MYLOG(1, "%p->SC_set_rowstart " FORMAT_LEN "->" FORMAT_LEN "(%s) ", stmt, stmt->rowset_start, start, valid_base ? "valid" : "unknown"); +MYLOG(DETAIL_LOG_LEVEL, "%p->SC_set_rowstart " FORMAT_LEN "->" FORMAT_LEN "(%s) ", stmt, stmt->rowset_start, start, valid_base ? "valid" : "unknown"); if (res != NULL) { BOOL valid = QR_has_valid_base(res); -MYPRINTF(1, ":(%p)QR is %s", res, QR_has_valid_base(res) ? "valid" : "unknown"); +MYPRINTF(DETAIL_LOG_LEVEL, ":(%p)QR is %s", res, QR_has_valid_base(res) ? "valid" : "unknown"); if (valid) { @@ -616,10 +616,10 @@ MYPRINTF(1, ":(%p)QR is %s", res, QR_has_valid_base(res) ? "valid" : "unknown"); } if (!QR_get_cursor(res)) res->key_base = start; -MYPRINTF(1, ":(%p)QR result=" FORMAT_LEN "(%s)", res, QR_get_rowstart_in_cache(res), QR_has_valid_base(res) ? "valid" : "unknown"); +MYPRINTF(DETAIL_LOG_LEVEL, ":(%p)QR result=" FORMAT_LEN "(%s)", res, QR_get_rowstart_in_cache(res), QR_has_valid_base(res) ? "valid" : "unknown"); } stmt->rowset_start = start; -MYPRINTF(1, ":stmt result=" FORMAT_LEN "\n", stmt->rowset_start); +MYPRINTF(DETAIL_LOG_LEVEL, ":stmt result=" FORMAT_LEN "\n", stmt->rowset_start); } void SC_inc_rowset_start(StatementClass *stmt, SQLLEN inc) @@ -844,7 +844,7 @@ SC_recycle_statement(StatementClass *self) /* Free the parsed table/field information */ SC_initialize_cols_info(self, TRUE, TRUE); -MYLOG(1, "SC_clear_parse_status\n"); +MYLOG(DETAIL_LOG_LEVEL, "SC_clear_parse_status\n"); SC_clear_parse_status(self, conn); break; } @@ -866,7 +866,7 @@ MYLOG(1, "SC_clear_parse_status\n"); SC_set_rowset_start(self, -1, FALSE); SC_set_current_col(self, -1); self->bind_row = 0; -MYLOG(1, "statement=%p ommitted=0\n", self); +MYLOG(DETAIL_LOG_LEVEL, "statement=%p ommitted=0\n", self); self->last_fetch_count = self->last_fetch_count_include_ommitted = 0; self->__error_message = NULL; @@ -1371,10 +1371,10 @@ StatementClass *SC_get_ancestor(StatementClass *stmt) { StatementClass *child = stmt, *parent; -MYLOG(1, "entering stmt=%p\n", stmt); +MYLOG(DETAIL_LOG_LEVEL, "entering stmt=%p\n", stmt); for (child = stmt, parent = child->execute_parent; parent; child = parent, parent = child->execute_parent) { - MYLOG(1, "parent=%p\n", parent); + MYLOG(DETAIL_LOG_LEVEL, "parent=%p\n", parent); } return child; } @@ -1414,7 +1414,7 @@ SC_replace_error_with_res(StatementClass *self, int number, const char *message, QResultClass *self_res; BOOL repstate; -MYLOG(1, "entering %p->%p check=%i\n", from_res ,self, check); +MYLOG(DETAIL_LOG_LEVEL, "entering %p->%p check=%i\n", from_res ,self, check); if (check) { if (0 == number) return; @@ -1459,7 +1459,7 @@ SC_error_copy(StatementClass *self, const StatementClass *from, BOOL check) QResultClass *self_res, *from_res; BOOL repstate; -MYLOG(1, "entering %p->%p check=%i\n", from ,self, check); +MYLOG(DETAIL_LOG_LEVEL, "entering %p->%p check=%i\n", from ,self, check); if (!from) return; /* for safety */ if (self == from) return; /* for safety */ if (check) @@ -1508,7 +1508,7 @@ SC_full_error_copy(StatementClass *self, const StatementClass *from, BOOL allres { PG_ErrorInfo *pgerror; -MYLOG(1, "entering %p->%p\n", from ,self); +MYLOG(DETAIL_LOG_LEVEL, "entering %p->%p\n", from ,self); if (!from) return; /* for safety */ if (self == from) return; /* for safety */ if (self->__error_message) @@ -1620,7 +1620,7 @@ SC_fetch(StatementClass *self) /* TupleField *tupleField; */ -MYLOG(1, "entering statement=%p res=%p ommitted=0\n", self, res); +MYLOG(DETAIL_LOG_LEVEL, "entering statement=%p res=%p ommitted=0\n", self, res); self->last_fetch_count = self->last_fetch_count_include_ommitted = 0; if (!res) return SQL_ERROR; @@ -1674,7 +1674,7 @@ MYLOG(1, "entering statement=%p res=%p ommitted=0\n", self, res); if (kres_ridx >= 0 && kres_ridx < res->num_cached_keys) { UWORD pstatus = res->keyset[kres_ridx].status; -MYLOG(1, "SC_ pstatus[" FORMAT_LEN "]=%hx fetch_count=" FORMAT_LEN "\n", kres_ridx, pstatus, self->last_fetch_count); +MYLOG(DETAIL_LOG_LEVEL, "SC_ pstatus[" FORMAT_LEN "]=%hx fetch_count=" FORMAT_LEN "\n", kres_ridx, pstatus, self->last_fetch_count); if (0 != (pstatus & (CURS_SELF_DELETING | CURS_SELF_DELETED))) return SQL_SUCCESS_WITH_INFO; if (SQL_ROW_DELETED != (pstatus & KEYSET_INFO_PUBLIC) && @@ -1699,7 +1699,7 @@ MYLOG(1, "SC_ pstatus[" FORMAT_LEN "]=%hx fetch_count=" FORMAT_LEN "\n", kres_ri result = SQL_SUCCESS; self->last_fetch_count++; -MYLOG(1, "stmt=%p ommitted++\n", self); +MYLOG(DETAIL_LOG_LEVEL, "stmt=%p ommitted++\n", self); self->last_fetch_count_include_ommitted++; opts = SC_get_ARDF(self); @@ -1747,8 +1747,8 @@ MYLOG(1, "stmt=%p ommitted++\n", self); else { SQLLEN curt = GIdx2CacheIdx(self->currTuple, self, res); -MYLOG(1, "%p->base=" FORMAT_LEN " curr=" FORMAT_LEN " st=" FORMAT_LEN " valid=%d\n", res, QR_get_rowstart_in_cache(res), self->currTuple, SC_get_rowset_start(self), QR_has_valid_base(res)); -MYLOG(1, "curt=" FORMAT_LEN "\n", curt); +MYLOG(DETAIL_LOG_LEVEL, "%p->base=" FORMAT_LEN " curr=" FORMAT_LEN " st=" FORMAT_LEN " valid=%d\n", res, QR_get_rowstart_in_cache(res), self->currTuple, SC_get_rowset_start(self), QR_has_valid_base(res)); +MYLOG(DETAIL_LOG_LEVEL, "curt=" FORMAT_LEN "\n", curt); value = QR_get_value_backend_row(res, curt, lf); } @@ -1775,9 +1775,9 @@ MYLOG(1, "curt=" FORMAT_LEN "\n", curt); case COPY_RESULT_TRUNCATED: SC_set_error(self, STMT_TRUNCATED, "Fetched item was truncated.", func); - MYLOG(1, "The %dth item was truncated\n", lf + 1); - MYLOG(1, "The buffer size = " FORMAT_LEN, opts->bindings[lf].buflen); - MYLOG(1, " and the value is '%s'\n", value); + MYLOG(DETAIL_LOG_LEVEL, "The %dth item was truncated\n", lf + 1); + MYLOG(DETAIL_LOG_LEVEL, "The buffer size = " FORMAT_LEN, opts->bindings[lf].buflen); + MYLOG(DETAIL_LOG_LEVEL, " and the value is '%s'\n", value); result = SQL_SUCCESS_WITH_INFO; break; @@ -2100,7 +2100,7 @@ SC_execute(StatementClass *self) } } -MYLOG(1, "!!%p->miscinfo=%x res=%p\n", self, self->miscinfo, res); +MYLOG(DETAIL_LOG_LEVEL, "!!%p->miscinfo=%x res=%p\n", self, self->miscinfo, res); /* * special handling of result for keyset driven cursors. * Use the columns info of the 1st query and @@ -2178,7 +2178,7 @@ MYLOG(1, "!!%p->miscinfo=%x res=%p\n", self, self->miscinfo, res); */ #ifdef REFCUR_SUPPORT -MYLOG(1, "!!! numfield=%d field_type=%u\n", QR_NumResultCols(res), QR_get_field_type(res, 0)); +MYLOG(DETAIL_LOG_LEVEL, "!!! numfield=%d field_type=%u\n", QR_NumResultCols(res), QR_get_field_type(res, 0)); if (!has_out_para && 0 < QR_NumResultCols(res) && PG_TYPE_REFCURSOR == QR_get_field_type(res, 0)) @@ -2207,7 +2207,7 @@ MYLOG(1, "!!! numfield=%d field_type=%u\n", QR_NumResultCols(res), QR_get_field_ self->bind_row = 0; ret = SC_fetch(hstmt); -MYLOG(1, "!!SC_fetch return =%d\n", ret); +MYLOG(DETAIL_LOG_LEVEL, "!!SC_fetch return =%d\n", ret); if (SQL_SUCCEEDED(ret)) { APDFields *apdopts = SC_get_APDF(self); @@ -2281,7 +2281,7 @@ int enqueueNeedDataCallback(StatementClass *stmt, NeedDataCallfunc func, void *d stmt->callbacks[stmt->num_callbacks].data = data; stmt->num_callbacks++; -MYLOG(1, "stmt=%p, func=%p, count=%d\n", stmt, func, stmt->num_callbacks); +MYLOG(DETAIL_LOG_LEVEL, "stmt=%p, func=%p, count=%d\n", stmt, func, stmt->num_callbacks); return stmt->num_callbacks; } @@ -2425,7 +2425,6 @@ RequestStart(StatementClass *stmt, ConnectionClass *conn, const char *func) static void log_params(int nParams, const Oid *paramTypes, const UCHAR * const *paramValues, const int *paramLengths, const int *paramFormats, int resultFormat) { - const int level = 1; int i, j; BOOL isBinary; @@ -2433,16 +2432,16 @@ static void log_params(int nParams, const Oid *paramTypes, const UCHAR * const * { isBinary = paramFormats ? paramFormats[i] : FALSE; if (!paramValues[i]) - QLOG(level, "\t%c (null) OID=%u\n", isBinary ? 'b' : 't', paramTypes ? paramTypes[i] : 0); + QLOG(TUPLE_LOG_LEVEL, "\t%c (null) OID=%u\n", isBinary ? 'b' : 't', paramTypes ? paramTypes[i] : 0); else if (isBinary) { - QLOG(level, "\tb '"); + QLOG(TUPLE_LOG_LEVEL, "\tb '"); for (j = 0; j < paramLengths[i]; j++) - QPRINTF(level, "%02x", paramValues[i][j]); - QPRINTF(level, " OID=%u\n", paramTypes ? paramTypes[i] : 0); + QPRINTF(TUPLE_LOG_LEVEL, "%02x", paramValues[i][j]); + QPRINTF(TUPLE_LOG_LEVEL, " OID=%u\n", paramTypes ? paramTypes[i] : 0); } else - QLOG(level, "\tt '%s' OID=%u\n", paramValues[i], paramTypes ? paramTypes[i] : 0); + QLOG(TUPLE_LOG_LEVEL, "\tt '%s' OID=%u\n", paramValues[i], paramTypes ? paramTypes[i] : 0); } } @@ -2568,7 +2567,7 @@ libpq_bind_and_exec(StatementClass *stmt) } /* 3. Receive results */ -MYLOG(1, "get_Result=%p %p %d\n", res, SC_get_Result(stmt), stmt->curr_param_result); +MYLOG(DETAIL_LOG_LEVEL, "get_Result=%p %p %d\n", res, SC_get_Result(stmt), stmt->curr_param_result); pgresstatus = PQresultStatus(pgres); switch (pgresstatus) { @@ -2851,7 +2850,7 @@ ParseAndDescribeWithLibpq(StatementClass *stmt, const char *plan_name, /* Extract parameter information from the result set */ num_p = PQnparams(pgres); -MYLOG(1, "num_params=%d info=%d\n", stmt->num_params, num_p); +MYLOG(DETAIL_LOG_LEVEL, "num_params=%d info=%d\n", stmt->num_params, num_p); if (get_qlog() > 0 || get_mylog() > 0) { int i; @@ -2918,7 +2917,7 @@ MYLOG(1, "num_params=%d info=%d\n", stmt->num_params, num_p); if (SQL_PARAM_OUTPUT == paramType || SQL_PARAM_INPUT_OUTPUT == paramType) { - MYLOG(1, "!![%d].PGType %u->%u\n", i, PIC_get_pgtype(ipdopts->parameters[i]), CI_get_oid(QR_get_fields(res), cidx)); + MYLOG(DETAIL_LOG_LEVEL, "!![%d].PGType %u->%u\n", i, PIC_get_pgtype(ipdopts->parameters[i]), CI_get_oid(QR_get_fields(res), cidx)); PIC_set_pgtype(ipdopts->parameters[i], CI_get_oid(QR_get_fields(res), cidx)); cidx++; } diff --git a/win_unicode.c b/win_unicode.c index 06961d9..42e7fe1 100644 --- a/win_unicode.c +++ b/win_unicode.c @@ -263,10 +263,10 @@ utf8_to_ucs2_lf(const char *utf8str, SQLLEN ilen, BOOL lfconv, SQLULEN rtn, ocount, wcode; const UCHAR *str; -MYLOG(1, "ilen=" FORMAT_LEN " bufcount=" FORMAT_ULEN, ilen, bufcount); +MYLOG(DETAIL_LOG_LEVEL, "ilen=" FORMAT_LEN " bufcount=" FORMAT_ULEN, ilen, bufcount); if (!utf8str) return 0; -MYPRINTF(1, " string=%s", utf8str); +MYPRINTF(DETAIL_LOG_LEVEL, " string=%s", utf8str); if (!bufcount) ucs2str = NULL; @@ -390,7 +390,7 @@ cleanup: } if (ocount < bufcount && ucs2str) ucs2str[ocount] = 0; -MYPRINTF(1, " ocount=" FORMAT_ULEN "\n", ocount); +MYPRINTF(DETAIL_LOG_LEVEL, " ocount=" FORMAT_ULEN "\n", ocount); return rtn; } -- 2.39.5