On Sun, 2008-05-04 at 10:37 +0300, Alex Mizrahi wrote: > RLR> implementing a new kind of btree that supports duplicates (hard). > > ain't btree with duplicates very similar to btree-index thing, because > btree-index also supports duplicates?
Yes, I thought that too -- my initial strategy was to attempt to subclass that to create the btree-index. Instead, I had to extract a lot of the function for it by hand, and simply subclass sql-btree. So, you are correct, the functionality is in principle similar---but for me it was not so easy to lift it into exactly what is needed. Part of this is that there is only one direct test of dup-btree functionality; I'm trying to rectify that a little right now. > > RLR> Since Postmodern uses the same kind of cursor control that the CL-SQL > RLR> backend does, > > why do you think so? cursor are probably biggest difference between CL-SQL > and postmodern -- instead of reading everything and sorting on lisp side, we > use sorting done by postgresql, and pick stuff in portions, i.e. cursor-next > is something like: > > SELECT k, v FROM btree11 WHERE ((k = $1) and (v > $2)) OR (k > $1) LIMIT 10 I think perhaps I was confused by pm-collections.lisp, which seems actually defines sql-cursor, instead of pm-cursor. I guess that file should probably be removed. > > _______________________________________________ > elephant-devel site list > elephant-devel@common-lisp.net > http://common-lisp.net/mailman/listinfo/elephant-devel _______________________________________________ elephant-devel site list elephant-devel@common-lisp.net http://common-lisp.net/mailman/listinfo/elephant-devel