Re: [elephant-devel] Two patches still in queue

2008-04-04 Thread Robert L. Read
On Thu, 2008-04-03 at 12:52 +0200, Leslie P. Polzer wrote: > Hi guys, > > there are two tiny patches I've sent that must've been overlooked. > One reverted a small previous change in the tutorial and one > put the concurrency tests in a separate suite. > > Especially the latter one is important,

RE: [elephant-devel] Multi user client-server performance

2008-04-04 Thread Vagif Verdi
> This is an issue on Allegro since it cannot thread and call foreign > code at the same time. I do not believe that SBCL suffers from this > particular limitation - presuming the C code is thread safe which BDB > is. > Ian Interesting. I'm using sbcl, so it is good to know that elephant w

Re: [elephant-devel] Multi user client-server performance

2008-04-04 Thread Ian Eslick
This is an issue on Allegro since it cannot thread and call foreign code at the same time. I do not believe that SBCL suffers from this particular limitation - presuming the C code is thread safe which BDB is. Ian On Apr 4, 2008, at 8:24 PM, Vagif Verdi wrote: I’m looking for a object dat

[elephant-devel] Multi user client-server performance

2008-04-04 Thread Vagif Verdi
I'm looking for a object database to play with and possibly adopt for future projects, and I'm reading elephant site and manuals so far. I have a few questions to clarify. Reading Allegrocache site http://www.franz.com/products/allegrocache/AllegroCache_for_ILC_2005.htm I stumbled into this re

Re: [elephant-devel] Re: traversing btree using multiple indices

2008-04-04 Thread Ian Eslick
IE> As for Sean's request about doing an efficient intersection, as Alex IE> was explaining there are only two ways to do this efficiently: no, these are two ways to do it inefficiently, there is only one way to do it efficiently -- via combined index :) True, but his request was efficienc

[elephant-devel] Re: traversing btree using multiple indices

2008-04-04 Thread Alex Mizrahi
IE> The string tuple-sorting hack makes me cringe. yep, this looks weird. but i mostly have id-and-time situation, and it works fine for it. IE> I know that I could make BDB and the lisp side sort lists based on IE> their constituents pretty easily if you felt we could make the same IE> ha

Re: [elephant-devel] Re: traversing btree using multiple indices

2008-04-04 Thread Sean Ross
On 4/4/08, Ian Eslick <[EMAIL PROTECTED]> wrote: > However, premature optimization often causes more trouble than it's worth. > The easiest thing to do to get going is to index both slots and say: > > (intersection (get-instances-by-range 'event 'date ) > (get-instances-by-value 'e

Re: [elephant-devel] Re: traversing btree using multiple indices

2008-04-04 Thread Ian Eslick
Hi there, The string tuple-sorting hack makes me cringe. I know that I could make BDB and the lisp side sort lists based on their constituents pretty easily if you felt we could make the same hack work in postmodern. (cons "Fred" 23) < (cons "Fred" 25) < (cons "Sally" 10) Maybe we could

[elephant-devel] Re: traversing btree using multiple indices

2008-04-04 Thread Alex Mizrahi
SR> What is the best/easiest/most-elephantish way to retrieve all events SR> in the btree which have the 'lisp' tag and whose date falls on today? so you have lots of possible tags and many tags per event? then you need a btree with entry for each event for each tags, that is ( -> event_id) btr

[elephant-devel] Re: traversing btree using multiple indices

2008-04-04 Thread Alex Mizrahi
??>> i believe that SQL RDBMS work this way too -- if one needs fast ??>> retrieval by several keys, he should create index on them. RDMBS knows ??>> how to sort tuples, though SR> Well yes, but generally SQL RDBMS's will make efficient use of indexes SR> it they are created on all the keys

Re: [elephant-devel] Re: traversing btree using multiple indices

2008-04-04 Thread Sean Ross
> I'm really just curious about using > 2 btree indices together without requiring the creation of a 3rd. Of course I could be working against elephant while trying to do all of this. So here is what I am trying to achieve, any pointers would be great. Given the following code. >> (defpackage

Re: [elephant-devel] Re: traversing btree using multiple indices

2008-04-04 Thread Sean Ross
On 4/4/08, Alex Mizrahi <[EMAIL PROTECTED]> wrote: > (defclass test-event () > ((date :accessor date-of :initform (now) :index t) ... > and it will create indices for you automatically. Yes, although this is just an example of what I'm trying to achieve and isn't exactly what i'm doing. I'm re

[elephant-devel] Re: traversing btree using multiple indices

2008-04-04 Thread Alex Mizrahi
SR> (defclass test-event () SR> ((date :accessor date-of :initform (now)) SR>(name :accessor name-of :initform nil)) SR> (:metaclass persistent-metaclass)) SR> (defun create-date-indexer (a b c) (values t (date-of c))) SR> (defun create-name-indexer (a b c) (values t (name-of c)))

Re: [elephant-devel] traversing btree using multiple indices

2008-04-04 Thread Sean Ross
On 4/3/08, Ian Eslick <[EMAIL PROTECTED]> wrote: > Do you just want the simple union, an ordered union by some criteria or do > you mean intersection? Perhaps an example would help us help you! ack, intersection, not union, that'll teach me to post and run. as an example given the following cla