Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number

Re: RFC: Databases made easy

by sundialsvc4 (Abbot)
on Mar 22, 2011 at 22:08 UTC ( #894895=note: print w/replies, xml ) Need Help??

in reply to RFC: Databases made easy

A general comment that I would add to this (excellent!) tutorial is, simply:   “Always be mindful of transactions.”

Different people have different preferences about how they want to deal with transactions, and DBI tries to accommodate everyone.   You can start and commit and roll-back the transactions explicitly, or you can let DBI issue some of these calls for you.   The important thing is simply to know what is going to happen in the code that you write.

In the case of SQLite, transactions are particularly important!   When a transaction is in progress, SQLite will defer certain disk I/O operations until the transaction commits (if not sooner), but when a transaction is not in progress, SQLite will ensure that every disk write is known to be successfully finished before the statement completes.   Although this behavior is conservative and, undoubtedly, “technically correct,” this can have a dramatically negative impact on performance, even on a very fast machine.   (“Gotcha!!”)

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://894895]
[Corion]: ... coworkers have. But I guess I've gone more mellow since I get to relax more, and such stuff doesn't make me as angry as it used to.
[Corion]: $boss will still get to listen to my interpretation :-D
[Eily]: hey, I'm just behind Larry in SioB \o/
[Corion]: Eily: Wheee ;)
[Eily]: I'll add that to my résumé

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (7)
As of 2018-01-22 11:10 GMT
Find Nodes?
    Voting Booth?
    How did you see in the new year?

    Results (233 votes). Check out past polls.