my first 25 seconds of looking at this reveals that if you want to be able to 
generate a hash, this has to go all the way down to everything.   
query.filter(X == Y) means you need a hash for X == Y too.    These hashes are 
definitely going to be determined using a traversal scheme for sure:

q = X == Y

q._magic_hash_value_()

will ask "X", operator.eq, "Y", for their hash values ("X" and "Y" assuming 
they are Column objects are considered to be "immutable", even though they can 
be copies of "X" and "Y" sometimes with different semantics), and combine them 
together.

So some_select_statement._magic_hash_value_() would traverse all the way down 
as well.

This is why object identity was a lot easier to work with.




On May 30, 2013, at 3:05 PM, Michael Bayer <mike...@zzzcomputing.com> wrote:

> 
> On May 30, 2013, at 2:28 PM, Claudio Freire <klaussfre...@gmail.com> wrote:
> 
>> On Thu, May 30, 2013 at 2:25 PM, Michael Bayer <mike...@zzzcomputing.com> 
>> wrote:
>> 
>>> If you want to work on a feature that is actually going to change 
>>> SQLAlchemy, (and would that be before or after you finish #2720? :) ), it 
>>> would be:
>> 
>> After, I didn't forget, just real life real work priorities made me
>> veer away from it. Since it was for 0.9, I judged I could safely delay
>> 2720 a bit while I take care of work related priorities ;-)
> 
> also, I find an overhaul to Query such that it's self-hashing a lot more 
> interesting than #2720.  It would be a much bigger performance savings and it 
> would apply to other interpreters like pypy too.    Replacements of tiny 
> sections of code with C, not that interesting :) (redoing all the C in pyrex 
> is more interesting but not necessarily a priority).
> 
> 
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "sqlalchemy" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to sqlalchemy+unsubscr...@googlegroups.com.
> To post to this group, send email to sqlalchemy@googlegroups.com.
> Visit this group at http://groups.google.com/group/sqlalchemy?hl=en.
> For more options, visit https://groups.google.com/groups/opt_out.
> 
> 

-- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sqlalchemy+unsubscr...@googlegroups.com.
To post to this group, send email to sqlalchemy@googlegroups.com.
Visit this group at http://groups.google.com/group/sqlalchemy?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to