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

Поиск
Список
Период
Сортировка
Искать
От
Marko Ristola
Тема
PostgreSQL ODBC mylog() uses lots of CPU in INTEGER field SQL query
Дата
в 18:13:18
Msg-id
CALndGf+qOJc6ZPfEAJgs_+CkE01QtEMQVEumGURHzzA+MYOuwg@mail.gmail.com
Список
Дерево обсуждения
PostgreSQL ODBC mylog() uses lots of CPU in INTEGER field SQL query Marko Ristola <marko.ristola@bcplatforms.com>
Re: PostgreSQL ODBC mylog() uses lots of CPU in INTEGER field SQL query "Inoue,Hiroshi" <hinoue205@gmail.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 по дате отправления
От: Andrey Lukyanov
Дата:
Сообщение: MSI Digital Signature
От: ScheduleReports Monitoring
Дата:
FAQ