Thanks very much!

On Wed, May 10, 2017 at 2:24 PM, mike bayer <mike...@zzzcomputing.com>
wrote:

> this is all patched in 1.2, your original test works too.
>
> The fix here is a little too intricate for 1.1 right now as this is a very
> long-standing bug    (goes back to 0.7 at least and probably further) and
> 1.1 is getting near maintenance mode.
>
>
>
> On 05/10/2017 01:48 PM, mike bayer wrote:
>
>> nevermind, the issue is at
>>
>> https://bitbucket.org/zzzeek/sqlalchemy/issues/3984/deferred
>> -column_property-gets-set-to
>>
>> the fix is not as obvious as that, that particular check is assuming a
>> column_property() where its value was never present in __dict__ in the
>> first place, so it needs to be marked "expired".
>>
>>
>> On 05/10/2017 01:38 PM, Kent wrote:
>>
>>> The regular columns seem to expire and reload properly without issue.
>>>  (Is that what you're asking?)
>>>
>>> You want me to submit a PR changing:
>>>
>>> if p.expire_on_flush or p.key*not*in state.dict
>>>
>>> to
>>>
>>> if p.expire_on_flush*and*p.key in state.dict*
>>> *
>>>
>>> ?
>>>
>>> (If so, which branch?)
>>>
>>>
>>> On Wednesday, May 10, 2017 at 12:55:45 PM UTC-4, Mike Bayer wrote:
>>>
>>>     so you can confirm this is only for custom SQL + column_property(),
>>> not
>>>     a regular column right?  definitely a bug for 1.2 if you can post it
>>> up
>>>
>>>
>>>     On 05/10/2017 12:37 PM, Kent wrote:
>>>      > I'm thinking that should be
>>>      > *"if p.expire_on_flush and p.key in state.dict"*
>>>      >
>>>      >
>>>      > On Wednesday, May 10, 2017 at 11:35:30 AM UTC-4, Kent wrote:
>>>      >
>>>      >     deferred column_properties may be less-efficient subquery
>>>     selects
>>>      >     (and thus marked deferred).  When a flush occurs that updates
>>> an
>>>      >     object, any read-only column_properties are marked as
>>>     expired, even
>>>      >     if they weren't even loaded.  This means if the object needs
>>>     to be
>>>      >     refreshed, all these deferred column properties are loaded.
>>>      >
>>>      >     We probably want the behavior to only expire read-only
>>>     attributes
>>>      >     that were actually loaded, right?
>>>      >
>>>      >     See attached script.  This behavior is as of 1.1.1
>>>      >
>>>      >     Thoughts?
>>>      >
>>>      >
>>>      > --
>>>      > SQLAlchemy -
>>>      > The Python SQL Toolkit and Object Relational Mapper
>>>      >
>>>      > http://www.sqlalchemy.org/
>>>      >
>>>      > To post example code, please provide an MCVE: Minimal, Complete,
>>> and
>>>      > Verifiable Example. See http://stackoverflow.com/help/mcve
>>>     <http://stackoverflow.com/help/mcve> for a full
>>>      > description.
>>>      > ---
>>>      > 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+...@googlegroups.com <javascript:>
>>>      > <mailto:sqlalchemy+unsubscr...@googlegroups.com <javascript:>>.
>>>      > To post to this group, send email to sqlal...@googlegroups.com
>>>     <javascript:>
>>>      > <mailto:sqlal...@googlegroups.com <javascript:>>.
>>>      > Visit this group at https://groups.google.com/group/sqlalchemy
>>>     <https://groups.google.com/group/sqlalchemy>.
>>>      > For more options, visit https://groups.google.com/d/optout
>>>     <https://groups.google.com/d/optout>.
>>>
>>> --
>>> SQLAlchemy -
>>> The Python SQL Toolkit and Object Relational Mapper
>>>
>>> http://www.sqlalchemy.org/
>>>
>>> To post example code, please provide an MCVE: Minimal, Complete, and
>>> Verifiable Example. See http://stackoverflow.com/help/mcve for a full
>>> description.
>>> ---
>>> 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 <mailto:
>>> sqlalchemy+unsubscr...@googlegroups.com>.
>>> To post to this group, send email to sqlalchemy@googlegroups.com
>>> <mailto:sqlalchemy@googlegroups.com>.
>>> Visit this group at https://groups.google.com/group/sqlalchemy.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
> --
> SQLAlchemy - The Python SQL Toolkit and Object Relational Mapper
>
> http://www.sqlalchemy.org/
>
> To post example code, please provide an MCVE: Minimal, Complete, and
> Verifiable Example.  See  http://stackoverflow.com/help/mcve for a full
> description.
> --- You received this message because you are subscribed to a topic in the
> Google Groups "sqlalchemy" group.
> To unsubscribe from this topic, visit https://groups.google.com/d/to
> pic/sqlalchemy/g0QVQ6RbxNU/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> sqlalchemy+unsubscr...@googlegroups.com.
> To post to this group, send email to sqlalchemy@googlegroups.com.
> Visit this group at https://groups.google.com/group/sqlalchemy.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
SQLAlchemy - 
The Python SQL Toolkit and Object Relational Mapper

http://www.sqlalchemy.org/

To post example code, please provide an MCVE: Minimal, Complete, and Verifiable 
Example.  See  http://stackoverflow.com/help/mcve for a full description.
--- 
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 https://groups.google.com/group/sqlalchemy.
For more options, visit https://groups.google.com/d/optout.

Reply via email to