Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re^3: DBIx::Class Object Caching

by chrestomanci (Priest)
on Jul 12, 2011 at 18:35 UTC ( [id://913982]=note: print w/replies, xml ) Need Help??


in reply to Re^2: DBIx::Class Object Caching
in thread DBIx::Class Object Caching

I am just another user of DBIx::Class, not a developer, so there is no point telling me that the design might be wrong.

In what situation do you anticipate a race condition? To me that implies two different processes with separate connections to the database, so it would be meaningless for them both to see the same object.

In the case of reducing the overhead of multiple database queries, in my experience it is not a problem. If you are using the same row object twice close together (in time or in code terms), then it is easy enough to keep it in scope. If the two uses of the object are a long time apart, or in distantly related parts of program then it would be better to do fresh database queries to avoid the risk of stale objects. Remember that the database will be caching the rows, so if it has not changed between accesses, then the cost of retrieving it a second time will be small. Why put code to check if it has changed in DBIC as well, when it is already in the back end database.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://913982]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others sharing their wisdom with the Monastery: (5)
As of 2024-04-20 00:23 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found