> It wasn't "ColdFusion Request threading" but rather multi-threading in > general - there are two main reasons DB transactions exist: 1) because > multithreading apps allow concurrent access of resources and 2) to allow for > roll-back processing. > > In other words "since I allow you to do two things at once I need to allow > you a way to force only one thing at a time". In SQL transactions solve > that problem (as CFLOCK does in CF). > > If that's not the case (and lord knows I've been wrong before) then I beg > humbly for enlightenment. ;^) > > Jim Davis
Jim, I'm sorry to say that your entire concept of threading and transactions is incorrect. I don't mean to hassle you over this, but it's steering people in the wrong direction. Transactions were not created to either manage or account for threading issues; the transaction occurs in an entirely different layer of the architecture altogether. Transactions exist for one reason only, and that is to ensure that all such statements that compose a transaction are considered as a single atomic action. The subject becomes more involved as you consider that, in modern multi-user databases, all work is performed in memory. Throw in a heavy load of multiple users and the need to intelligently synchronize memory versions of data to what is physically stored on disk, and you enter the rather complicated topic of transactional isolation and its related impact on lock escalation, which in turn impacts transactional isolation all over again. None of this has much to do with threading; if you completely changed how the requests arrived at the database engine, nothing would change with respect to transaction execution. We cover all this at great length in our intensive database class (see below) for which we have one seat remaining, and this is the last one for the rest of the year. We show how the entire process works, including a timeline comparing isolation level with competing transactions and live demonstrations of each example running, and we discuss the engineering decisions involved in choosing isolation levels, implementing savepoints, nesting transactions, and how everything impacts the ColdFusion application as a whole. We also have a complete load testing lab where we can show the real world effects of these decisions, so it's very useful training. This is just in case anyone out there is interested, because we'd love to fill this remaining seat (the registered student had to drop out at the last minute for lack of funding). It's so late in the game that I'll give anyone who wants it a $500 discount on the remaining seat. Just contact me offline. Respectfully, Adam Phillip Churvis Member of Team Macromedia Advanced Intensive ColdFusion MX Training Advanced Development with ColdFusion MX and SQL Server 2000: August 11 - 15, 2003 http://www.ColdFusionTraining.com Download CommerceBlocks V2.1 and LoRCAT from http://www.ProductivityEnhancement.com The ColdFusion MX Bible is in bookstores now! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4 Subscription: http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribe&forumid=4 FAQ: http://www.thenetprofits.co.uk/coldfusion/faq Get the mailserver that powers this list at http://www.coolfusion.com Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4

