[rucksack-devel] Re: Fwd: State of the nation and heap patch
Cyrus Harmon
ch-rucksack at bobobeach.com
Tue Feb 12 21:09:15 UTC 2008
What do class indexes buy us? We can locate an instance (given an
identifier of some sort I presume) quickly with or without an index,
right? The indices allow us to do rucksack-map-instances, but it's not
clear to me why this needs to be an index per se. A hash-table or
other (unordered) could do the trick just as well, although the
mapping would then no longer be in order.
It would be nice if the index functionality were exposed through
functions and methods allowing for adding/removing indices, rather
than by modifying the class definition (the use case I'm thinking is
allowing user operations for bulk loads that would remove the indices
and then add them back).
Why wouldn't it be possible to add class indices after the fact?
Thanks,
Cyrus
On Feb 12, 2008, at 12:34 PM, Arthur Lemmens wrote:
> Cyrus Harmon wrote:
>
>> Yes, turning off the indices does seem to be helping the load time.
>> Based on current progress, I'd guess that this will bring the load
>> time down into the 30 min. range instead of the two hour range.
>>
>> Is there a way to add the indices back once the data is loaded?
>
> Not for class indices (and maybe that's not even possible at all,
> in the general case).
>
> But you can add a slot index to a slot (of a class that has a class
> index) by adding something like
>
> :index :string-index
>
> to the slot definition and re-evaluating the entire class definition
> I usually just compile and load the file that contains the class
> definitions.
>
> See also the files test-index-1a.lisp and test-index-1b.lisp in
> the test directory.
>
> Arthur
>
More information about the rucksack-devel
mailing list