![]() | This article is rated C-class on Wikipedia's
content assessment scale. It is of interest to the following WikiProjects: | |||||||||||||||||
|
(See also the article The History of Commitment Ordering that has been written following this comment)
Strangely, since its introduction publicly in formal publications, Commitment ordering has been misunderstood (including in papers mentioning strong recoverability), misrepresented, and totally ignored in many papers on database global concurrency control. The single existing description of CO in a textbook, by Weikum and Vossen, 2001, is indeed poor (as somebody already mentioned in the article Serializability’s discussion part) and a misunderstanding of the CO solution. A three years review process by IPL of a CO paper (see dates in the reference), a journal that typically accepts and publishes papers in few weeks, means a problematic review process with reviewers’ opposition very likely, but with acceptance at the end (persistent editor!). Acceptance to top journal and conferences means that at least some experts understood CO. CO is the most spectacular result in concurrency control theory since 2PL and multi-version CC, to my opinion, and apparently the only existing effective general solution to the global serializability problem. All the above is not a compliment to the researchers involved, whatever the reasons are.
Some more information connected to CO that I have found:
Closely related to CO is Dynamic atomicity that has been introduced at the MIT in the mid eighties by William E. Weihl (using a unique OO formalism), but without a general algorithm beyond mentioning known algorithms with locking. Under a specific transaction model translation it can be interpreted as CO (no commit order is mentioned there explicitly). In 1993 it was reformulated as CO (using commit) without reference to the CO papers. Atomic commitment and voting, which eliminate global cycles in the precedence graph, and are the basis for CO’s distribution, are not mentioned there.
In 1990 Analogous execution and serialization order, which unnecessarily has serializability as a premise (it implies serializability also without the premise), but otherwise similar to CO, was introduced in technical reports by Marek Rusinkievicz et al without a general algorithm. Its definition was enhanced in 1991 with a new name: Strong recoverability (wrong name), which is identical to CO. A paper about SS2PL (Rigorousness), already accepted for publication (“To appear in TSE, September 1991” is displayed at the top) that mentions analogous execution but does not mention strong recoverability, has been circulated in 1991. The definition of strong recoverability appears only in the September 1991 published version of the paper, and is used to assist a global serializability proof of a SS2PL based federated database. No related general algorithm is mentioned. A 1992 paper on strong recoverability cites a CO paper, but again, does not give any general properly defined CO algorithm. Atomic commitment and voting are not mentioned there, and neither I saw them mentioned in later papers that mention strong recoverability, sometimes together with CO. All papers that mention both state that they are "the same," which is true for the definitions, but not for the solutions: Only the CO papers describe valid CO algorithms and related effective system solutions.
In the mid nineties Transactional processes have been introduced, citing a CO paper. In later papers on transactional processes CO is not referenced, and distributed CO based algorithms are given (CO is assumed without mentioning the name CO). These algorithms are unlikely to be correct since they do not use the cycle elimination voting mechanism in atomic commitment, or any such alternative mechanism. 71.250.4.220 ( talk) 17:04, 18 May 2008 (UTC)
The neutrality of part of this page is disputed, as part of a wider discussion. See Talk:Commitment ordering and Wikipedia talk:WikiProject Computer science#User:Comps / Commitment ordering. — Ruud 14:30, 23 December 2011 (UTC)
Copied from
Talk:Serializability:
Removing baseless tag overdue. 209.144.63.76 ( talk) 21:49, 5 December 2012 (UTC)
Merging does not make any sense. Serializability and Global serializability are subjects with small overlap. A single relevant section exists in Serializability with Global serializability as a main article. This section is much smaller than this article, which includes substantial disjoint text material. I wonder if the proposal is based on either reading or understanding the texts. An unnecessary discussion. Tag should be removed. 209.144.63.76 ( talk) 22:00, 5 December 2012 (UTC)
Hello fellow Wikipedians,
I have just modified one external link on Global serializability. Please take a moment to review my edit. If you have any questions, or need the bot to ignore the links, or the page altogether, please visit this simple FaQ for additional information. I made the following changes:
When you have finished reviewing my changes, you may follow the instructions on the template below to fix any issues with the URLs.
This message was posted before February 2018.
After February 2018, "External links modified" talk page sections are no longer generated or monitored by InternetArchiveBot. No special action is required regarding these talk page notices, other than
regular verification using the archive tool instructions below. Editors
have permission to delete these "External links modified" talk page sections if they want to de-clutter talk pages, but see the
RfC before doing mass systematic removals. This message is updated dynamically through the template {{
source check}}
(last update: 5 June 2024).
Cheers.— InternetArchiveBot ( Report bug) 03:44, 13 January 2017 (UTC)
I've left two tags above the section on commitment ordering: one for the writing style -- essay-like, though very tough to read at the same time -- and one for the neutrality of view -- it clearly expresses personal opinions and, as far as I can discern, was written by the author cited multiple times in it. Quotes like
"It [CO] has been misunderstood by many database researchers years after its introduction, which is evident by the quotes above from articles in 1997-1998 referencing Commitment ordering articles."
and
"The underlying Theory of Commitment ordering [sic; capitalisation not mine], part of Serializability theory [sic; once again, wrongful capitalisation], is both sound and elegant (and even "mathematically beautiful"; referring to structure and dynamics of conflicts, graph cycles, and deadlocks), with interesting implications for transactional distributed applications."
are completely out of place on Wikipedia. This seems to be an ailment not exclusive to this article, but rather present in many articles on transactional database management, where the same author pops up with the same entailed problems. The section should be trimmed significantly and be made neutral. — Preceding unsigned comment added by MewTheEditor ( talk • contribs) 18:17, 4 December 2020 (UTC)
Like many others I have found it difficult to get the gist of Commitment Ordering (CO). I believe the problem is that all articles that touch the subject are very dense/wordy. Today while reading this article on Global Serializability I saw the following sentence:
CO generalizes strong strict two phase locking (SS2PL)...
...which I actually understand. It says that if you understand SS2PL then CO is a more general form of that protocol, and while it may not be immediately clear what it means to generalize SS2PL at least you can now start with SS2PL as a foundation. SS2PL is really easy to understand because it explains what you need to do in just one sentence:
To comply with strong strict two-phase locking (SS2PL) the locking protocol releases both write (exclusive) and read (shared) locks applied by a transaction only after the transaction has ended, i.e., only after both completing executing (being ready) and becoming either committed or aborted.
I believe the whole CO concept could benefit from a single, implementation-focused instruction like the above, i.e. it needs a sentence that fills in the blank in the following: To comply with CO, the transaction processing protocol must ______. As of this comment, the year is 2021 which means Yoav Raz has been arguing vehemently for this thing for 30 years now. It's high time we move away from words (they are clearly not working) and start describing how to implement CO - preferably with actual running code that people can execute to see CO in action for themselves.
I work on massively distributed systems (think "databases running on thousands of nodes") and I am very much interested in what CO can offer to this field. So Yoav Raz, if you see this, please start working on a demo/simulator that can show CO in practice - it could be the final push needed to clarify a topic you are obviously very passionate about!
I made the mentioned change here because this article fails to meet one or more of the B-class criteria, and therefore should be rated C-class. In particular, this article:
The original classification as B-class was done by User:Comps, who wrote most of the article, and has was banned more than ten years ago. I suspect the classification as "High-importance" to WP:WikiProject Computer Science may also not reflect reality, but I am not confident declaring so unilaterally.
I'm also thinking about nominating this to AfD. There was a previous nomination nearly twelve years ago that resolved keep. My preference is probably actually to stubify. Would welcome others' thoughts. mjec ( t/ c) 04:25, 14 October 2023 (UTC)
![]() | This article is rated C-class on Wikipedia's
content assessment scale. It is of interest to the following WikiProjects: | |||||||||||||||||
|
(See also the article The History of Commitment Ordering that has been written following this comment)
Strangely, since its introduction publicly in formal publications, Commitment ordering has been misunderstood (including in papers mentioning strong recoverability), misrepresented, and totally ignored in many papers on database global concurrency control. The single existing description of CO in a textbook, by Weikum and Vossen, 2001, is indeed poor (as somebody already mentioned in the article Serializability’s discussion part) and a misunderstanding of the CO solution. A three years review process by IPL of a CO paper (see dates in the reference), a journal that typically accepts and publishes papers in few weeks, means a problematic review process with reviewers’ opposition very likely, but with acceptance at the end (persistent editor!). Acceptance to top journal and conferences means that at least some experts understood CO. CO is the most spectacular result in concurrency control theory since 2PL and multi-version CC, to my opinion, and apparently the only existing effective general solution to the global serializability problem. All the above is not a compliment to the researchers involved, whatever the reasons are.
Some more information connected to CO that I have found:
Closely related to CO is Dynamic atomicity that has been introduced at the MIT in the mid eighties by William E. Weihl (using a unique OO formalism), but without a general algorithm beyond mentioning known algorithms with locking. Under a specific transaction model translation it can be interpreted as CO (no commit order is mentioned there explicitly). In 1993 it was reformulated as CO (using commit) without reference to the CO papers. Atomic commitment and voting, which eliminate global cycles in the precedence graph, and are the basis for CO’s distribution, are not mentioned there.
In 1990 Analogous execution and serialization order, which unnecessarily has serializability as a premise (it implies serializability also without the premise), but otherwise similar to CO, was introduced in technical reports by Marek Rusinkievicz et al without a general algorithm. Its definition was enhanced in 1991 with a new name: Strong recoverability (wrong name), which is identical to CO. A paper about SS2PL (Rigorousness), already accepted for publication (“To appear in TSE, September 1991” is displayed at the top) that mentions analogous execution but does not mention strong recoverability, has been circulated in 1991. The definition of strong recoverability appears only in the September 1991 published version of the paper, and is used to assist a global serializability proof of a SS2PL based federated database. No related general algorithm is mentioned. A 1992 paper on strong recoverability cites a CO paper, but again, does not give any general properly defined CO algorithm. Atomic commitment and voting are not mentioned there, and neither I saw them mentioned in later papers that mention strong recoverability, sometimes together with CO. All papers that mention both state that they are "the same," which is true for the definitions, but not for the solutions: Only the CO papers describe valid CO algorithms and related effective system solutions.
In the mid nineties Transactional processes have been introduced, citing a CO paper. In later papers on transactional processes CO is not referenced, and distributed CO based algorithms are given (CO is assumed without mentioning the name CO). These algorithms are unlikely to be correct since they do not use the cycle elimination voting mechanism in atomic commitment, or any such alternative mechanism. 71.250.4.220 ( talk) 17:04, 18 May 2008 (UTC)
The neutrality of part of this page is disputed, as part of a wider discussion. See Talk:Commitment ordering and Wikipedia talk:WikiProject Computer science#User:Comps / Commitment ordering. — Ruud 14:30, 23 December 2011 (UTC)
Copied from
Talk:Serializability:
Removing baseless tag overdue. 209.144.63.76 ( talk) 21:49, 5 December 2012 (UTC)
Merging does not make any sense. Serializability and Global serializability are subjects with small overlap. A single relevant section exists in Serializability with Global serializability as a main article. This section is much smaller than this article, which includes substantial disjoint text material. I wonder if the proposal is based on either reading or understanding the texts. An unnecessary discussion. Tag should be removed. 209.144.63.76 ( talk) 22:00, 5 December 2012 (UTC)
Hello fellow Wikipedians,
I have just modified one external link on Global serializability. Please take a moment to review my edit. If you have any questions, or need the bot to ignore the links, or the page altogether, please visit this simple FaQ for additional information. I made the following changes:
When you have finished reviewing my changes, you may follow the instructions on the template below to fix any issues with the URLs.
This message was posted before February 2018.
After February 2018, "External links modified" talk page sections are no longer generated or monitored by InternetArchiveBot. No special action is required regarding these talk page notices, other than
regular verification using the archive tool instructions below. Editors
have permission to delete these "External links modified" talk page sections if they want to de-clutter talk pages, but see the
RfC before doing mass systematic removals. This message is updated dynamically through the template {{
source check}}
(last update: 5 June 2024).
Cheers.— InternetArchiveBot ( Report bug) 03:44, 13 January 2017 (UTC)
I've left two tags above the section on commitment ordering: one for the writing style -- essay-like, though very tough to read at the same time -- and one for the neutrality of view -- it clearly expresses personal opinions and, as far as I can discern, was written by the author cited multiple times in it. Quotes like
"It [CO] has been misunderstood by many database researchers years after its introduction, which is evident by the quotes above from articles in 1997-1998 referencing Commitment ordering articles."
and
"The underlying Theory of Commitment ordering [sic; capitalisation not mine], part of Serializability theory [sic; once again, wrongful capitalisation], is both sound and elegant (and even "mathematically beautiful"; referring to structure and dynamics of conflicts, graph cycles, and deadlocks), with interesting implications for transactional distributed applications."
are completely out of place on Wikipedia. This seems to be an ailment not exclusive to this article, but rather present in many articles on transactional database management, where the same author pops up with the same entailed problems. The section should be trimmed significantly and be made neutral. — Preceding unsigned comment added by MewTheEditor ( talk • contribs) 18:17, 4 December 2020 (UTC)
Like many others I have found it difficult to get the gist of Commitment Ordering (CO). I believe the problem is that all articles that touch the subject are very dense/wordy. Today while reading this article on Global Serializability I saw the following sentence:
CO generalizes strong strict two phase locking (SS2PL)...
...which I actually understand. It says that if you understand SS2PL then CO is a more general form of that protocol, and while it may not be immediately clear what it means to generalize SS2PL at least you can now start with SS2PL as a foundation. SS2PL is really easy to understand because it explains what you need to do in just one sentence:
To comply with strong strict two-phase locking (SS2PL) the locking protocol releases both write (exclusive) and read (shared) locks applied by a transaction only after the transaction has ended, i.e., only after both completing executing (being ready) and becoming either committed or aborted.
I believe the whole CO concept could benefit from a single, implementation-focused instruction like the above, i.e. it needs a sentence that fills in the blank in the following: To comply with CO, the transaction processing protocol must ______. As of this comment, the year is 2021 which means Yoav Raz has been arguing vehemently for this thing for 30 years now. It's high time we move away from words (they are clearly not working) and start describing how to implement CO - preferably with actual running code that people can execute to see CO in action for themselves.
I work on massively distributed systems (think "databases running on thousands of nodes") and I am very much interested in what CO can offer to this field. So Yoav Raz, if you see this, please start working on a demo/simulator that can show CO in practice - it could be the final push needed to clarify a topic you are obviously very passionate about!
I made the mentioned change here because this article fails to meet one or more of the B-class criteria, and therefore should be rated C-class. In particular, this article:
The original classification as B-class was done by User:Comps, who wrote most of the article, and has was banned more than ten years ago. I suspect the classification as "High-importance" to WP:WikiProject Computer Science may also not reflect reality, but I am not confident declaring so unilaterally.
I'm also thinking about nominating this to AfD. There was a previous nomination nearly twelve years ago that resolved keep. My preference is probably actually to stubify. Would welcome others' thoughts. mjec ( t/ c) 04:25, 14 October 2023 (UTC)