Hi all,

So I'm building a db with some RTree indices to store genome
information. Among other things, I have an RTree index to store the
start/end positions of genes on chromosomes. The problem is that the
numbers stored in the RTree aren't the ones I'm entering, sometimes
they can be several base pairs (int values) off.

For instance, here's an RTree "table" I'm using to store the start/end
boundaries of genes:

CREATE VIRTUAL TABLE gene_tree USING rtree(
  id,                     -- primary & foreign key to gene.id
  start,                  -- as far 5' as the farthest transcript (+ strand)
  end,                    -- as far 3' as the farthest transcript (+ strand)
  chr1,                   -- bound on the chromosome (fkey to chromosome.id)
  chr2                    -- same
);

Let's insert this info for a gene on chromosome 14:

INSERT INTO gene_tree (id, start, end, chr1, chr2) VALUES (1,
94622317.0, 94693512.0, 14, 14);

Now, selecting from gene_tree

sqlite> select * from gene_tree;

id          start       end         chr1        chr2
----------  ----------  ----------  ----------  ----------
1           94622320.0  94693512.0  14.0        14.0

This row should have start=94622317, why is it inserting 94622320?

I know the rtree documentation says that the index "does not normally
provide the exact answer," but I guess I'd be a bit surprised if this
is what is supposed to be happening. Is this expected behavior?

I'm using sqlite version 3.6.18

Thanks for any help,
-steve

-- 
Steve Lianoglou
Graduate Student: Computational Systems Biology
 | Memorial Sloan-Kettering Cancer Center
 | Weill Medical College of Cornell University
Contact Info: http://cbio.mskcc.org/~lianos/contact
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to