Re: [sqlalchemy] pyodbc + FreeTDS segfault?? on linux

2011-04-07 Thread Michael Bayer

On Apr 7, 2011, at 12:46 AM, Randy Syring wrote:

 I am running Ubuntu 10.04, python 2.6.5, SA 0.6.6, latest pyodbc
 release.  I have tried FreeTDS that ships with the distro (0.82) as
 well as current CVS.  I can make a connection and issue a basic SQL
 statement.  However, when I try to run my unit tests, I get the
 following error:
 
 *** glibc detected *** /path/to/venv/bin/python: free(): invalid next
 size (fast): 0x02527bf0 ***


nothing ive seen before with freetds (and I use freetds a lot) - so your steps 
would be to isolate the problem into something reproducible, then ask on the 
FreeTDS or possibly pyodbc lists, possibly first converting it into a straight 
pyodbc script so there are at least fewer layers of abstraction at play.



 
 The SQL issued just before that error is:
 
 2011-04-07 00:26:39,257 INFO sqlalchemy.engine.base.Engine.0x...0350
 INSERT INTO corporate_sessions (createdts, updatedts, id, hits,
 relatedip, user_id) VALUES (?, ?, ?, ?, ?, ?)
 2011-04-07 00:26:39,257 INFO sqlalchemy.engine.base.Engine.0x...0350
 (datetime.datetime(2011, 4, 7, 0, 26, 39, 257073), None,
 u'e1457896AdZgRjqg8CD8', 0, '10.66.3.230', 1)
 
 and then the process just hangs and I have to kill the process.
 
 My unit tests run successfully against sqlite, postgresql, and MSSQL
 on Windows.  I have successfully ran the following test script on with
 the same libraries and virtualenv:
 
 import datetime
 import sqlalchemy as sa
 eng = sa.create_engine(mssql://user:pass@server/temp?
 Port=1435TDS_Version=8.0,echo=True)
 res = eng.execute('select 1+1 as foo')
 for row in res:
  print 'answer=',row['foo']
 
 #eng.execute('DROP TABLE satest')
 #eng.execute('CREATE TABLE satest(id INT, name VARCHAR(300), ts
 datetime)')
 
 res = eng.execute('INSERT INTO satest(id, name, ts) VALUES (?, ?, ?)',
  (10, u'foobar', datetime.datetime(2011, 4, 7, 0, 26,
 39, 257073)))
 
 One last thing, when I first tested this, I got an error related to
 using an ORM instance when it had already been deleted (or something
 like that, I can't remember exactly).  But I haven't seen that error
 for a long time and don't remember doing anything in particular to
 change it.
 
 -- 
 You received this message because you are subscribed to the Google Groups 
 sqlalchemy group.
 To post to this group, send email to sqlalchemy@googlegroups.com.
 To unsubscribe from this group, send email to 
 sqlalchemy+unsubscr...@googlegroups.com.
 For more options, visit this group at 
 http://groups.google.com/group/sqlalchemy?hl=en.
 

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



[sqlalchemy] pyodbc + FreeTDS segfault?? on linux

2011-04-06 Thread Randy Syring
I am running Ubuntu 10.04, python 2.6.5, SA 0.6.6, latest pyodbc
release.  I have tried FreeTDS that ships with the distro (0.82) as
well as current CVS.  I can make a connection and issue a basic SQL
statement.  However, when I try to run my unit tests, I get the
following error:

*** glibc detected *** /path/to/venv/bin/python: free(): invalid next
size (fast): 0x02527bf0 ***

The SQL issued just before that error is:

2011-04-07 00:26:39,257 INFO sqlalchemy.engine.base.Engine.0x...0350
INSERT INTO corporate_sessions (createdts, updatedts, id, hits,
relatedip, user_id) VALUES (?, ?, ?, ?, ?, ?)
2011-04-07 00:26:39,257 INFO sqlalchemy.engine.base.Engine.0x...0350
(datetime.datetime(2011, 4, 7, 0, 26, 39, 257073), None,
u'e1457896AdZgRjqg8CD8', 0, '10.66.3.230', 1)

and then the process just hangs and I have to kill the process.

My unit tests run successfully against sqlite, postgresql, and MSSQL
on Windows.  I have successfully ran the following test script on with
the same libraries and virtualenv:

import datetime
import sqlalchemy as sa
eng = sa.create_engine(mssql://user:pass@server/temp?
Port=1435TDS_Version=8.0,echo=True)
res = eng.execute('select 1+1 as foo')
for row in res:
  print 'answer=',row['foo']

#eng.execute('DROP TABLE satest')
#eng.execute('CREATE TABLE satest(id INT, name VARCHAR(300), ts
datetime)')

res = eng.execute('INSERT INTO satest(id, name, ts) VALUES (?, ?, ?)',
  (10, u'foobar', datetime.datetime(2011, 4, 7, 0, 26,
39, 257073)))

One last thing, when I first tested this, I got an error related to
using an ORM instance when it had already been deleted (or something
like that, I can't remember exactly).  But I haven't seen that error
for a long time and don't remember doing anything in particular to
change it.

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