Re: PostgreSQL ODBC mylog() uses lots of CPU in INTEGER field SQL query

Поиск
Список
Период
Сортировка
От Inoue,Hiroshi
Тема Re: PostgreSQL ODBC mylog() uses lots of CPU in INTEGER field SQL query
Дата
Msg-id CAFGcedUJbip1AY=kOKTueZuaiwjyiA-NBtk-c+u2HXUg-0vK_A@mail.gmail.com
обсуждение исходный текст
Ответ на PostgreSQL ODBC mylog() uses lots of CPU in INTEGER field SQL query  (Marko Ristola <marko.ristola@bcplatforms.com>)
Список pgsql-odbc
Hi Marko,

I would take care of your patch.

Thanks.
Hiroshi Inoue

2021年5月8日(土) 4:31 Marko Ristola <marko.ristola@bcplatforms.com>:

I did a query of 4 million rows into an INTEGER field.

Linux perf shows following profile (hottest functions):

   9.91%  bc_sqlselect  psqlodbcw.so               [.] mylog 
   9.64%  bc_sqlselect  psqlodbcw.so               [.] QR_read_a_tuple_from_db
   4.83%  bc_sqlselect  psqlodbcw.so               [.] copy_and_convert_field
   4.57%  bc_sqlselect  libpthread-2.17.so         [.] pthread_mutex_unlock
   4.51%  bc_sqlselect  libpthread-2.17.so         [.] pthread_mutex_lock
   4.40%  bc_sqlselect  psqlodbcw.so               [.] SOCK_get_next_n_bytes.part.2
   3.93%  bc_sqlselect  psqlodbcw.so               [.] PGAPI_ExtendedFetch

Following patch removes the only mylog() call (not a macro)

from the PostgreSQL ODBC driver from consuming CPU:

(MYLOG() macro is used to avoid the heavy mylog() call.)


diff --git a/results.c b/results.c
index 1f6a12c..ec89600 100644
--- a/results.c
+++ b/results.c
@@ -4632,7 +4632,6 @@ SC_pos_add(StatementClass *stmt,
                        goto cleanup;
                }
                MYLOG(0, "addstr=%s\n", addstr.data);
-               mylog("addstr=%s\n", addstr.data);
                s.qstmt->exec_start_row = s.qstmt->exec_end_row = s.irow;
                s.updyes = TRUE;
                ret = PGAPI_ExecDirect(hstmt, (SQLCHAR *) addstr.data, SQL_NTS, 0);


Best Regards, Marko Ristola

--

Marko Ristola
Software developer
BC Platforms

m. +358 40 593 2182
e. marko.ristola@bcplatforms.com
w. www.bcplatforms.com

В списке pgsql-odbc по дате отправления:

Предыдущее
От: David Parenteau
Дата:
Сообщение: ODBC Calling Fill - Unexptected closed connection after 2 hours
Следующее
От: "Inoue,Hiroshi"
Дата:
Сообщение: Re: ODBC Calling Fill - Unexptected closed connection after 2 hours