/ Timeline

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

14 check-ins using file src/vdbeapi.c version 37fc2818

Enable prefix-search in query-parsing and snippet generation. If the character immediately after the end of a term is '*', that term is marked for prefix matching. Modify term comparison in snippetOffsetsOfColumn() to respect isPrefix. fts2n.test runs prefix searching through some obvious test cases. (CVS 3893) (check-in: 7c4c6592 user: shess tags: trunk)
First approximation of incremental blob IO API. (CVS 3892) (check-in: c444836e user: danielk1977 tags: trunk)
Modify loadSegmentLeavesInt() to correctly handle prefix searching. The new function docListUnion() is used to accumulate a union of the hits for the matching terms, which will be merged across segments using docListMerge(). (CVS 3891) (check-in: 72c79630 user: shess tags: trunk)
The pager takes the sector size to be the larger of the sector size reported by sqlite3OsSectorSize() and the page size. (CVS 3890) (check-in: e5e6af55 user: drh tags: trunk)
Propagate prefix flag through implementation of doclist query code. Also implement correct prefix-handling for traversal of interior nodes of segment tree. A given prefix can span multiple children of an interior node, and from there the branches need to be followed in parallel. (CVS 3889) (check-in: cae844a0 user: shess tags: trunk)
Fix a potential segfault following a malloc() failure during a call to sqlite3_prepare() where the nBytes parameter is positive but less than the length of the input SQL string. (CVS 3888) (check-in: 27bf3fc3 user: drh tags: trunk)
Lift docListMerge() call out of loadSegmentLeavesInt() for prefix search. Doclists from multiple prefix matches will need a union merge function, which will have to logically happen across a segment before doclists are merged between segments. (CVS 3887) (check-in: 7ddb8266 user: shess tags: trunk)
Try to avoid reading pages when moving overflow chains to the free-list. (CVS 3886) (check-in: 8cccec68 user: danielk1977 tags: trunk)
Add some tests (and 2 resulting bug fixes) to incr vacuum mode. (CVS 3885) (check-in: 89b1b3f8 user: danielk1977 tags: trunk)
Break interior-node and leaf-node readers apart in loadSegment(). Previously, the code looped until the block was a leaf node as indicated by a leading NUL. Now the code loops until it finds a block in the range of leaf nodes for this segment, then reads it using LeavesReader. This will make it easier to traverse a range of leaves when doing a prefix search. (CVS 3884) (check-in: 9466367d user: shess tags: trunk)
Internationalize the TRIM functions. Ticket #2323. (CVS 3883) (check-in: ff1f4e74 user: drh tags: trunk)
Lift code to traverse interior nodes out of loadSegment(). Refactoring towards prefix searching. (CVS 3882) (check-in: 25935db7 user: shess tags: trunk)
Refactor fts2 loadSegmentLeaf() in preparation for prefix-searching. Prefix-searching will want to accumulate data across multiple leaves in the segment, using LeavesReader instead of LeafReader is the first step in that direction. (CVS 3881) (check-in: 22ffdae4 user: shess tags: trunk)
Make sure sqlite3_value_bytes() does not reformat the content after a call to sqlite3_value_blob(). Add documentation to explain this hazard. Add many new tests. Ticket #2321. (CVS 3880) (check-in: e92bd97a user: drh tags: trunk)