From mboxrd@z Thu Jan 1 00:00:00 1970 Date: Tue, 2 Sep 1997 16:12:27 -0400 From: G. David Butler gdb@dbSystems.com Subject: [9fans] Adding transaction semantics to Plan9 Topicbox-Message-UUID: 615e5754-eac8-11e9-9e20-41e7f4b1d025 Message-ID: <19970902201227.WxNc9w5SEihqqgnpGIVHH4AO9_OnqArRCuEk7mj2BeY@z> Hello everyone. I have been quiet for a while, but that is just the quiet before the storm. I have some new things I want to discuss! My current project is to add transaction support to the process model with full log protected file servers. I plan to use the multi-version consistency model and distributed commits to multiple file servers involved in the transaction. The primitives are from a Bell Labs paper "A Flexible Transaction Facility for an Object-Oriented Database" from 5 Dec 92. (To keep it in the family.) The system is will not be object-oriented (unless you want to consider a "file" or a "directory" a class). The primitives are useful for implementing transaction models that are interesting. The changes are extensive. The file protocal 9P is changed (to add the idea of a transaction to the current idea of a user.) Several system calls are changed and a few added to internalize the idea of a transaction. I am just starting. I am planing three transaction modes. Read Committed, Serializable and Plan9. The latter is Read Committed and Write Commit. The primitives allow "cursor stability", savepoint/rollback, nested and chained transactions, to name a few. The plan for the system is to build low cost data intensive application servers for the Internet. I belive that transactional semantics are required in any large scale distributed system and current systems are cost prohibitive. In addition, the current state of the art is to run a database on top of an operating system. I believe there is a lot of efficiences to be gained by making them one. Just pick an issue and let's get going... David Butler gdb@dbSystems.com