Re: Ticket 3: groups of servers

From: Dave Page <dpage(at)pgadmin(dot)org>
To: Guillaume Lelarge <guillaume(at)lelarge(dot)info>
Cc: pgadmin-hackers(at)postgresql(dot)org
Subject: Re: Ticket 3: groups of servers
Date: 2010-04-23 13:00:51
Message-ID: o2z937d27e11004230600kddf115dle0e57786b5a3c99a@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-hackers

On Thu, Apr 22, 2010 at 8:26 PM, Guillaume Lelarge
<guillaume(at)lelarge(dot)info> wrote:
> Well, we didn't do it for the actual Servers node. I don't think we
> should do it for this one.

Right - that's why I wasn't sure. And now that groups are root nodes,
it seems even less important.

> Finally, I had time to work on this. I changed my patch so that it
> follows what you expected to see. I was not really able to reproduce the
> problem you explain above after my changes.
>
> Can you try this last one? Thanks.

Still seeing a crash on OSX, but mostly I think it's good now. Here's
what happened:

- I cleared my prefs file so I just had 4 servers detected and added
to the 'Servers' group at startup.

- I moved 3 of the servers to a new 'PostgreSQL' group.

- I moved 1 server to a new 'Advanced Server' group.

At this point I had three groups visible:

Servers (0)
PostgreSQL (3)
- Server 1
- Server 2
- Server 3
Advanced Server (1)
Server 4

Gripe 1: I think the Servers group should be hidden if it's empty. In
previous versions it didn't really matter as the first thing you'd do
is add a server. Now though, it might remain empty forever.

Gripe 2: I think the groups should be shown in alphabetical order.
Should be a one-line change :-)

- I then right-clicked Server 4 and selected Properties

Gripe 3: pgAdmin crashes reliably at this point:

Thread 0 Crashed: Dispatch queue: com.apple.main-thread
0 pgAdmin3-Debug 0x00141fe5
dlgServer::dlgServer(pgaFactory*, frmMain*, pgServer*) + 2725
1 pgAdmin3-Debug 0x00142307
pgServerFactory::CreateDialog(frmMain*, pgObject*, pgObject*) + 55
2 pgAdmin3-Debug 0x0011ae59
dlgProperty::CreateDlg(frmMain*, pgObject*, bool, pgaFactory*) + 201
3 pgAdmin3-Debug 0x00122b66
dlgProperty::EditObjectDialog(frmMain*, ctlSQLBox*, pgObject*) + 166
4 pgAdmin3-Debug 0x00123063
propertyFactory::StartDialog(frmMain*, pgObject*) + 35
5 pgAdmin3-Debug 0x00193e86
frmMain::OnAction(wxCommandEvent&) + 70
6 libwx_base_carbonu-2.8.0.dylib 0x01404463
wxEvtHandler::ProcessEventIfMatches(wxEventTableEntryBase const&,
wxEvtHandler*, wxEvent&) + 131
7 libwx_base_carbonu-2.8.0.dylib 0x01404526
wxEvtHandler::SearchDynamicEventTable(wxEvent&) + 86
8 libwx_base_carbonu-2.8.0.dylib 0x01404df3
wxEvtHandler::ProcessEvent(wxEvent&) + 179
9 libwx_base_carbonu-2.8.0.dylib 0x01404da9
wxEvtHandler::ProcessEvent(wxEvent&) + 105
10 libwx_macu_core-2.8.0.dylib 0x01004f28
wxWindowBase::TryParent(wxEvent&) + 88
11 libwx_base_carbonu-2.8.0.dylib 0x01404db9
wxEvtHandler::ProcessEvent(wxEvent&) + 121
12 libwx_base_carbonu-2.8.0.dylib 0x01404da9
wxEvtHandler::ProcessEvent(wxEvent&) + 105
13 libwx_macu_core-2.8.0.dylib 0x0102fb6e
wxScrollHelperEvtHandler::ProcessEvent(wxEvent&) + 46
14 libwx_macu_core-2.8.0.dylib 0x00fdff80
wxMenuBase::SendEvent(int, int) + 144
15 libwx_macu_core-2.8.0.dylib 0x00f2a6ac
wxMenu::MacHandleCommandProcess(wxMenuItem*, int, wxWindow*) + 60
16 libwx_macu_core-2.8.0.dylib 0x00f5b3ab
wxMacWindowEventHandler(OpaqueEventHandlerCallRef*, OpaqueEventRef*,
void*) + 427
17 com.apple.HIToolbox 0x92f8d0a9
DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*,
HandlerCallRec*) + 1567
18 com.apple.HIToolbox 0x92f8c370
SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*,
HandlerCallRec*) + 411
19 com.apple.HIToolbox 0x92faeb55 SendEventToEventTarget + 52
20 com.apple.HIToolbox 0x92fdb147
SendHICommandEvent(unsigned long, HICommand const*, unsigned long,
unsigned long, unsigned char, void const*, OpaqueEventTargetRef*,
OpaqueEventTargetRef*, OpaqueEventRef**) + 448
21 com.apple.HIToolbox 0x92fffe40
SendMenuCommandWithContextAndModifiers + 66
22 com.apple.HIToolbox 0x92fffdf5 SendMenuItemSelectedEvent + 121
23 com.apple.HIToolbox 0x92fffcfa
FinishMenuSelection(SelectionData*, MenuResult*, MenuResult*) + 152
24 com.apple.HIToolbox 0x931813d4
PopUpMenuSelectCore(MenuData*, Point, double, Point, unsigned short,
unsigned int, Rect const*, unsigned short, unsigned long, Rect const*,
Rect const*, __CFString const*, OpaqueMenuRef**, unsigned short*) +
1851
25 com.apple.HIToolbox 0x931818b0 PopUpMenuSelect + 253
26 libwx_macu_core-2.8.0.dylib 0x00f54db8
wxWindow::DoPopupMenu(wxMenu*, int, int) + 120
27 pgAdmin3-Debug 0x001944d3
frmMain::doPopup(wxWindow*, wxPoint, pgObject*) + 739
28 pgAdmin3-Debug 0x0019473b
frmMain::OnSelRightClick(wxTreeEvent&) + 107
29 libwx_base_carbonu-2.8.0.dylib 0x01404463
wxEvtHandler::ProcessEventIfMatches(wxEventTableEntryBase const&,
wxEvtHandler*, wxEvent&) + 131
30 libwx_base_carbonu-2.8.0.dylib 0x01404ae1
wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) + 113
31 libwx_base_carbonu-2.8.0.dylib 0x01404e0f
wxEvtHandler::ProcessEvent(wxEvent&) + 207
32 libwx_base_carbonu-2.8.0.dylib 0x01404da9
wxEvtHandler::ProcessEvent(wxEvent&) + 105
33 libwx_macu_core-2.8.0.dylib 0x01004f28
wxWindowBase::TryParent(wxEvent&) + 88
34 libwx_base_carbonu-2.8.0.dylib 0x01404db9
wxEvtHandler::ProcessEvent(wxEvent&) + 121
35 libwx_base_carbonu-2.8.0.dylib 0x01404da9
wxEvtHandler::ProcessEvent(wxEvent&) + 105
36 libwx_macu_core-2.8.0.dylib 0x0102fb6e
wxScrollHelperEvtHandler::ProcessEvent(wxEvent&) + 46
37 libwx_macu_core-2.8.0.dylib 0x0103d43e
wxGenericTreeCtrl::OnMouse(wxMouseEvent&) + 1902
38 libwx_base_carbonu-2.8.0.dylib 0x01404463
wxEvtHandler::ProcessEventIfMatches(wxEventTableEntryBase const&,
wxEvtHandler*, wxEvent&) + 131
39 libwx_base_carbonu-2.8.0.dylib 0x01404ae1
wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) + 113
40 libwx_base_carbonu-2.8.0.dylib 0x01404e0f
wxEvtHandler::ProcessEvent(wxEvent&) + 207
41 libwx_base_carbonu-2.8.0.dylib 0x01404da9
wxEvtHandler::ProcessEvent(wxEvent&) + 105
42 libwx_macu_core-2.8.0.dylib 0x0102fb6e
wxScrollHelperEvtHandler::ProcessEvent(wxEvent&) + 46
43 libwx_macu_core-2.8.0.dylib 0x00f5296e
wxMacTopLevelMouseEventHandler(OpaqueEventHandlerCallRef*,
OpaqueEventRef*, void*) + 798
44 libwx_macu_core-2.8.0.dylib 0x00f52e56
wxMacTopLevelEventHandler(OpaqueEventHandlerCallRef*, OpaqueEventRef*,
void*) + 198
45 com.apple.HIToolbox 0x92f8d0a9
DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*,
HandlerCallRec*) + 1567
46 com.apple.HIToolbox 0x92f8c370
SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*,
HandlerCallRec*) + 411
47 com.apple.HIToolbox 0x92faeb55 SendEventToEventTarget + 52
48 com.apple.HIToolbox 0x92fc063b
ToolboxEventDispatcherHandler(OpaqueEventHandlerCallRef*,
OpaqueEventRef*, void*) + 1257
49 com.apple.HIToolbox 0x92f8d4fa
DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*,
HandlerCallRec*) + 2672
50 com.apple.HIToolbox 0x92f8c370
SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*,
HandlerCallRec*) + 411
51 com.apple.HIToolbox 0x92faeb55 SendEventToEventTarget + 52
52 libwx_macu_core-2.8.0.dylib 0x00eedfe6
wxApp::MacHandleOneEvent(void*) + 38
53 libwx_macu_core-2.8.0.dylib 0x00eee80b wxApp::MacDoOneEvent() + 123
54 libwx_macu_core-2.8.0.dylib 0x00f07fd3 wxEventLoop::Dispatch() + 35
55 libwx_macu_core-2.8.0.dylib 0x00fae708 wxEventLoopManual::Run() + 136
56 libwx_macu_core-2.8.0.dylib 0x00f87bf3 wxAppBase::MainLoop() + 83
57 libwx_base_carbonu-2.8.0.dylib 0x013ba81a wxEntry(int&, wchar_t**) + 106
58 pgAdmin3-Debug 0x0003fc58 main + 24
59 pgAdmin3-Debug 0x0003f979 start + 53

--
Dave Page
EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise Postgres Company

In response to

Responses

Browse pgadmin-hackers by date

  From Date Subject
Next Message Dave Page 2010-04-23 13:13:18 Re: PATCH: Ticket#96: Deferrable unique & primary constraints
Previous Message Ashesh Vashi 2010-04-23 12:07:25 PATCH: Ticket#96: Deferrable unique & primary constraints