CherryPy + Database questions

timothy.kellogg at gmail.com timothy.kellogg at gmail.com
Mon Mar 5 23:03:27 EST 2007


On Mar 5, 8:44 am, "Diez B. Roggisch" <d... at nospam.web.de> wrote:
> Brian Blais wrote:
> > Hello,
>
> > I have more of a conceptual question about the way databases work, in a
> > web
> > framework, but I will be implementing things with CherryPy and SQLAlchemy.
> >  If you make a web form that adds rows to a database, and use sqlite as
> > the engine, is there a danger of a race condition if several users at the
> > same time try to submit the
> > form?  I want a unique row id, and make a unique identifier for the
> > submissions.  Am I in danger of having multiple submissions given the same
> > identifier?
>
> > I know that if I implemented things without a database, but used a flat
> > file or something like it, I would have that possibility, when two
> > processes try to read and update the file at the same time.
>
> > If you want something more specific, I can throw some code together, but I
> > wanted to get an answer before that because it will change the way I
> > develop the code.
>
> Usually, that is exactly what a RDBMS gives you. See the database connector
> module's threadsaftey property to see what exactly you can expect.
>
> Diez

SQLite isn't really a DBMS at all, it's just a library.  According to
their FAQ (http://www.sqlite.org/faq.html#q8) it is only threadsafe as
long as you aren't changing the same DB in separate threads (so no,
not threadsafe at all).

Hope this helps.

--Tim




More information about the Python-list mailing list