Thread

  1. proposal: tsearch dictionary initialization hook

    Pavel Stehule <pavel.stehule@gmail.com> — 2010-09-05T06:36:33Z

    Hello,
    
    I propose a new hook type - that helps with controlling a life cycle
    of some tsearch dictionaries. This hook has minimal impact on
    performance - it's called once per session for one tsearch
    configuration.
    
    Regards
    
    Pavel Stehule
    
  2. Re: proposal: tsearch dictionary initialization hook

    Teodor Sigaev <teodor@sigaev.ru> — 2010-09-07T15:01:42Z

    Hm, what is aim of this hook? It looks like a wrapper of dictionary init method.
    
    > I propose a new hook type - that helps with controlling a life cycle
    > of some tsearch dictionaries. This hook has minimal impact on
    > performance - it's called once per session for one tsearch
    > configuration.
    
    -- 
    Teodor Sigaev                                   E-mail: teodor@sigaev.ru
                                                        WWW: http://www.sigaev.ru/
    
    
  3. Re: proposal: tsearch dictionary initialization hook

    Pavel Stehule <pavel.stehule@gmail.com> — 2010-09-07T16:55:35Z

    Hello
    
    2010/9/7 Teodor Sigaev <teodor@sigaev.ru>:
    > Hm, what is aim of this hook? It looks like a wrapper of dictionary init
    > method.
    
    If I use a mmap for shared dictionary, then I have to prealloc and
    maybe preread dictionary - it can be done in external module. But I
    have to join preloaded dictionary to requested dictionary. This hook
    allows this relation - and it's general - I don't need any special
    support in ispell dictionary.
    
    Regards
    
    Pavel
    
    
    >
    >> I propose a new hook type - that helps with controlling a life cycle
    >> of some tsearch dictionaries. This hook has minimal impact on
    >> performance - it's called once per session for one tsearch
    >> configuration.
    >
    > --
    > Teodor Sigaev                                   E-mail: teodor@sigaev.ru
    >                                                   WWW: http://www.sigaev.ru/
    >
    
    
  4. Re: proposal: tsearch dictionary initialization hook

    Robert Haas <robertmhaas@gmail.com> — 2010-09-28T03:17:52Z

    On Tue, Sep 7, 2010 at 12:55 PM, Pavel Stehule <pavel.stehule@gmail.com> wrote:
    > 2010/9/7 Teodor Sigaev <teodor@sigaev.ru>:
    >> Hm, what is aim of this hook? It looks like a wrapper of dictionary init
    >> method.
    >
    > If I use a mmap for shared dictionary, then I have to prealloc and
    > maybe preread dictionary - it can be done in external module. But I
    > have to join preloaded dictionary to requested dictionary. This hook
    > allows this relation - and it's general - I don't need any special
    > support in ispell dictionary.
    
    Review:
    
    1. Is this really necessary?  It seems that you're inserting a hook
    here when you could just as well change tmplinit to point to whatever
    function you want to call, which wouldn't require a code change.
    
    2. Our standard criteria for the inclusion of a hook is some sample
    code that demonstrates how it can be usefully used.  I think you need
    to provide that before we can consider this further.
    
    -- 
    Robert Haas
    EnterpriseDB: http://www.enterprisedb.com
    The Enterprise Postgres Company
    
    
  5. Re: proposal: tsearch dictionary initialization hook

    Pavel Stehule <pavel.stehule@gmail.com> — 2010-09-30T09:36:56Z

    Hello
    
    2010/9/28 Robert Haas <robertmhaas@gmail.com>:
    > On Tue, Sep 7, 2010 at 12:55 PM, Pavel Stehule <pavel.stehule@gmail.com> wrote:
    >> 2010/9/7 Teodor Sigaev <teodor@sigaev.ru>:
    >>> Hm, what is aim of this hook? It looks like a wrapper of dictionary init
    >>> method.
    >>
    >> If I use a mmap for shared dictionary, then I have to prealloc and
    >> maybe preread dictionary - it can be done in external module. But I
    >> have to join preloaded dictionary to requested dictionary. This hook
    >> allows this relation - and it's general - I don't need any special
    >> support in ispell dictionary.
    >
    > Review:
    >
    > 1. Is this really necessary?  It seems that you're inserting a hook
    > here when you could just as well change tmplinit to point to whatever
    > function you want to call, which wouldn't require a code change.
    
    The a creating of new hacked template is second option - I didn't find
    it. It good for hacking and probably I'll use it because I have not a
    time to work on this problem. On second hand - it is less on more
    little bit dark hack - you have to modify system tables. Using a hook
    is more transparent - you can or not just load a module, that uses a
    hook.
    
    >
    > 2. Our standard criteria for the inclusion of a hook is some sample
    > code that demonstrates how it can be usefully used.  I think you need
    > to provide that before we can consider this further.
    >
    
    yes - I understand, but I have not time to work on this subject now,
    so It can be moved to rejected patches queue. Some my ideas depends on
    proposed (different people) shared memory control, but I don't see any
    move on this, so there isn't reason why implement a hook or some
    modules uses this hook now.
    
    Regards
    
    Pavel Stehule
    
    > --
    > Robert Haas
    > EnterpriseDB: http://www.enterprisedb.com
    > The Enterprise Postgres Company
    >