Fork me on GitHub

Hi there šŸ˜„ I am checking the docs and I see: Crux does not support: ā€¢ vars in the attribute position, such as [e ?a "Ivan"] or [e _ "Ivan"] I don't have it as hard requirement but I was curious as to know why this is the case šŸ˜„

āž• 4

hey Andrea šŸ™‚ it reduces the amount of indices we need to keep, and would also involve more complexity (likely a corresponding performance hit) in the query engine for we perceive to be a (relatively) uncommon use case


Thanks for the prompt answer! One thing that I often do, admittedly as newbie, is to get all attributes for an entity šŸ˜ƒ Also as a side question, does it therefore practically mean that there are no A**T indexes in Crux?


ah, yes, me too šŸ™‚ we've got (crux.api/entity db entity-id) for that one, if that helps


indexes-wise, we have AEV and AVE - because we know we've always got an attribute in hand, we can always use that first in the index lookup we've also got separate temporal indices that tell us what version a document was at which times - these don't have any attributes or values in, just the entity, the bitemporal co-ordinates, and the content hash of the document at that time


Worth noting that for forward refs you can simply pull out the doc, and for reverse refs you can examine attribute-stats to check all possible attributes


oh cool that's good to know