Skip to content
Snippets Groups Projects
  1. Sep 11, 2007
    • Teodor Sigaev's avatar
      Refactor from Heikki Linnakangas <heikki@enterprisedb.com>: · 57cafe79
      Teodor Sigaev authored
      * Defined new struct WordEntryPosVector that holds a uint16 length and a
      variable size array of WordEntries. This replaces the previous
      convention of a variable size uint16 array, with the first element
      implying the length. WordEntryPosVector has the same layout in memory,
      but is more readable in source code. The POSDATAPTR and POSDATALEN
      macros are still used, though it would now be more readable to access
      the fields in WordEntryPosVector directly.
      
      * Removed needfree field from DocRepresentation. It was always set to false.
      
      * Miscellaneous other commenting and refactoring
      57cafe79
  2. Sep 07, 2007
    • Teodor Sigaev's avatar
      Refactoring by Heikki Linnakangas <heikki@enterprisedb.com> with · e5be8998
      Teodor Sigaev authored
      small editorization by me
      
      - Brake the QueryItem struct into QueryOperator and QueryOperand.
        Type was really the only common field between them. QueryItem still
        exists, and is used in the TSQuery struct as before, but it's now a
        union of the two. Many other changes fell from that, like separation
        of pushval_asis function into pushValue, pushOperator and pushStop.
      
      - Moved some structs that were for internal use only from header files
        to the right .c-files.
      
      - Moved tsvector parser to a new tsvector_parser.c file. Parser code was
        about half of the size of tsvector.c, it's also used from tsquery.c, and
        it has some data structures of its own, so it seems better to separate
        it. Cleaned up the API so that TSVectorParserState is not accessed from
        outside tsvector_parser.c.
      
      - Separated enumerations (#defines, really) used for QueryItem.type
        field and as return codes from gettoken_query. It was just accidental
        code sharing.
      
      - Removed ParseQueryNode struct used internally by makepol and friends.
        push*-functions now construct QueryItems directly.
      
      - Changed int4 variables to just ints for variables like "i" or "array
        size", where the storage-size was not significant.
      e5be8998
  3. Aug 21, 2007
  4. Feb 28, 2007
  5. Oct 04, 2006
  6. Jun 28, 2006
    • Teodor Sigaev's avatar
      Changes · 1f7ef548
      Teodor Sigaev authored
      * new split algorithm (as proposed in http://archives.postgresql.org/pgsql-hackers/2006-06/msg00254.php)
        * possible call pickSplit() for second and below columns
        * add spl_(l|r)datum_exists to GIST_SPLITVEC -
          pickSplit should check its values to use already defined
          spl_(l|r)datum for splitting. pickSplit should set
          spl_(l|r)datum_exists to 'false' (if they was 'true') to
          signal to caller about using spl_(l|r)datum.
        * support for old pickSplit(): not very optimal
          but correct split
      * remove 'bytes' field from GISTENTRY: in any case size of
        value is defined by it's type.
      * split GIST_SPLITVEC to two structures: one for using in picksplit
        and second - for internal use.
      * some code refactoring
      * support of subsplit to rtree opclasses
      
      TODO: add support of subsplit to contrib modules
      1f7ef548
  7. Mar 11, 2006
  8. Jan 20, 2006
    • Tom Lane's avatar
      Replace bitwise looping with bytewise looping in hemdistsign and · 33feb55c
      Tom Lane authored
      sizebitvec of tsearch2, as well as identical code in several other
      contrib modules.  This provided about a 20X speedup in building a
      large tsearch2 index ... didn't try to measure its effects for other
      operations.  Thanks to Stephan Vollmer for providing a test case.
      33feb55c
  9. Nov 07, 2005
  10. Oct 15, 2005
  11. Sep 24, 2005
  12. Jun 20, 2005
  13. May 21, 2005
  14. Mar 31, 2005
  15. Oct 21, 2004
  16. Aug 29, 2004
  17. Mar 30, 2004
  18. Jul 24, 2003
  19. Jul 21, 2003
  20. Sep 04, 2002
  21. Aug 23, 2002
  22. Feb 07, 2002
  23. Oct 13, 2001
Loading