From: | "Inoue,Hiroshi" <hinoue205(at)gmail(dot)com> |
---|---|
To: | Marko Ristola <marko(dot)ristola(at)bcplatforms(dot)com> |
Cc: | "pgsql-odbc(at)postgresql(dot)org" <pgsql-odbc(at)postgresql(dot)org> |
Subject: | Re: PostgreSQL ODBC mylog() uses lots of CPU in INTEGER field SQL query |
Date: | 2021-05-11 23:57:43 |
Message-ID: | CAFGcedUJbip1AY=kOKTueZuaiwjyiA-NBtk-c+u2HXUg-0vK_A@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-odbc |
Hi Marko,
I would take care of your patch.
Thanks.
Hiroshi Inoue
2021年5月8日(土) 4:31 Marko Ristola <marko(dot)ristola(at)bcplatforms(dot)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(dot)ristola(at)bcplatforms(dot)com
> w. www.bcplatforms.com
>
From | Date | Subject | |
---|---|---|---|
Next Message | Inoue,Hiroshi | 2021-05-12 00:35:50 | Re: ODBC Calling Fill - Unexptected closed connection after 2 hours |
Previous Message | David Parenteau | 2021-05-10 21:14:27 | ODBC Calling Fill - Unexptected closed connection after 2 hours |