On Thu, Oct 5, 2017 at 1:43 PM, sqlalchemy_mysql <[email protected]> wrote: > Thanks for prompt reply. Narrowed down the issue. > > If the transaction is committed, the query returns fine and processing does > invoke process_result_value with correct/expected value. If the session is > not committed (or just flushed), query doesn't invoke process_result_value > unless if any row has null value for the column. I hope it is expected > functionality, no? If yes, is there other hook that is invoked when > objects/rows are fetched from cache?
if the session is not committed then you will find that the data that is present in memory on your objects will remain, and is not overwritten by any SQL calls that occur (and thus any process_result_value behaviors) unless you expire the objects in question first: http://docs.sqlalchemy.org/en/latest/orm/session_state_management.html#refreshing-expiring > > On Wednesday, October 4, 2017 at 9:39:49 PM UTC-7, Mike Bayer wrote: >> >> On Wed, Oct 4, 2017 at 10:47 PM, sqlalchemy_mysql <[email protected]> >> wrote: >> > When query with specific column loads properly and I can see >> > 'result_processor' and/or 'process_result_value' is invoked with correct >> > value but when query directly on Model (no explicit column is specified >> > but >> > all columns are queried in this case by default) invokes those methods >> > with >> > None value. Is this known issue? are there any workaround? I tried both >> > TypeDecorator approach and sub-type approach. >> >> result_processor works in all cases where the type is set up properly, >> in order to see your problem you'd need to provide a complete example >> (see the link for MCVE at the bottom of this email). >> >> >> > >> > -- >> > 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 [email protected]. >> > To post to this group, send email to [email protected]. >> > 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 [email protected]. > To post to this group, send email to [email protected]. > 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 [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/sqlalchemy. For more options, visit https://groups.google.com/d/optout.
