Re: PHP Postgres query slower then PgAdmin

From: Tom Kincaid <tomjohnkincaid(at)gmail(dot)com>
To: Emrah Mehmedov <emrah(dot)mehmedov(at)x3mlabs(dot)com>
Cc: Bob Jolliffe <bobjolliffe(at)gmail(dot)com>, pgsql-performance(at)postgresql(dot)org
Subject: Re: PHP Postgres query slower then PgAdmin
Date: 2013-06-23 17:35:15
Message-ID: CAKPRjUM-DbwS+_iTJ+hw+kg54+1wEYbuLg5tftT3r3Cj4GGtHw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

Just rule out something weird;

Can you determine if you are getting the same query plan in both cases? Use
"explain analyze" from the command line and turn on auto.explain via
postgresql.conf to log what the plan is for the php case.

Tom Kincaid
EnterpriseDB
www.enterprisedb.com

On Wed, Jun 5, 2013 at 7:15 AM, Emrah Mehmedov
<emrah(dot)mehmedov(at)x3mlabs(dot)com>wrote:

> I notice something in CMD, first time query is executing same time like
> from php all the time, but on the rest of the time that i will execute the
> query is faster from cmd, php is keeping the same execution time.
> i also change the connection string (i remove host and port) and nothing
> changed.
>
>
> On Wed, Jun 5, 2013 at 1:11 PM, Bob Jolliffe <bobjolliffe(at)gmail(dot)com>wrote:
>
>> Most probably. If your existing connection string specifies something
>> like "host=localhost port=5432 ..." just remove the host and port
>> parameters and php will by default try to connect with unix domain socket.
>>
>>
>> On 5 June 2013 12:02, Emrah Mehmedov <emrah(dot)mehmedov(at)x3mlabs(dot)com> wrote:
>>
>>> Can we modify php connection?
>>>
>>>
>>> On Wed, Jun 5, 2013 at 1:01 PM, Bob Jolliffe <bobjolliffe(at)gmail(dot)com>wrote:
>>>
>>>> Is php connecting through tcp whilst pgadmin is using unix domain
>>>> socket? Probably the query time is the same, but returning the result over
>>>> tcp will be slower.
>>>>
>>>>
>>>> On 5 June 2013 11:18, Emrah Mehmedov <emrah(dot)mehmedov(at)x3mlabs(dot)com>wrote:
>>>>
>>>>> Hello,
>>>>>
>>>>> I'm using php5.4.12 with extension=php_pgsql.dll enabled but the query
>>>>> that i'm trying to execute is faster on PgAdmin app.
>>>>>
>>>>> SELECT title, ts_rank_cd(vector, query) AS rank FROM links,
>>>>> to_tsquery('english', 'risk') query WHERE query @@ vector ORDER BY rank
>>>>> DESC;
>>>>>
>>>>> I'm not sure, what can i do to increase the speed of execution from
>>>>> php:
>>>>>
>>>>> $start_time = microtime(true);
>>>>> $query = "SELECT title, url, ts_rank_cd(vector, query) AS rank FROM
>>>>> links, to_tsquery('english', 'risk') query WHERE query @@ vector ORDER BY
>>>>> rank DESC LIMIT 10;";
>>>>> $result = pg_query($connection, $query);
>>>>> $end_time = microtime(true);
>>>>>
>>>>> persistant connections are enabled in php.ini but i calculate only
>>>>> execution time from start to end.
>>>>>
>>>>> Thanks, Emrah.
>>>>>
>>>>> --
>>>>> Best regards, Emrah Mehmedov
>>>>> Software Developer @ X3M Labs
>>>>> http://www.extreme-labs.com
>>>>>
>>>>
>>>>
>>>
>>>
>>> --
>>> Best regards, Emrah Mehmedov
>>> Software Developer @ X3M Labs
>>> http://www.extreme-labs.com
>>>
>>
>>
>
>
> --
> Best regards, Emrah Mehmedov
> Software Developer @ X3M Labs
> http://www.extreme-labs.com
>

--
Thomas John

In response to

Browse pgsql-performance by date

  From Date Subject
Next Message Marcin Mańk 2013-06-23 19:57:53 Re: PHP Postgres query slower then PgAdmin
Previous Message Tom Lane 2013-06-22 20:24:48 Re: Weird, bad 0.5% selectivity estimate for a column equal to itself