Category Archives: Transaction Processing

Thinking about Jim Gray (again)

Yesterday I wrote “Thinking about Jim Gray” because I had been thinking about him on and off for most of the week. It looked like the search was over, and I wanted to say something.
Today I find myself unable to stop thinking about him. It’s partly because I’ve been working on updating the TP book, and that keeps him in my thoughts because of his relationship to the book, but it’s also because updating the book involves a lot of tedious work, and my mind tends to wander off.
So much is out there about him. I take breaks from the manuscript and search the news and the blogs. It’s unbelievable. Now the search is continuing through private efforts and searching photos on the Web.
I did go to the Amazon site, and I went through some of the photos. It seemed like searching for the proverbial needle in a haystack, but I guess you never know what might help. Can you imagine if one of us finds him that way? It is already becoming a phenomenon.
A good place to find out what’s going on is the Tenacious search blog. It summarizes what everyone is doing — computer analysis, postering, analyzing cell phone records, shipping records, Web cams, reports from the family, etc.
You can also see some of the photos here in a different format from how they’re presented on Amazon.
Some folks suggest Jim might just have kept on sailing to Mexico or somewhere else across the Pacific…
If we knew what happened to him, that would be one thing. For example, I do not want to write in the past tense, not yet. Although the news isn’t good, there is still hope.
I guess what mainly strikes me is the huge amount of interest. Everyone who works with him says what a great guy he is, and it’s amazing how much he’s contributed to computer science. Everyone seems to feel about him the way I do — as a friend, but more — someone to really look up to.
As I work on the book I find myself thinking about him and the example he set.
Wherever you are, Jim, I hope you can sense some of what’s going on – and see how you have truly touched so many lives. So many of us thinking about you, and still hoping you are well.

Thinking of Jim Gray

Update Feb 3. Help find Jim. Also: Blog tracking search progress. (Doesn’t require logging into Amazon.)
He is not only one of the smartest guys I ever met, he’s also one of the nicest.
I was lucky enough to be working at Digital in the late 80s when we started hiring the big brains in transaction processing — including Jim — to help us compete against IBM. Never mind that we should probably have been focused on personal computers, instead. For someone whose first job was converting batch applications into online TP applications, and who loves TP as much I do, it was a great time.
He visited Digital’s TP heaquarters in Littleton, MA (where I worked) often and his presence was always felt throughout the building.
I last heard from him about a year ago, when he sent comments on the proposal for the second edition of the TP book Phil and I wrote (we are working on that second edition right now in fact).
Although it might have been easy for him to consider our effort to be in competition with his book, he actually gave us the most thorough review or the manuscript and some very helpful comments, and agreed to write the foreword.
The tremendous industry reaction, as seen in the many articles and blog entries, is completely understandable. Jim invented, or helped invent, many technologies fundamental to the way the world works every day, including the relational database, high availablilty and fault tolerance mechansims, scalability algorithms, transaction processing mechanisms, and many many others. Yet you would never hear him boast about it. He always preferred to think of himself as part of the team.
When he won the Turing prize I sent him a congratulatory email and received back a characteristically very nice and humble message.
I cannot be too sad, because he is still just missing, but that news was a great shock, and the fact that it has been almost a week now is not good.

WS-Transactions update

Ok, so now that I’ve written about what we did after we finished our work, how about I write about the work we did?
After the WS-TX face to face meeting in Redmond, Stefan Tilkov emailed me some questions which ended up in an interview posted on the InfoQ site, which covers the big picture pretty well.
Since WS-TX was chartered about a year ago, we have been working to refine the three submitted V1.0 specs and progress them to achieve a status as the adopted standards of an independent consortium. Ultimately standards are all about adoption – many specs have been written that go nowhere, while other technologies have become standard without ever going through the committee process.
For the WS-Transactions specifications I’d say we are getting what you’d call sufficient critical mass: IBM, Microsoft, Red Hat (JBoss), and IONA all currently provide implementations. In addition we also have regular participation from Sun, Hitachi, Oracle, Nortel, Fujitsu, Adobe, Tibco, Choreology, and individuals (John Harby) – all of whom attended this face to face either in person or via phone. This is pretty good considering the work is nearly completed.
So what do we spend our time doing? Processing issues from the issue list.
The email archives are public, as are the documents and meeting minutes. You can tell we spend a lot of time debating the exact wording.
The standards process is all about opening up the discussion to anyone interested in participating. The goal is consensus and broad adoption and typically the price is speed. It is harder to get a larger group to agree on something than it is to get a smaller group to agree on something.
In case of Web services specifications, many times the specifications are fairly mature by the time they are submitted to an OASIS or W3C committee.
In general the way the work progresses is that anyone interested can review a specification and submit an issue. The TC members then debate and typically vote to resolve an issue. Often resolving an issue involves a change to the specification, and the cycle starts again. The expectation is that each new cycle brings the specification closer to completion, because the issues become less significant as the spec is refined.
Because we are getting close to the end, we have been spending more time on “fit and finish” issues and polishing up the text than we did when we first started. One of the major issues for the recent face to face was getting the specs consistent with RFC 2119 (yes, there is a standard for using certain words in standards ;-).
On the WS-TX TC home page you can also find links to home pages for each of the three specifications:
WS-C V1.1 and WS-AT V1.1 entered their 60-day public review mid September, and so we also had the chance at the F2F to discuss and resolve issues submitted during the public review process, which is basically the final cycle. WS-BA 1.1 will be going into the public review phase soon, again based on the work we did during the F2F.
Once the specifications have completed their public reviews the next step will be to submit them to become OASIS standards. If they are accepted, the work of the TC is essentially completed.

The Last Face to Face for WS-TX?

Regular readers of this blog will know that I’m currently a co-chair of the OASIS WS-TX TC, chartered last year to progress the WS-Transactions family of specifications.
This week we held a successful face to face meeting in Concord, MA, hosted in inimitable style by Hitachi (we can’t say enough thanks for the truly great hospitality this time and last year as well). Special thanks to Bob Freund for hosting the “unwinder” at his home (and inviting a member of the Sudbury Militia).
In fact, it was so successful that we finished up the agenda a bit early and found some time to take in some monuments and exhibits decicated to colonial era history.
WS-TX British Representatives at the North Bridge Monument (on the British Side)
(full photo)
Among the participants in the TC were Andy and Ian (my co-chair, on the right), who had traveled from Britain to attend. They were very good sports about the whole history thing, considering they were more familiar with a somewhat different side of the story.
As we were leaving the museum to head toward the cemetary we heard the sound of fife and drum from the far side of the bridge. It turned out to be a send off ceremony for some national guardsmen on their way to a NATO base in the Balkans.
The Fife and Drum Corps Plays the Star Spangled Banner
(full photo)
This was an unexpected bonus to the day, as was the warming weather and the appearance of the sun when we got to the famous cemetary in town where all the writers are buried. Concord, famous as the site of the battle that started the war, and later as the home of thoughtful and famous writers, including Thoreau, known among other things for his pacifism.
Regarding the specifications, well, they are well on their way toward OASIS standard. Ian and I are very close to declaring victory in this little campaign and are talking about closing down the TC within a few months.
This would be unusual in the standards world – completing the chartered task in roughly the originally alloted timeframe, and closing down a TC. This would be a good accomplishment, but it’s a mixed blessing. This is also one of the best TCs I’ve ever worked on.
Some more photos of the tour of Concord are on flickr.

Progress on WS-Transactions

I celebrated my return from vacation Monday by getting on a plane to Seattle for the three-day Web Services Transactions technical committee face to face. 😉
Bad weather in Chicago caused a total of 5 hours’ delay on the way out, and I missed my connection. My bag, which I checked only because of the new restrictions, ended up on a different plane than I did, which cost me one of those hours. On the way back I decided it wouldn’t happen again, so before leaving the hotel I threw away all the toothpaste, shaving gel, and cologne in my toilet kit. Of course the weather was fine Friday and the delays were minimal…
Anyway from Tuesday through Thursday we made some good progress on the WS-Transactions specifications. These are important specifications because some applications of Web services and SOA require transactional integrity, and because the coordination spec (WS-C) and compensation spec (WS-BA) lay the foundation for some of the advanced transaction models we will need for large scale, loosely-coupled, asynchronous applications of SOA.
Tuesday and Wednesday we resolved all outstanding issues with current drafts of WS-Coordination and WS-AtomicTransaction. We confirmed successful interop testing of them, and voted them to Public Review, which is the next step toward their becoming OASIS standards. (The new drafts will be posted soon on the TC website.)
Wednesday evening Ian Robinson, my co-chair, had the idea of going to the restaurant in the Space Needle. Not everyone went, but those of us who did had a great view of the sunset. As is typical for Seattle the day had been cloudy with a bit of rain but by evening it started to clear.
After a Long Day of Processing Transaction Processing Issues
A lot of the discussion on Thursday was given over to issues on the WS-BusinessActivity specification.
The two-phase commit protocol defined in WS-AT hasn’t fundamentally changed in 20 years (or more), and has been standardized at least four times previously (OSI TP, TX-RPC, OTS/JTS, and TIP). And implementations of this specification interoperate pretty smoothly, and the spec is pretty stable.
Of course you might ask whether two-phase commit is appropriate for Web services and SOA, but the answer is, like anything else, that it depends what you’re doing, and it sometimes is.
Anyway the bigger, more open discussion is on alternative protocol models, which are more appropriate for asynchronous or long-running applications, such as WS-BA. Less is known about these from implementation experience.
WS-BA is an “open nested transaction” protocol, which means that “nested” or substransactions can commit without the overall transaction committing. Compensation actions are then required to undo any changes should the overall transaction have to roll back.
In this context the overall transaction can be thought of as a WS-BPEL script with multiple service invocations, and in fact one of the design criteria, if not the main one, for WS-BA is that is is a good match for WS-BPEL compensation scopes.
Other advanced transaction models and protocol mappings are possible on top of WS-C, but these are outside the scope of the current TC. We are still hoping to complete the TC’s work within about a year of it’s initial meeting last November, and at the moment we are probably on track for completion in early 2007.


Ok, this was Monday and Tuesday but I need to catch up a bit before going ahead with Munich (where I am today).
The purpose of the trip to Madrid was to meet with Telefonica, one of IONA’s longstanding customers, and present some information about SOA, Web services standards, SCA and the Eclipse STP project, within the context of their evaluation of our new product line (Artix).
It was interesting to hear about Telefonica’s recent acquisition of O2 (who is already using our new product in production in the UK) and about their IPTV solution, which apparently is being readied for sales outside of Spain.
But the highlight of the visit for me was dinner with Ricardo Jimenez-Peris, whom I’d met briefly at dinner during an ObjectWeb converence in Grenoble last month. Ricardo took me to one of his favorite restaurants, and the food was unbelievable. One of the best meals I have ever had. We had anchovies in vinegar, Iberian ham (appropriately enough for us TP guys fed on Encina acorns), a platter of mixed seafood fried in a dry batter (i.e. didn’t absorb the grease), and octopus with potatoes. This last dish was far and away the best octopus I ever tasted, just superb.
One of Ricardo’s major interests in his work at the University of Madrid is transaction processing. In fact I was a reviewer of one of his papers being presented at WWW20006. Ironically enough I will be in Edinburgh the days just before WWW2006 attending the W3C Advisory Committee meeting, where I’m chairing a panel discussion on enterprise software standardization requirements. That will also be the end of my present European tour ;-).
Anyway, the paper is based on WS-CAF and WS-Transactions. We knew each other’s work before we met, and we found a lot to talk about over dinner, dessert (great raspberry sorbet), and coffee.
Ricardo has also been researching a potential optimization for 2PC based on reliable multicast, which sounds very promising.