Re: wrong indexes sizes on index page

From: Thom Brown <thom(at)linux(dot)com>
To: Guillaume Lelarge <guillaume(at)lelarge(dot)info>
Cc: Timon <timosha(at)gmail(dot)com>, pgadmin-hackers <pgadmin-hackers(at)postgresql(dot)org>
Subject: Re: wrong indexes sizes on index page
Date: 2010-10-13 08:54:18
Message-ID: AANLkTi=66Q91U-ibO6KWF8bfadaqcheGebVEAnuGLQgv@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-hackers

On 13 October 2010 09:27, Thom Brown <thom(at)linux(dot)com> wrote:
> On 13 October 2010 08:30, Guillaume Lelarge <guillaume(at)lelarge(dot)info> wrote:
>> Le 13/10/2010 00:35, Thom Brown a écrit :
>>> On 12 October 2010 16:19, Guillaume Lelarge <guillaume(at)lelarge(dot)info> wrote:
>>>> Le 12/10/2010 14:37, Thom Brown a écrit :
>>>>> On 12 October 2010 11:01, Timon <timosha(at)gmail(dot)com> wrote:
>>>>>> 2010/10/12 Guillaume Lelarge <guillaume(at)lelarge(dot)info>:
>>>>>>> Le 12/10/2010 11:47, Thom Brown a écrit :
>>>>>>>> On 12 October 2010 10:29, Timon <timosha(at)gmail(dot)com> wrote:
>>>>>>>>> see attachment.
>>>>>>>>> Last column on table shows index size, but 227MB - is table size.
>>>>>>>>>
>>>>>>>>> postgresql 8.4.4
>>>>>>>>>
>>>>>>>>> pgadmin 1.13 last dev build from git
>>>>>>>>>
>>>>>>>>
>>>>>>>> I can confirm this using pgAdmin ... weird special version Dave gave
>>>>>>>> me last week ... against PostgreSQL 8.3.1, and PostgreSQL 9.0.0.
>>>>>>>>
>>>>>>>
>>>>>>> I don't think we changed anything in this area. So you should have the
>>>>>>> same issue with 1.12.
>>>>>> yes, I have this issue with 1.12.
>>>>>
>>>>> Looks like it's getting the OID of the table the index is associated
>>>>> with rather than just using the indexrelid column from
>>>>> pg_stat_all_indexes.
>>>>>
>>>>
>>>> You're right. Not sure what I was thinking when I applied this on 1.12.
>>>> Quick patch (not yet checked):
>>>>
>>>> diff --git a/pgadmin/schema/pgIndex.cpp b/pgadmin/schema/pgIndex.cpp
>>>> index e55daf3..4c2fa23 100644
>>>> --- a/pgadmin/schema/pgIndex.cpp
>>>> +++ b/pgadmin/schema/pgIndex.cpp
>>>> @@ -374,7 +374,7 @@ void pgIndexBase::ShowStatistics(frmMain *form,
>>>> ctlListView
>>>>              wxT(", idx_blks_hit AS ") + qtIdent(_("Index Blocks Hit"));
>>>>
>>>>     if (GetConnection()->HasFeature(FEATURE_SIZE))
>>>> -        sql += wxT(", pg_size_pretty(pg_relation_size(") + GetOidStr()
>>>> + wxT(")
>>>> +        sql += wxT(", pg_size_pretty(pg_relation_size(indexrelid)) AS
>>>> ") + qtId
>>>>
>>>>     if (showExtendedStatistics)
>>>>     {
>>>>
>>>> If you want to test, it's all yours. Will check tonight and apply if
>>>> good enough.
>>>
>>> Okay, built with change and works fine :)
>>>
>>
>> You mean with your changes? because this pseudo-patch doesn't work. I
>> worked on it yesterday, and found I didn't modify the good method.
>> Anyway, I have a patch ready to commit.
>
> Yes, with my changes, which on glancing at yours, looked roughly the
> same, but must be a difference somewhere.

I now see why your one is different. My change involved a
similar-looking piece of code, but in
pgIndexBaseCollection::ShowStatistics, not
pgIndexBase::ShowStatistics.

--
Thom Brown
Twitter: @darkixion
IRC (freenode): dark_ixion
Registered Linux user: #516935

In response to

Responses

Browse pgadmin-hackers by date

  From Date Subject
Next Message Guillaume Lelarge 2010-10-13 09:03:08 Re: wrong indexes sizes on index page
Previous Message Devrim GÜNDÜZ 2010-10-13 08:46:51 Re: [pgadmin-support] pgAdmin v1.12.0 Released