Re: wrong indexes sizes on index page

From: Guillaume Lelarge <guillaume(at)lelarge(dot)info>
To: Thom Brown <thom(at)linux(dot)com>
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-14 09:38:16
Message-ID: 4CB6CF88.8080802@lelarge.info
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-hackers

Le 13/10/2010 11:03, Guillaume Lelarge a écrit :
> Le 13/10/2010 10:54, Thom Brown a écrit :
>> 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.
>>
>
> Exactly :)
>

Finally commited. Thanks, Timon and Thom.

--
Guillaume
http://www.postgresql.fr
http://dalibo.com

In response to

Browse pgadmin-hackers by date

  From Date Subject
Next Message pgAdmin Trac 2010-10-14 09:39:31 Re: [pgAdmin III] #254: Wrong indexes sizes on index page
Previous Message Guillaume Lelarge 2010-10-14 09:35:48 pgAdmin III commit: Fix for index size in the index list