Thread

  1. NEED HELP !

    Sergej Galkin <sergej.galkin@gmail.com> — 2010-01-13T18:42:22Z

    Hello all,
    
    I am a student-magister and I'm writting my magister work. I realized gist
    index TPR tree - it is like a simple R tree but moving :)
    Everything is compiling ok, I creating table and index, but after whese code
    - DB is restarting :(((
    *
    *
    *set enable_seqscan = false
    select * from table_of_moving_objects where mov_obj ~ box '(0,0) (1,1)'*
    
    I can not understand why DB is restarting ? It is restarting when SQL begins
    use index :(((
    Can anybody help me , I would by appretiate every people who downloads my
    sources, try to deploy index and maybe solve where is the problem.
    
    Best regards,
    Sergej Galkin
    
  2. Re: NEED HELP !

    Sergej Galkin <sergej.galkin@gmail.com> — 2010-01-13T18:56:25Z

    I want to add than I have a piece of my code that looks very strange
    
    Datum gist_mov_penalty(PG_FUNCTION_ARGS)
    {
        GISTENTRY *origentry = (GISTENTRY *) PG_GETARG_POINTER(0);
        GISTENTRY *newentry  = (GISTENTRY *) PG_GETARG_POINTER(1);
        float * result = (float *) PG_GETARG_POINTER(2);
    *     moving_object *orig =  &(*origentry).key;
        make_now(orig);
        moving_object *new = &(*origentry).key;
        make_now(new);*
    
    
    
    Is everything ok in this code ??
    
    
    On Wed, Jan 13, 2010 at 8:42 PM, Sergej Galkin <sergej.galkin@gmail.com>wrote:
    
    > Hello all,
    >
    > I am a student-magister and I'm writting my magister work. I realized gist
    > index TPR tree - it is like a simple R tree but moving :)
    > Everything is compiling ok, I creating table and index, but after whese
    > code - DB is restarting :(((
    > *
    > *
    > *set enable_seqscan = false
    > select * from table_of_moving_objects where mov_obj ~ box '(0,0) (1,1)'*
    >
    > I can not understand why DB is restarting ? It is restarting when SQL
    > begins use index :(((
    > Can anybody help me , I would by appretiate every people who downloads my
    > sources, try to deploy index and maybe solve where is the problem.
    >
    > Best regards,
    > Sergej Galkin
    >
    
  3. Re: TPR-tree crash WAS: NEED HELP !

    Josh Berkus <josh@agliodbs.com> — 2010-01-13T19:05:20Z

    Sergej,
    
    > I can not understand why DB is restarting ? It is restarting when SQL
    > begins use index :(((
    > Can anybody help me , I would by appretiate every people who downloads
    > my sources, try to deploy index and maybe solve where is the problem.
    
    It would help if you gave people a link.
    
    Also, if you are Russian, there is a siginficant community of PostgreSQL
    russian-speakers who might be able to help you.
    
    --Josh Berkus
    
    
  4. Re: NEED HELP !

    Robert Haas <robertmhaas@gmail.com> — 2010-01-13T19:21:32Z

    On Wed, Jan 13, 2010 at 1:42 PM, Sergej Galkin <sergej.galkin@gmail.com> wrote:
    > I can not understand why DB is restarting ? It is restarting when SQL begins
    > use index :(((
    > Can anybody help me , I would by appretiate every people who downloads my
    > sources, try to deploy index and maybe solve where is the problem.
    
    Your code is probably crashing.  Before trying to use the index, run
    "select pg_backend_pid()" in the backend that you're going to try to
    use it from.  Then use "gdb -p <pid>" to attach gdb to the backend.
    Type "c" for continue.  Now run the query that crashes it.  gdb will
    trap the signal and you can use "bt" to get a backtrace.
    
    I don't think it would be appropriate for us to help you debug your
    class project, but learning to use gdb should help you a lot.
    
    Also see:
    
    http://wiki.postgresql.org/wiki/Guide_to_reporting_problems
    
    ...Robert
    
    
  5. Re: NEED HELP !

    Sergej Galkin <sergej.galkin@gmail.com> — 2010-01-13T19:43:03Z

    I debugged index with gdb and  found that it is segmentation fault in my
    procedure named *gist_mov_consistent* it is only 7 lines. So I think it is
    worth to publish it to public,
    
    *
    * *Datum gist_mov_consistent(PG_FUNCTION_ARGS)*
    *{*
    *    GISTENTRY *entry = (GISTENTRY *)PG_GETARG_POINTER(0);*
    *    BOX *query = PG_GETARG_BOX_P(1);*
    *    StrategyNumber strategy = (StrategyNumber)PG_GETARG_UINT16(2);*
    *    *
    *    if (DatumGetMovP(entry->key) == NULL || query == NULL)*
    *        PG_RETURN_BOOL(FALSE);*
    *    *
    *    PG_RETURN_BOOL(obj_contains(DatumGetMovP(entry->key), query));*
    *}*
    
    Do you have any ideas where is the problem ? :)
    
    Best regards,
    Sergej Galkin
    
    On Wed, Jan 13, 2010 at 8:42 PM, Sergej Galkin <sergej.galkin@gmail.com>wrote:
    
    > Hello all,
    >
    > I am a student-magister and I'm writting my magister work. I realized gist
    > index TPR tree - it is like a simple R tree but moving :)
    > Everything is compiling ok, I creating table and index, but after whese
    > code - DB is restarting :(((
    > *
    > *
    > *set enable_seqscan = false
    > select * from table_of_moving_objects where mov_obj ~ box '(0,0) (1,1)'*
    >
    > I can not understand why DB is restarting ? It is restarting when SQL
    > begins use index :(((
    > Can anybody help me , I would by appretiate every people who downloads my
    > sources, try to deploy index and maybe solve where is the problem.
    >
    > Best regards,
    > Sergej Galkin
    >
    
  6. Re: NEED HELP !

    Sergej Galkin <sergej.galkin@gmail.com> — 2010-01-13T19:46:22Z

    And
    *int obj_contains(moving_object *a, BOX *b)
    {
    
        if (b->low.x > a->x_low)
            return 0;
        if (b->low.y > a->y_low)
            return 0;
        if (b->high.x < a->x_high)
            return 0;
        if (b->high.y < a->y_high)
            return 0;
        return 1;
    }*
    this is the procedure obj contains
    
    On Wed, Jan 13, 2010 at 8:56 PM, Sergej Galkin <sergej.galkin@gmail.com>wrote:
    
    > I want to add than I have a piece of my code that looks very strange
    >
    > Datum gist_mov_penalty(PG_FUNCTION_ARGS)
    > {
    >     GISTENTRY *origentry = (GISTENTRY *) PG_GETARG_POINTER(0);
    >     GISTENTRY *newentry  = (GISTENTRY *) PG_GETARG_POINTER(1);
    >     float * result = (float *) PG_GETARG_POINTER(2);
    > *     moving_object *orig =  &(*origentry).key;
    >     make_now(orig);
    >     moving_object *new = &(*origentry).key;
    >     make_now(new);*
    >
    >
    >
    > Is everything ok in this code ??
    >
    >
    > On Wed, Jan 13, 2010 at 8:42 PM, Sergej Galkin <sergej.galkin@gmail.com>wrote:
    >
    >> Hello all,
    >>
    >> I am a student-magister and I'm writting my magister work. I realized gist
    >> index TPR tree - it is like a simple R tree but moving :)
    >> Everything is compiling ok, I creating table and index, but after whese
    >> code - DB is restarting :(((
    >> *
    >> *
    >> *set enable_seqscan = false
    >> select * from table_of_moving_objects where mov_obj ~ box '(0,0) (1,1)'*
    >>
    >> I can not understand why DB is restarting ? It is restarting when SQL
    >> begins use index :(((
    >> Can anybody help me , I would by appretiate every people who downloads my
    >> sources, try to deploy index and maybe solve where is the problem.
    >>
    >> Best regards,
    >> Sergej Galkin
    >>
    >
    >