Re: [pgadmin-support] Search feature request

From: "J(dot)F(dot) Oster" <jinfroster(at)mail(dot)ru>
To: Dave Page <dpage(at)pgadmin(dot)org>
Cc: pgadmin-hackers <pgadmin-hackers(at)postgresql(dot)org>, Michael Shapiro <mshapiro51(at)gmail(dot)com>
Subject: Re: [pgadmin-support] Search feature request
Date: 2014-04-04 11:33:21
Message-ID: 1049123976.20140404153321@mail.ru
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-hackers pgadmin-support

Hello Dave,

Monday, March 10, 2014, 1:36:37 PM, you wrote:

DP> On Sun, Mar 9, 2014 at 8:27 AM, J.F. Oster <jinfroster(at)mail(dot)ru> wrote:
>>
>> Thursday, March 6, 2014, 12:38:33 AM, Guillaume Lelarge wrote:
>>
>> GL> On Wed, 2014-03-05 at 07:40 -0600, Michael Shapiro wrote:
>>>> I know that PgAdmin has the ability to find a pattern in various object
>>>> names.
>>>>
>>>> Can PgAdmin search the actual text of procedures to find a pattern as well.
>>>>
>>>> For example, if I have a procedure named get_login, and it has a select
>>>> that looks like
>>>>
>>>> select person_id from logins ....
>>>>
>>>> and I search for "person_id", can PgAdmin find this within the get_login
>>>> procedure?
>>
>> GL> Nope, it doesn't work like that. But a patch might help to get it do
>> GL> that.
>>
>> Suggested feature will be a must-have for pl-developers to find code
>> dependencies not maintained by DBMS.
>>
>> Since searching pg_proc should be optional (right?), it's required to
>> modify Search Objects dialogue. And since I have some more thoughts
>> (plans for the future) on improving this tool, some concerning
>> dialogue design, I'd like to express these now altogether.
>>
>> 1. Make "search for pattern in object's names" one of few options,
>> enabled by default. Others will be "search in definitions" and "search
>> in comments". I see these as a number of checkboxes.
>> Searching in object's definitions may be further advanced by
>> considering constraint's expressions, column's defaults, type's fields
>> and so on.
>>
>> 2. In addition to objects Type filter implement Schema filter to cut
>> off objects in schemas of no interest. This is a combobox with items:
>> (All Schemas), (Current Schema)*, (User Schemas) plus list of all
>> schemas in database.
>>
>> 3. Allow to call Search Objects dialogue when any DB-object in Object
>> Browser is selected, not only DB itself. Object trees are huge
>> sometimes, so having to select DB item (and loose current object) each
>> time I wish to search for something makes the tool unattractive at
>> all. Required to implement (Current Schema) filter.
>>
>> 4. If text pattern contains "%" char then don't add %%'s to it.
>>
>> 5. Use statusbar: "Searching...", "Nothing was found" or "Found N
>> items".
>>
>> Devs, please see the sketch attached. Is this OK?
>> I can work on this when I have time, if no one gets to this earlier.

DP> Looks good to me. Thanks for looking at this.

Here it is. Seems to work for me, but needs testing. I tested on 9.3
only.
I tried to make queries easier to extend with new object types with
UNIONs. May be there is a better way to write them... well, afaic.

Implemented all the points above plus use qtDbString() to process
quote signs etc.
But statusbar won't initialize for some reason. If I force it to
initialize, it doesn't obey further window resizes. Is there a secret
to make it work correctly? :)

--
Best regards,
J.F.

Attachment Content-Type Size
140404_searchobj.patch application/octet-stream 98.1 KB

In response to

Responses

Browse pgadmin-hackers by date

  From Date Subject
Next Message Dave Page 2014-04-04 12:24:01 Re: [pgadmin-support] Search feature request
Previous Message Ashesh Vashi 2014-04-04 06:32:03 Re: PATCH: Save settings regardless of Find&Replace dialog's close method

Browse pgadmin-support by date

  From Date Subject
Next Message Dave Page 2014-04-04 12:24:01 Re: [pgadmin-support] Search feature request
Previous Message Guillaume Lelarge 2014-04-03 20:30:04 Re: v1.18.x release schedule