Re: OIDS > INT_MAX displayed wrapped around

Поиск
Список
Период
Сортировка
Искать
От
Guillaume Lelarge
Тема
Re: OIDS > INT_MAX displayed wrapped around
Дата
Msg-id
46AEEA67.60906@lelarge.info
Ответ на
Список
Дерево обсуждения
OIDS > INT_MAX displayed wrapped around Kris Jurka <books@ejurka.com>
Re: OIDS > INT_MAX displayed wrapped around Guillaume Lelarge <guillaume@lelarge.info>
Re: OIDS > INT_MAX displayed wrapped around Guillaume Lelarge <guillaume@lelarge.info>
Re: OIDS > INT_MAX displayed wrapped around Dave Page <dpage@postgresql.org>
Re: OIDS > INT_MAX displayed wrapped around Guillaume Lelarge <guillaume@lelarge.info>
Re: OIDS > INT_MAX displayed wrapped around Kris Jurka <books@ejurka.com>
Guillaume Lelarge a écrit :
> Hi Kris,
> 
> Kris Jurka a écrit :
>> The display for tables that have oids higher than INT_MAX is correct in
>> one dialog, but wrapped around in another.  The popup properties is
>> wrong while the properties displayed in the core view is right.  It's
>> difficult to describe exactly in words, so here's a screenshot.
>>
>> http://ejurka.com/pgsql/pgadmin/highoids.png
>>
> 
> Thanks for the report and the screenshot. We use long instead of
> unsigned long in dlgProperties.cpp. So it should be pretty easy to fix
> but I need some time to build a test case.
> 

I don't know how I can build such a test case. My generate_series to
build a billion inserts just failed with a "write failed" message...
Here is the patch. It compiles and works on my laptop but I don't know
if it really fixes the issue. If someone with a big enough database can
apply the patch and compile pgAdmin with it, I would be really happy to
know about the result.

Thanks.


-- 
Guillaume.

Index: pgadmin/dlg/dlgProperty.cpp
===================================================================
--- pgadmin/dlg/dlgProperty.cpp	(révision 6515)
+++ pgadmin/dlg/dlgProperty.cpp	(copie de travail)
@@ -264,7 +264,7 @@
         if (txtName)
             txtName->SetValue(GetObject()->GetName());
         if (txtOid)
-            txtOid->SetValue(NumToStr((long)GetObject()->GetOid()));
+            txtOid->SetValue(NumToStr((unsigned long)GetObject()->GetOid()));
         if (cbOwner)
             cbOwner->SetValue(GetObject()->GetOwner());
         if (txtComment)
В списке pgadmin-hackers по дате отправления
От: Dave Page
Дата:
От: Dave Page
Дата:
FAQ