[sqlalchemy] Dangers of setting a session's expire_on_commit=False?

2014-07-25 Thread Paul Molodowitch
Hi all - so I'm thinking of disabling the expire_on_commit property for my default sessionmaker object, and I was wondering what the potential issues with this were. Is it simply that the next access of the data on it could be using out-of-date information? Don't objects potentially have this

Re: [sqlalchemy] problems with mysql reflect

2014-07-11 Thread Paul Molodowitch
, or there's anything else I can do to help! - Paul On Thu, Jul 10, 2014 at 6:06 PM, Mike Bayer mike...@zzzcomputing.com wrote: On 7/10/14, 3:49 PM, Paul Molodowitch wrote: Whoops! Just noticed this was the totally wrong traceback! Here's the correct trace: Traceback (most recent call

Re: [sqlalchemy] problems with mysql reflect

2014-07-11 Thread Paul Molodowitch
oops, that line should read Python 2.6 doesn't accept, not except. My hands are too used to typing except SomeError:... On Fri, Jul 11, 2014 at 11:38 AM, Paul Molodowitch elron...@gmail.com wrote: Done: https://bitbucket.org/zzzeek/sqlalchemy/issue/3123/mysql-reflection-on-python-26-causes

Re: [sqlalchemy] problems with mysql reflect

2014-07-10 Thread Paul Molodowitch
Whoops! Just noticed this was the totally wrong traceback! Here's the correct trace: Traceback (most recent call last): File stdin, line 1, in module File test.py, line 155, in module metadata.reflect(db.engine, only=tables) File ./sqlalchemy/sql/schema.py, line 3277, in reflect

Re: [sqlalchemy] problems with mysql reflect

2014-07-09 Thread Paul Molodowitch
I just ran into the same problem, using python 2.6 + sqlalchemy 0.9.4 / 0.9.6 + MySQL. The problem in my case IS definitely related to python 2.6 - basically, python 2.6 doesn't allow unicode keywords, while 2.7 does. Ie, if you do this: def foo(**kwargs): print kwargs foo(**{u'thing':1})

Re: [sqlalchemy] problems with mysql reflect

2014-07-09 Thread Paul Molodowitch
...@zzzcomputing.com wrote: On 7/9/14, 3:41 PM, Paul Molodowitch wrote: I just ran into the same problem, using python 2.6 + sqlalchemy 0.9.4 / 0.9.6 + MySQL. The problem in my case IS definitely related to python 2.6 - basically, python 2.6 doesn't allow unicode keywords, while 2.7 does. Ie

Re: [sqlalchemy] Automatically set primary key to None when deleted?

2014-07-03 Thread Paul Molodowitch
On Wed, Jul 2, 2014 at 9:22 PM, Mike Bayer mike...@zzzcomputing.com wrote: On 7/2/14, 10:05 PM, Paul Molodowitch wrote: Suppose I have a super simple table like this: class Dinosaur(Base): __tablename__ = 'dinosaurs' id = Column(Integer, primary_key=True) name = Column

Re: [sqlalchemy] Automatically set primary key to None when deleted?

2014-07-03 Thread Paul Molodowitch
Particularly since sqlalchemy has already established that it's willing to expire dict members when they may not be valid anymore - ie, what it does to clear any cached values from a row proxy after the session is committed. well it doesn't expire the deleted object right now because it's

[sqlalchemy] Automatically set cascade settings based on ON DELETE / ON UPDATE when reflecting?

2014-07-03 Thread Paul Molodowitch
I noticed that sqlalchemy now properly sets the onpudate / ondelete properties of foreign keys when reflecting tables: https://bitbucket.org/zzzeek/sqlalchemy/issue/2183/support-on-delete-update-in-foreign-key However, it doesn't seem to set the cascade properties of relationships to reflect

Re: [sqlalchemy] Automatically set cascade settings based on ON DELETE / ON UPDATE when reflecting?

2014-07-03 Thread Paul Molodowitch
:20 PM, Mike Bayer mike...@zzzcomputing.com wrote: On 7/3/14, 6:15 PM, Mike Bayer wrote: On 7/3/14, 5:45 PM, Paul Molodowitch wrote: I noticed that sqlalchemy now properly sets the onpudate / ondelete properties of foreign keys when reflecting tables: https://bitbucket.org/zzzeek

[sqlalchemy] Automatically set primary key to None when deleted?

2014-07-02 Thread Paul Molodowitch
Suppose I have a super simple table like this: class Dinosaur(Base): __tablename__ = 'dinosaurs' id = Column(Integer, primary_key=True) name = Column(String(255)) We assume that the id is set up in such a way that by default it always gets a unique value - ie, it uses autoincrement