[Twisted-Python] So how does everyone use an ORM in twisted?
coder_gus at lavabit.com
Mon Mar 23 16:48:14 EDT 2009
So, basically what you say is that if I do something like:
def dataReceived(self, data):
and later you have:
data = orm_session.query(Object).filter(data).all()
return data # eagerloaded, lazyloaded and put in any format you like
at the time of the query or when lazy-loading an attribute the reactor
And if so, why is that? I do not know the internals of the reactor nor
the ones of the ORM and I am interested why something like this won't work.
P.S: Sorry for the vaguely python pseudo-code, hope you got the idea.
Jean-Paul Calderone wrote:
> On Tue, 17 Mar 2009 11:05:59 -0400, Ryan Lepidi <ryeguy1 at gmail.com>
>> I have searched a bit, and it seems as though you can't use SQL
>> Alchemy with
>> twisted due to SA being thread unsafe. The only solution I found was
>> but this is old and unmaintained. What is everyone else doing for
>> access for a multiuser server? Is everyone really using raw sql
>> queries or
>> is there some easy solution that I'm missing?
>> I'm not even stuck on SQL Alchemy; if there is some other ORM that
>> works in
>> this case, I'd be willing to learn it.
> I use Axiom (for Mantissa, a somewhat general-purpose application server,
> for Quotient, a mail server based on it, for Imaginary, a text adventure
> server based on it, for Blendix, a person aggregator based on it, for
> Merit, a test results database, etc) most of the time. I know some other
> people are using Storm.
> Overall, I think that the way all existing ORMs work (including Axiom and
> Storm) is hostile towards the typical Twisted program structure (or vice
> versa, or both). So it's tough. The approach Axiom takes is to warn you
> that any database operation you perform must complete quickly or your app
> will suffer, and to restrict you to SQLite, so network issues can't hurt
> Twisted-Python mailing list
> Twisted-Python at twistedmatrix.com
> Be a professional. Click here to earn a psychology degree.
More information about the Twisted-Python