• Correction

    From Derek Ignatius Asirvadem@21:1/5 to All on Tue Jul 27 14:09:27 2021
    On Tuesday, 27 July 2021 at 20:59:24 UTC+10, Daniel wrote:

    I noticed that the procedure 'Dumb_Withdraw_tr' actually takes @UpdatedDtm as a parameter

    Ouch. Copy-paste error. Please ignore. Doc updated. Please discuss against the corrected doc.

    What skew ???

    Cheers
    Derek

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Derek Ignatius Asirvadem@21:1/5 to All on Tue Jul 27 19:34:32 2021
    On Wednesday, 28 July 2021 at 10:49:58 UTC+10, Derek Ignatius Asirvadem wrote:
    On Tuesday, 27 July 2021 at 21:37:57 UTC+10, Nicola wrote:


    Here is my take on science, as it has been 350BC to 1911. (Which is under attack since 1911, by Modernism.) It is a body of knowledge (certainty: the Latin word means knowledge not speculation). Of course, one can speculate BASED ON that body of
    knowledge, and that is HYPOTHESIS, which when confirmed by tests is elevated to THEORY. If and when the theory is proved (proper proof, proper method, not merely a mathematical definition of a theory), it progresses to a truth, and is added to that body
    of knowledge.

    When that theory, which is proved in one or the other vertical gets proved in many verticals, it is elevated to LAW, such as the LAW of Thermodynamics, and it applies to all other sciences. Eg. evolutionism fails the second LAW of Thermodynamics.
    <<<

    The purpose of science is to determine the truth. (Truth pre-existed its notice by humans.)

    Eg. in the old days, scientists were RESPONSIBLE humans, they dealt with issues within their science, and tore down absurd theories, they applies the Four Laws of Thought and resolved any unresolved issue (LEM), they rejected any contradiction (LNC).
    The result being, lay people did not have to argue about an issue. Due to their grounding in Reality, in Objective Truth, opinions and consensus and citations were irrelevant. One either accepted objective truth and remained sane, or one rejected it
    and embraced insanity. There is no argument to be had.

    In these dark days, when the best of human filth is propagandised as “science”, the counter-point needs to be articulated.

    With the implementation of Modernism in science, since 1911 (date according to my research thus far, Modernism as it destroyed Philosophy was late 18th century):
    - Four Laws of Thought rejected
    - Logic suppressed
    - Composition & Causation (Cause & Effect) rejected
    - the natural hierarchy rejected
    - Atomicity rejected, fragments divorced from their context (the atom) and elevated
    - limited to Materialism (the intellectual realm rejected)
    - instead of ONE level of speculation BASED ON knowledge, speculation upon unproved speculation
    --- speculation upon unproved speculation upon unproved speculation
    ----- speculation upon unproved speculation upon unproved speculation upon unproved speculation
    - theories that keep changing (which in and of itself prove the theory false) and allowed to keep changing, in the fervent hope that if they change enough
    --- Evolutionism is the most propagandised and thus the best example: it defies logic and science; not a single shred of proof in 170 years; it lies in denial of evidence that proves it false; and the theory keep changing
    - introduction of relativism; subjectivism;
    --- as infamously promoted by the worlds greatest plagiarist, alberto sow-sucking einstein
    --- whose theories (other than the ones he stole) have all broken down, due to his plugging in false numbers that he “believed in”, instead of properly determined scientific numbers
    - thus the focus has moved, the purpose has been corrupted,
    - the purpose is now to PRODUCE the “truth”
    --- which by definition means that it is no
  • From Derek Ignatius Asirvadem@21:1/5 to All on Fri Aug 6 01:20:08 2021
    Nicola

    On Wednesday, 4 August 2021 at 19:23:53 UTC+10, Derek Ignatius Asirvadem wrote:

    Noting that what you are used to, the PoopDePooGres "sql" is *not* SQL, and certainly *not* a programming language, but we have had SQL since IBM released it into the public domain. It is the Relational data sub-language defined by Codd. Of course,
    each SQL Platform supplier has extensions. In contrast the freeware has substitutions, and a whole pile of extensions that are irrelevant, that ensure that the code is not portable.

    With a view to learning what actually SQL is, that it is a full programming language, and specifically what SAP/Sybase Adaptive Server Enterprise [ Transact-SQL ] is, please erase all your notions of SQL; ACID; Transactions that you have acquired, and
    start with a fresh and open mind. The obstacle to learning this is, as always, any attitude that you know the subject matter, and eg. you just need to learn the Sybase syntax. In particular, do not attempt to perform a task in Sybase in the pig poop way,
    find out how to do it in the normal commercial SQL way.

    1. Visit this page
    __ https://help.sap.com/viewer/product/SAP_ASE/16.0.4.0/en-US?task=whats_new_task
    2. Select [ Download PDFs ] at top right
    3. Choose the manuals you want, and download them. Read them from cover to cover. On the train or whatever.
    4. I recommend the following, in order.
    __ Installation & Upgrade Guide
    __ Transact-SQL Users Guide
    __ Reference/Building Blocks
    __ Reference/Commands
    __ Reference/Utility (especially isql)
    __ Admin/System Admin Guide/Volume 1

    First, your questions
    __ are classic Straw Man arguments, in that academics are clueless about real world; the industry, which is confirmed by their declaration that they are divorced from implementation concerns, and which is evidenced in every instance, such as this thread,
    __ eg. locking vis-a-vis Transactions, let alone how a commercial SQL Platform handles locking and Transactions,
    __ so they think that the problems THEY HAVE, such as in their pathetic "2PL", which is a fat band-aid on top of their schizophrenic MV-non-CC
    __ are very very real, due to
    ____ a. their isolation from reality, their comfort in their tiled cells, their universe of discourse
    ____ b. being UNSKILLED AND UNAWARE (please read some real science)
    ____ c. hundreds of articles circle-jerking about their fantasies, which are passed off as academic papers
    ____ d. books that celebrate that filth, passed off as textbooks
    __ leave you in that silly place, where you think the sane have the problems that the insane have, and worse, you try to impose those insane problems on the sane.

    No.

    1. The sane do not have those insane problems
    2. And we do not have to answer how and why we do not have those problems
    __ If we do, we confirm that those problems are real, and degenerate into insanity
    __ and fail to do the thing that is begging: to raise the insane out of their insanity.

    Thus it is for you to put your insane problems, your Straw Man questions aside, step out of the asylum, and find out how we do things in the real world, such that we simply do not have those insane problems. Again, I commend you for being the only
    academic to do so. But your progress, over the last ten years of interaction with me, is very slow. Keep going.

    Of course, the best thing to do, is install SAP/Sybase ASE and obtain some experience working with serious databases (not classroom exercises); locking; and Transactions. Find out what undamaged, un-perverted humans have been doing during your fifty
    years of isolation from reality. You have started that. Excellent.
    __ In that regard, I am happy to assist. Ask me a direct question, and I will give you direct advice.
    __ No open-ended question, no discussion
    ____ just look at the long-drawn out discussion that I have entertained, this thread; the IDEF1X/Incomplete Specialisation; etc

    That will take ten years or so. And, as evidenced, good, considered advice is something that your dismiss immediately, you want to do things your way. In the meantime, as evidenced, you will continue with your Straw Man questions. Please do the
    following at minimum:

    1. Read the Transact-SQL Users Guide
    ____ at least ch 20 Transactions: Maintaining Data Consistency and Recovery

    2. Then read my guide to the Lock Manager
    ____ https://www.softwaregems.com.au/Documents/Article/Sybase%20Lock%20Manager/Sybase%20Lock%20Manager.pdf
    All my Sybase docs are condensed, intended for Sybase DBAs. I have just updated it, and added a bit of detail, imp[roved the clarity, so as to be relevant for novices.

    Remember, this is a serious Lock Manager, not comparable to your 2PL filth, which has to be asserted because you guys position commercial SQL Platform Lock Managers as your "2PL" filth, and insist that we have your insane problems. It is so mature and
    secure, so brilliant in architecture, that it has not changed since 1984. Extended, yes (eg. to handle new Lock Types to support SAP files, eg. add row locks; etc), but changed, no. So read these docs with a fresh mind, to not take your academic
    baggage with you.

    Cheers
    Derek

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Nicola@21:1/5 to Derek Ignatius Asirvadem on Sun Aug 8 13:51:59 2021
    On 2021-08-06, Derek Ignatius Asirvadem <derek.asirvadem@gmail.com> wrote:
    1. Read the Transact-SQL Users Guide
    ____ at least ch 20 Transactions: Maintaining Data Consistency and Recovery

    2. Then read my guide to the Lock Manager
    ____ https://www.softwaregems.com.au/Documents/Article/Sybase%20Lock%20Manager/Sybase%20Lock%20Manager.pdf
    All my Sybase docs are condensed, intended for Sybase DBAs. I have
    just updated it, and added a bit of detail, imp[roved the clarity, so
    as to be relevant for novices.

    Remember, this is a serious Lock Manager, not comparable to your 2PL
    filth, which has to be asserted because you guys position commercial
    SQL Platform Lock Managers as your "2PL" filth, and insist that we
    have your insane problems. It is so mature and secure, so brilliant
    in architecture, that it has not changed since 1984. Extended, yes
    (eg. to handle new Lock Types to support SAP files, eg. add row locks;
    etc), but changed, no. So read these docs with a fresh mind, to not
    take your academic baggage with you.

    I have read a couple of documents (the T-SQL guide and the Locking and Concurrency Control manual). My takeaways:

    - yes, it is a serious lock manager (I did not expect anything less from
    a high-end commercial product).

    - I did not find any concept that you would not find in a database
    systems' textbook (and no, the Alice's book is not such a textbook).

    - Call it what you like, but ASE/Sybase uses what is known as "rigorous
    2PL" to implement repeatable read and serializable:

    https://help.sap.com/viewer/a08646e0736e4b4b968705079db4c5f5/16.0.3.7/en-US/a8ea3fd4bc2b1014b6569e800f6bba42.html.

    "Applying exclusive locks [...] until the end of the transaction.
    Applying shared locks [...] until the end of the transaction".
    Textbook definition of rigorous 2PL.

    - It uses index-locking to prevent phantoms. Again, no surprise and
    pretty much standard textbook material.

    - There is a section dealing exactly with the question I have posed:
    "Locking for Select Queries at Isolation Level 1"

    https://help.sap.com/viewer/a08646e0736e4b4b968705079db4c5f5/16.0.3.7/en-US/a8eb04a3bc2b1014bef8884d8400b0ab.html

    Btw, with a mention of how that affects joins. That, plus this (which
    is about SQL Server and has some inaccuracies, but overall I think it
    is relevant):

    https://sqlperformance.com/2014/04/t-sql-queries/the-read-committed-isolation-level

    makes me conclude that in general you do not have statement-level
    consistency at read committed in SQL Server or ASE.

    ASE is a fine implementation (*), based on concepts that have been very
    well known in the academic community for a long time (not to say that
    they are obsolete! On the contrary!). What's not in the textbooks is the specific implementation details and system-dependent guidelines that
    a manual is expected to provide. Granted, the devil's in the details.
    But good graduate students would have no problems grasping such details
    (or those of any other system), capitalizing on their academic baggage.

    Nicola

    (*) Known to the academics. E.g., some time in the '90s, Sybase was used
    for lab exercises at Stanford.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Derek Ignatius Asirvadem@21:1/5 to All on Tue Aug 10 02:10:58 2021
    Nicola

    On Sunday, 8 August 2021 at 23:52:04 UTC+10, Nicola wrote:

    In order to reduce the lenght of the answer, which yet again has to be an explanation for you, please read this newspaper article. Explain in one or two sentences, what it the most important item that you (as a teaching professor) can glean from the
    article. In case it needs to be said, it is not a trick question, it will indicate to me just how much I have to explain.

    __ https://www.dailymail.co.uk/tvshowbiz/article-9876165/Naked-Afraid-viewers-spot-man-rifle-protecting-contestants-Africa.html

    Cheers
    Derek

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Nicola@21:1/5 to Derek Ignatius Asirvadem on Tue Aug 10 20:14:05 2021
    On 2021-08-10, Derek Ignatius Asirvadem <derek.asirvadem@gmail.com> wrote:
    Nicola

    On Sunday, 8 August 2021 at 23:52:04 UTC+10, Nicola wrote:

    In order to reduce the lenght of the answer, which yet again has to be
    an explanation for you, please read this newspaper article. Explain
    in one or two sentences, what it the most important item that you (as
    a teaching professor) can glean from the article.

    To me that stuff reads as fake as the fake it claims to depict.

    Nicola

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Derek Ignatius Asirvadem@21:1/5 to All on Tue Aug 10 16:12:45 2021
    Nicola

    On Wednesday, 11 August 2021 at 06:14:10 UTC+10, Nicola wrote:
    On 2021-08-10, Derek Ignatius Asirvadem wrote:
    Nicola

    On Sunday, 8 August 2021 at 23:52:04 UTC+10, Nicola wrote:

    In order to reduce the lenght of the answer, which yet again has to be
    an explanation for you, please read this newspaper article. Explain
    in one or two sentences, what it the most important item that you (as
    a teaching professor) can glean from the article.

    To me that stuff reads as fake as the fake it claims to depict.

    Yes, of course the tv show is fake.
    Yes, of course the concept is fake (Big Brother, "progressed" 15 years).
    That is obvious.

    That aside, did you glean anything of value from the article ?

    Cheers
    Derek

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Derek Ignatius Asirvadem@21:1/5 to All on Tue Aug 10 16:19:08 2021
    Nicola

    On Wednesday, 11 August 2021 at 06:14:10 UTC+10, Nicola wrote:
    On 2021-08-10, Derek Ignatius Asirvadem wrote:
    On Sunday, 8 August 2021 at 23:52:04 UTC+10, Nicola wrote:

    In order to reduce the length of the answer, which yet again has to be
    an explanation for you, please read this newspaper article. Explain
    in one or two sentences, what it the most important item that you (as
    a teaching professor) can glean from the article.

    Another simple question, clarifying only, in order to reduce my labours.

    Given your detailed question, AND the example you have cited, at what point in time, do you suggest that the COUNT() would be correct ? I am not asking for a long answer here, just clarifying you query. A few words would be enough.

    Cheers
    Derek

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Nicola@21:1/5 to Derek Ignatius Asirvadem on Wed Aug 11 08:45:27 2021
    On 2021-08-10, Derek Ignatius Asirvadem <derek.asirvadem@gmail.com> wrote:
    Nicola

    On Wednesday, 11 August 2021 at 06:14:10 UTC+10, Nicola wrote:
    On 2021-08-10, Derek Ignatius Asirvadem wrote:
    Nicola

    On Sunday, 8 August 2021 at 23:52:04 UTC+10, Nicola wrote:

    In order to reduce the lenght of the answer, which yet again has to be
    an explanation for you, please read this newspaper article. Explain
    in one or two sentences, what it the most important item that you (as
    a teaching professor) can glean from the article.

    To me that stuff reads as fake as the fake it claims to depict.

    Yes, of course the tv show is fake.
    Yes, of course the concept is fake (Big Brother, "progressed" 15 years).
    That is obvious.

    That aside, did you glean anything of value from the article ?

    No.

    Nicola

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Nicola@21:1/5 to Derek Ignatius Asirvadem on Wed Aug 11 09:14:57 2021
    On 2021-08-10, Derek Ignatius Asirvadem <derek.asirvadem@gmail.com> wrote:
    Nicola

    On Wednesday, 11 August 2021 at 06:14:10 UTC+10, Nicola wrote:
    On 2021-08-10, Derek Ignatius Asirvadem wrote:
    On Sunday, 8 August 2021 at 23:52:04 UTC+10, Nicola wrote:

    In order to reduce the length of the answer, which yet again has to be
    an explanation for you, please read this newspaper article. Explain
    in one or two sentences, what it the most important item that you (as
    a teaching professor) can glean from the article.

    Another simple question, clarifying only, in order to reduce my labours.

    Given your detailed question, AND the example you have cited, at what
    point in time, do you suggest that the COUNT() would be correct
    ? I am not asking for a long answer here, just clarifying you query.
    A few words would be enough.

    Count() would return the correct result if and only if the returned
    value is among the values that some serial execution of the same set of committed transactions would have returned.

    If transaction T1 is scanning a table to count its rows, and
    concurrently transaction T2 removes one row and adds two, the only
    values T1 should be able to compute are N (the number of rows in the
    table before the T1 and T2 starts executing) and N+1. That is because
    there are two possible serial executions:

    - T1;T2, in which case T1 would count N rows;
    - T2;T1, in which case T2 would count N+1 rows.

    I wouldn't talk about some "point in time when count() is correct".
    Logically, the count is (should be) an atomic (so, logically
    instantaneous) operation, so whenever T1 commits, that's when the count
    becomes visible, and its result should be correct at that point.

    Read committed permits an execution in which:

    1. T1 starts scanning the table, counting the row that T2 will delete;
    2. T2 executes and commits;
    3. T1 keeps scanning the table, now counting the rows that T2 has added.

    Then, T1 would return N+2, where the table never had N+2 records.

    Nicola

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Derek Ignatius Asirvadem@21:1/5 to You on Wed Aug 11 06:43:02 2021
    Nicola

    On Wednesday, 11 August 2021 at 19:14:58 UTC+10, Nicola wrote:
    On 2021-08-10, Derek Ignatius Asirvadem wrote:

    On Wednesday, 11 August 2021 at 06:14:10 UTC+10, Nicola wrote:
    On 2021-08-10, Derek Ignatius Asirvadem wrote:
    On Sunday, 8 August 2021 at 23:52:04 UTC+10, Nicola wrote:

    In order to reduce the length of the answer, which yet again has to be >> > an explanation for you, please read this newspaper article. Explain
    in one or two sentences, what it the most important item that you (as >> > a teaching professor) can glean from the article.

    Another simple question, clarifying only, in order to reduce my labours.

    Given your detailed question, AND the example you have cited, at what point in time, do you suggest that the COUNT() would be correct
    ? I am not asking for a long answer here, just clarifying you query.
    A few words would be enough.

    If transaction T1 is scanning a table to count its rows, and
    concurrently transaction T2 removes one row and adds two, the only
    values T1 should be able to compute are N (the number of rows in the
    table before the T1 and T2 starts executing) and N+1. That is because
    there are two possible serial executions:

    False. We are not serialised.

    ----

    I wouldn't talk about some "point in time when count() is correct".

    Well, you are implying it. And the drooling imbecile that you cite (science doesn’t need citations; fantasy does) makes it quite explicit. You can’t have it both ways.

    We are discussing READ COMMITTED, therefore T1 is definitely not a Transaction. Your naming it as such will confuse you. By the Grace of God, your fraudulent use of technical terms does not confuse me. This naming of non-transactions as “
    transactions” is a particular fixation of yours.

    I will continue the exchange on the basis of the scenario you have described, which is [S1] executing a COUNT, on an online shared database, and [T2] inserting1 and deleting 2 rows in the same table, concurrently, meaning that [T2] happens at a point in
    time that is after the [S1] first read and before the [S1] last read.

    Note, that if [T1] was a Transaction, then it would be SERIALIZABLE, and the desperately fantasised “problem” would not occur.

    Note, in Sybase; DB2; MS, you can alternately NOT open a Transaction, but instead, SELECT ... AT ISOLATION REPEATABLE READ, and your dearly beloved fantasy of a “problem” would not occur. Which of course, the freeware herds cannot.

    ----

    Logically, the count is (should be) an atomic (so, logically
    instantaneous) operation,

    On which planet or multiverse or pubertal fantasy does that happen ? Rhetorical. Don’t answer that. Please.

    Get real. That is an idiotic proposition. In reality, there is no such thing. And please, we do not need to hear about what your perception of “logic” is.
    _ in the real world, SQL and ACID, count is not atomic or “atomic”. Count is count.
    ___ if you want atomic, you have to open a Transaction
    ___ you have not opened a Transaction
    ___ therefore, in the real world, your proposition is stupid, fantasy, in contradiction of the real world
    _ in the real world, nothing is instantaneous.
    ___ reading a large table is definitely not instantaneous
    ___ (I accept, that in the asylum, the knuckle-dragging freaks fantasise, that the girls whom they repulse desire them; that the non-instantaneous is “instantaneous”; that the moon is made of cream cheese; etc. They are legally said to be not
    responsible, because they cannot handle reality.)
    ___ you cannot transform something that is physically non-instantaneous into “instantaneous”, with or without a note from your mother, with or without good drugs or happy gas
    ___ (you can, if and only if you are in the asylum, and if and only if you have taken your medication)
    ___ it is not “logically instantaneous”, the proposition is logically absurd, because it is in denial (schizophrenic) of reality, that AS DESCRIBED BY YOU, the table is in an online shared database, AND it is being changed

    ----

    so whenever T1 commits, that's when the count
    becomes visible, and its result should be correct at that point.

    1.
    Corrected as defined above:
    so whenever [S1] commits, that's when the count
    becomes visible, and its result should be correct at that point.

    Corrected further:
    Since we are discussing READ COMMITTED, and [S1] is not a Transaction, it cannot COMMIT (you can, but it does nothing, it only satisfies your fixation on your fantasy).

    REPEATING

    Note, that if [T1] was a Transaction, then it would be SERIALIZABLE, and the desperately fantasised “problem” would not occur.

    Note, in Sybase; DB2; MS, you can alternately NOT open a Transaction, but instead, SELECT ... AT ISOLATION REPEATABLE READ, and your dearly beloved fantasy of a “problem” would not occur. Which of course, the freeware herds cannot.
    <<<<<

    2.
    There you go, stating a point in time, while rejecting the notion of a point in time.
    You said:
    I wouldn't talk about some "point in time when count() is correct".
    Now you are saying:
    its result should be correct at that point.

    Look, I am happy to help, but I really do not have the qualifications that are required for the kind of help that you need.

    This is a public newsgroup. It might be a good idea to stay away from computers. You will be so much more successful at running a pig farm, and so much happier too.

    ----

    Read committed permits an execution in which:

    1. T1 starts scanning the table, counting the row that T2 will delete;
    Corrected:
    1. [S1] starts scanning the table, counting the row that T2 will delete;

    a.
    You are confusing the present time (while rejecting a point in time !!!) with some event, at a specific point in time, which point in time is before the point in time that [S1] completes.

    b.
    There is no reason (Logic) why [S1] should know about or care about what [T1] is doing.

    c. Corrected further:
    1. [S1] starts scanning the table, counting the rows, oblivious to other activity, by virtue that it declaratively runs at READ COMMITTED.

    REPEATING

    Note, that if [T1] was a Transaction, then it would be SERIALIZABLE, and the desperately fantasised “problem” would not occur.

    Note, in Sybase; DB2; MS, you can alternately NOT open a Transaction, but instead, SELECT ... AT ISOLATION REPEATABLE READ, and your dearly beloved fantasy of a “problem” would not occur. Which of course, the freeware herds cannot.
    <<<<<

    ----

    2. T2 executes and commits;
    3. T1 keeps scanning the table, now counting the rows that T2 has added.
    Corrected:
    3. [S1] keeps scanning the table, without regard to other activity

    Which somehow is “incorrect” to you. Only in some sick fantasy.

    Then, T1 would return N+2, where the table never had N+2 records.

    Which point in time is that “never”, given your rejection of a point in time ?

    By the time you read the result set (one row with the count), the table count would have changed. By the time you execute the SELECT again, the table count would have changed yet again.

    I would say that the point at which “never” occurred, never occurred, but you are incapable of understanding that (not the English, your English is great, but the meaning).

    Corrected
    Then, [S1] would return N+2

    So freaking what. It is a table COUNT at READ COMMITTED, in an online shared database, on a table that is known to have concurrent activity.

    ----

    Count() would return the correct result if and only if the returned
    value is among the values that some serial execution of the same set of committed transactions would have returned.

    I reject that as a definition, Sybase; DB2; MS rejects that as well.
    Why ?
    Because we do not need an idiotic definition from the asylum.
    Because we already have a definition in (a) SQL, and (b) ACID, and have had, for FORTY YEARS.
    Wherein COUNT at READ COMMITTED works perfectly.

    Before the freaks in the asylum concocted their fantasies, according to the only thing they can understand, which is single-threaded (“serialised”) operation in the herd of bloated, flatulent programs (“server”), executing on a “snapshot” of
    the database, which is by definition a fantasy, that never existed.

    - T1;T2, in which case T1 would count N rows;
    - T2;T1, in which case T2 would count N+1 rows.
    Corrected:
    - [S1];[T2], in which case [S1] would count N rows;
    - [T2];[S1], in which case [T2] would count N+1 rows.

    Nonsense.

    You contradict yourself.

    You said S1 and T2 ran concurrently. Now you are saying that according to your fantasy (not the reality of S1 & T2 running concurrently, which you said you understood), about how a sow excretes its poop while you are under it, you can only understand
    single-threaded execution (“serialised” !!!) with Statements that are not atoms by definition, magically transformed into “atoms”.

    You can’t make this stuff up, you have to eat pig poop.

    Corrected further:
    In the real world, that is SQL; ACID, and concurrent processes (which you seem to understand from your fantasy in the left hemisphere, but deny in the fantasy in your right hemisphere),

    - [S1] and [T2] run concurrently
    - [S1] is not a Transaction, and thus runs at isolation READ COMMITTED
    - [T2] is a Transaction, and thus runs at isolation SERIALIZABLE
    - at some point in time, before [S1] completes, [T2] completes
    - [S1] produces a COUNT at READ COMMITTED
    - because [S1] is not isolated from other activity, by declaration, the COUNT produced by [S1] is not isolated from other activity

    Therefore, only certified and straitjacketed morons would attempt to relate the unrelated; to isolate the not-isolated
    - because it can’t be done in reality,
    - but can be done in the imagination, which is made easier by the heavy obsessive usage, due to isolation from reality.

    There are quite a few pig farms within 100km of Udine, that are available at very reasonable prices.

    ----

    On Sunday, 8 August 2021 at 23:52:04 UTC+10, Nicola wrote:
    On 2021-08-06, Derek Ignatius Asirvadem wrote:

    Btw, with a mention of how that affects joins. That, plus this (which
    is about SQL Server and has some inaccuracies, but overall I think it
    is relevant):

    https://sqlperformance.com/2014/04/t-sql-queries/the-read-committed-isolation-level

    makes me conclude that in general you do not have statement-level consistency at read committed in SQL Server or ASE.

    That point is now proved false, hysterically stupid, it is now closed.

    As I have proved, your cranium is infected with porcine excreta, and your left hemisphere is at war with your right hemisphere. You are in danger of a stroke.

    Try eating rice, it has good binding properties, it will reduce the diarrhoea. Get some sleep in a dry bed, the warm furry sows are not good for you.

    Do not code in SQL in any way, shape or form. As per the various “problems’ you raise, you are right, typical of academics, you have really really really good “reasons” why SQL and ACID do not work, and thus you have a good “excuse” for
    never actually writing code. Excellent. Just fantasise.

    ----

    But good graduate students would have no problems grasping such details
    (or those of any other system), capitalizing on their academic baggage.

    Yes, you have proved that quite well, yet again, that it is in fact indoctrination into schizophrenia, passed off as “education”. Thank you.

    They have been nicely indoctrinated into erecting fantasies about why what they were hired to do, cannot be done, and never actually producing anything. As is the common experience in the real world.

    ----

    Re your citation friend Paul White. First, yes of course, he is in the same filthy pig sty as you academics, because he has succumbed to your heavily marketed pig poop, and he erects the same fantasies, and confuses fantasy for reality. So again, he is
    labouring, slavishly, on a fantasy treated as real. The imbecile is so caught up in fantasy, he too, cannot remember the difference between READ COMMITTED and REPEATABLE READ, and drunk on the Kool-Aid, he mixes them up.

    But there is an important second point: anyone who has even pedestrian knowledge of SQL on a genuine SQL Platform, would know that [separate to the count changing constantly because the table is active], that that is not a “problem”, that that is not
    the way to obtain a COUNT on a large table. He proves by his own actions that he is not the performance expert that he declares himself to be, that he is in fact a performance dummy.

    ----

    On Sunday, 8 August 2021 at 23:52:04 UTC+10, Nicola wrote:

    I will respond to the rest of that post later.

    Cheers
    Derek

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Derek Ignatius Asirvadem@21:1/5 to All on Wed Aug 11 19:37:47 2021
    Nicola

    On Wednesday, 11 August 2021 at 18:45:32 UTC+10, Nicola wrote:
    On 2021-08-10, Derek Ignatius Asirvadem wrote:
    On Wednesday, 11 August 2021 at 06:14:10 UTC+10, Nicola wrote:
    On 2021-08-10, Derek Ignatius Asirvadem wrote:
    Nicola

    On Sunday, 8 August 2021 at 23:52:04 UTC+10, Nicola wrote:

    In order to reduce the length of the answer, which yet again has to be >> > an explanation for you, please read this newspaper article. Explain
    in one or two sentences, what is the most important item that you (as >> > a teaching professor) can glean from the article.

    To me that stuff reads as fake as the fake it claims to depict.

    Yes, of course the tv show is fake.
    Yes, of course the concept is fake (Big Brother, "progressed" 15 years). That is obvious.

    That aside, did you glean anything of value from the article ?

    No.

    __ https://www.dailymail.co.uk/tvshowbiz/article-9876165/Naked-Afraid-viewers-spot-man-rifle-protecting-contestants-Africa.html

    The main thing to glean from this article is this. Look at the comments. From the evidence, there exists people who actually think that the obviously fake “reality” shows, on a machine that reproduces coloured pixels on a screen, from a film that
    captures paid actors doing some activity, is “real”. And they are heart-broken to have their fantasy punctured.

    Why is that ? Why is it that humans who are capable enough to write comments in English on the twitter-verse (for twits), have the stupefying thought that fantasy is “real”.

    Because at this time, we have had decades (centuries, if you include the sabotaged philosophy and ape-man “science”) of people in authority erecting fantasies, and then treating them as real. This includes academics, who make a “science” out of
    fantasising. This includes all university students who are taught the art of fantasising, as “science”, by their professors.

    A few years ago, I went back to uni and did two semesters, in order to determine for myself why our new hires were schizophrenic, why they give really really really good reasons for NOT doing the job they were hired to do, that they said that were very
    good at. The evidence is, they teach schizophrenic thinking as “normal”, as an art, as “science”.

    Science is about knowledge, knowledge of reality.

    Fantasy occurs in the imagination, not in reality. Fantasy is anti-science. But they have made a “science”out of it.

    What we are dealing with here is the COLLECTIVE fantasy. That is, “taught” and maintained and believed by a bunch of asylum dwellers, and therefore they re-inforce each other, and therefore the fantasy is made very very very “real”. Same as a
    male fantasising that he is female, which is in and of itself evidence of insanity, but made acceptable because many degenerates have the same fantasy, a COLLECTIVE fantasy. And now weaponised to make war on humans.

    ----

    Here, you are the academic, pushing a ridiculous fantasy, as “science”, citing idiotic circumstances in the tiny corners of the Bell curve, that do not apply (or apply only to idiots who are ignorant of the commands that eliminate the ”problem”).

    The Stonebraker religion (make no mistake, it is a de facto religion, faith-based, not science-based) is that in a multiverse somewhere, there is a special place for special-needs people, where:
    1. everyone recites a mantra “readers do not block writers, writers do not block readers”, prayerfully, without ceasing
    2. denies the reality that the database is an online shared resource that is changing all the time due to activity of hundreds of users
    __ (that therefore requires concurrency control in order to provide integrity) 3. erects a fantasy that the database is a ”snapshot”
    __ (which is physically impossible, because as Daniel has pointed out, by the time the reader has passed the first few pages, those pages are out-of-date, obsolete, and no longer in the snapshot that the snapshot is supposed to be)
    ____ SAME AS YOUR POINT, RE YOUR PATHETIC CITED EXAMPLE
    ____ OF COUNT NOT PERFORMING AS THE FANTASY “COUNT”
    ____ YOU CAN SEE THAT IT IS “TRUE” FOR THE FANTASY
    ____ BUT YOU CAN’T SEE THAT IT IS TRUE FOR REALITY
    ____ IT IS CULTIVATED SCHIZOPHRENIA
    4. taken at a point in time
    __ (which you /now/ say is not possible, “never happened”, but evidently you cannot see that it is a general rule about the ”snapshot”).
    5. Which of course is a grand lie, because they themselves have to implement a primitive 2PL (not the “2PL” which is used to attack 0PL), in order to control concurrency which they say is controlled in their mythological “MVCC”, but it not. that
    breaks their own mantra, readers block writers sometimes, writers block readers sometimes, and they have to deal with it.

    Anyone with half a brain would realise that if they implemented a proper Lock Manager, they could eliminate the massive burden of making the fantasy “real”, the storage of masses of version. Which the commercial SQL Platforms have done for FORTY
    YEARS. But the evidence is, they do not have even half a brain, instead they repeat their mantra, prayerfully, without ceasing.

    By the way, we do not have “read locks” and “write locks”, the notion is too primitive, it exists only in primitive 2PL that is used to make MV-non-CC work, even just a little. Again, not comparable to a real Lock Manager.

    ----

    The only true snapshot is a single frame, as in a hardcopy photograph, or a JPEG file. “See, that was the moment in time that my wife and I sipped a cocktail on the beach in Bali.” In database terms, the only true snapshot is a single page.

    Take the production of a movie. They carefully make sure that the frames are NOT related; that they are NOT a sequence (in order to build the plot), they are quite aware that it is a roll of film, that they fabricate, that it is not reality (it is a
    story, remember). No problem, everyone knows that when they go to the cinema, they have to “suspend belief” and entertain the movie as “real”, that is what they are paying for.

    In the real world, there is no snapshot of more than one frame.

    But the lunatic asylum treats the entire roll of film (moving picture) as a “snapshot”. Yes, it exists as a fabrication, copying a roll of film may well be an “atomic” task. No, the first frame is unrelated to the 42nd frame, etc. No, the
    content of the film does not exist in reality (it was produced according to a script, employing paid actors).

    Applying that snapshot notion to a database that does exist in reality is pure insanity, it is not a snapshot but a “snapshot”. The first few pages may be true, but by the time the reading mechanism gets to the next few pages, they are out-of-synch
    with the first few, and totally unrelated when it gets to the last few pages.

    Think about this, a database backup in not the “snapshot”, it cannot be, it is a real series of single frames (pages). It is not taken at a “point in time”, because no such thing exists. Each frame (page) is taken at a different point in time.
    They are quite aware of that when it pertains to the database backup, but they hysterically deny that when the concoct their “snapshot” at a “point in time”.

    You do not get it, that that “problem” you propose that happens at READ COMMITTED only because you are too ignorant to execute it at REPEATABLE READ, happens all the time in your fantasy “snapshot” of the “database” at “point in time”,
    that never happened. But you insist that your fantasy “snapshot” (which never actually happens when you make-real your fantasy as in a real database backup) should happen in your re-defined notion of reality.

    You can’t make this stuff up.

    ----

    Oh, yes the you can, and you do, and you teach it as “education”. It is, as evidenced, indoctrination into insanity, in particular, schizophrenia.

    As evidenced in the newspaper article, you actively contribute to the common problem of COLLECTIVE insanity, of people thinking that the COLLECTIVE fantasy is somehow “real”. And they are shocked when the fantasy is punctured.

    Whereas you double down, and try to (a) re-inforce the unreal fantasy, and (b) impose the idiotic problems that only happen in the fantasy, onto reality. Further (c) you still can’t understand online shared access (let alone concurrency control or
    multi-threaded architecture), you have to “serialise” (single-thread) your collection of frames (pages), in order to get some sense out of it, so (d) you impose that hysterically stupid “solution” for the “problem” that we do not have, onto
    us.

    When you were a child, did you not hear the children’s’ story, replete with a nursery rhyme, about the three men in pointed hats that stood on a bridge in a small village, looked down at the river, and claimed that the moon had fallen into the river,
    and life on earth was about to end ? The first verse was funny, even silly. But the second verse, when the men said they could extract the moon from the river and prevent the disaster, if only the villagers paid them some money, identified the evil.

    As with all children’s fables, it is not a fairy tale, it is a teaching story, with deep meaning.

    Cheers
    Derek

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Derek Ignatius Asirvadem@21:1/5 to All on Wed Aug 11 23:08:26 2021
    Nicola

    On Sunday, 8 August 2021 at 23:52:04 UTC+10, Nicola wrote:

    Dealing with the rest of that post.

    On 2021-08-06, Derek Ignatius Asirvadem wrote:

    1. Read the Transact-SQL Users Guide
    ____ at least ch 20 Transactions: Maintaining Data Consistency and Recovery

    2. Then read my guide to the Lock Manager
    ____ https://www.softwaregems.com.au/Documents/Article/Sybase%20Lock%20Manager/Sybase%20Lock%20Manager.pdf
    All my Sybase docs are condensed, intended for Sybase DBAs. I have
    just updated it, and added a bit of detail, imp[roved the clarity, so
    as to be relevant for novices.

    Remember, this is a serious Lock Manager, not comparable to your 2PL filth, which has to be asserted because you guys position commercial
    SQL Platform Lock Managers as your "2PL" filth, and insist that we
    have your insane problems. It is so mature and secure, so brilliant
    in architecture, that it has not changed since 1984. Extended, yes
    (eg. to handle new Lock Types to support SAP files, eg. add row locks; etc), but changed, no. So read these docs with a fresh mind, to not
    take your academic baggage with you.

    I have read a couple of documents (the T-SQL guide and the Locking and Concurrency Control manual).

    You are best advised to read the T-SQL UG *FIRST*, because it is an explanation, the P&T series is reference, not explanation, so read that *SECOND*, after you understand the explanation. Otherwise you will continue finding “faults” and “problems
    where there are none, which is your documented occupation.

    My takeaways:

    - yes, it is a serious lock manager (I did not expect anything less from
    a high-end commercial product).

    - I did not find any concept that you would not find in a database
    systems' textbook (and no, the Alice's book is not such a textbook).

    You dishonestly fail to mention the fact that the textbooks were written AFTER Britton-Lee, AFTER Sybase. Your point is null.

    The other ramshackle book that you linked is no better, no worse, than the Alice book. They fail totally in teaching science, they succeed well in teaching how to suck a pigs rectum, which is professed to be “science”. Every link you propose,
    presented as “knowledge”, has proved to to be sows milk on top of a fragment of science.

    - Call it what you like, but ASE/Sybase uses what is known as "rigorous
    2PL" to implement repeatable read and serializable:

    https://help.sap.com/viewer/a08646e0736e4b4b968705079db4c5f5/16.0.3.7/en-US/a8ea3fd4bc2b1014b6569e800f6bba42.html.

    There is no mention of a “2PL” or “rigorous 2PL” in that.

    I don’t call it “2PL”, I detest calling something what it is not, that is fraudulent, anti-science. The term is something the academics created, it sort of explains their two phases (they do have a hexpansion phase and a contradiction phase).
    Calling their filth, as implemented to provide some concurrency control in the MV-non-CC herd of programs, 2PL, is correct.

    Calling the Sybase; DB2; MS, Lock Manger “2PL” is false. It will prevent you from finding out what a real Lock Manager is. Further, as explained in detail earlier in this thread, and again in the Transaction Sanity doc, it is a Straw Man, erected
    by anti-scientists, to demean and discredit something they (as evidenced) cannot comprehend.

    The point I made, which stands unaffected, is that it is idiotic for anyone to call something what it is not. Repeating, it is the anti-science academics that say that commercial SQL Platforms are “2PL”
    ____ WHICH IS FALSE
    and as such, as a false “2PL”, that we somehow have the same “problems” that their idiotic 2PL lock managers have. It is a Straw Man.

    You too have done that, just look at your questions. You are still doing it. You are the one doing this “calling it what you like” stupidity. You can stop making a fool of yourself any time you like.

    If you genuinely understand what you are saying NOW, you would realise that your questions pertain to the poor implementation, your 2PL, and not to the real 1PL lock managers.

    - Call it what you like, but ASE/Sybase uses what is known as "rigorous
    2PL" to implement repeatable read and serializable:

    Go on, name the two phases in the Sybase Lock Manager.

    If you hide behind “what is known as”, then take responsibility for the “what is known as”, because it is you asylum screechers that have written the “literature” such that “what is known as” is what is known as.

    I just do not play your stupid game of calling things what they are not.

    "Applying exclusive locks [...] until the end of the transaction.
    Applying shared locks [...] until the end of the transaction".
    Textbook definition of rigorous 2PL.

    Except that you are fraudulent in applying that to a non-2PL server.
    And that the textbook was written after Sybase.

    What you have is a fat hairy sow, with a penchant for academics. Sybase is a horse. You say that a pig is the same as a horse. I say, pig poop. You say a macho hairy boar can do anything a horse can do, especially when it is rigorous. I say,
    fiddlesticks, fresh warm pig poop, straight from the sow. More like rigor mortis.

    - It uses index-locking to prevent phantoms. Again, no surprise and
    pretty much standard textbook material.

    Except for the fact that Sybase came first, and the texbooks came second, therefore the inference is false.

    - There is a section dealing exactly with the question I have posed: "Locking for Select Queries at Isolation Level 1"

    https://help.sap.com/viewer/a08646e0736e4b4b968705079db4c5f5/16.0.3.7/en-US/a8eb04a3bc2b1014bef8884d8400b0ab.html

    I don’t see how that has anything to do with your questions, which were your particular speculations about how low level operations could be, should be, wannabe, please be, problematic. The usual insanity of imposing the problems of the insane, onto
    the sane. It is such an obsession with you, that even after it is pointed out, you cannot stop.

    I tried to explain the operation of the Sybase 1PL Lock Manager, and failed. Daniel did a better job, and it appeared that you accepted it. Probably not. Now you have found a relevant page is the manual. Excellent.

    The section is simply a definition re how a particular sequence of commands works. Not about “exactly your question”.

    Btw, with a mention of how that affects joins.

    Yes, of course. So what. Even our joins are superior to the way you guys speculate about joins forty years after we had them.

    The Sybase manuals are not as good as they were before the acquisition by SAP. If I were to give that definition, I would include the fact that it intent-locks UP the [SELECTed] tree as well, ie. the PK page/row in the parent table that is referenced by
    the FK in the child table which is named in the SELECT command. But hey, that is only a reference manual. And you would not understand it anyway, because it is relevant only to Relational databases.

    Do you know wtf the difference is, between APL and DPL/DRL lock schemes (tables). Sure, you can state the words, but do you know the RELEVANCE. No. Do you know why there is a difference at the level described in that section ? No. But somehow, you
    say, it applies to your question, which was before you read that manual.

    That, plus this (which
    is about SQL Server and has some inaccuracies, but overall I think it
    is relevant):

    https://sqlperformance.com/2014/04/t-sql-queries/the-read-committed-isolation-level

    makes me conclude that in general you do not have statement-level consistency at read committed in SQL Server or ASE.

    God help me.

    Destroyed, in my previous post. In sum:

    1. It is a sign of desperation, when an academic cites a non-academic blog post. Usually it is the other way around.
    2. It is stupid to expect a COUNT on a large active table in an online shared database, to be accurate in reference to any fixed notion, particularly when the fixed notion does not exist, has never existed. Humans who have not been indoctrinated into
    schizophrenia are not that stupid.
    3. It is Oedipus stupid to expect such a COUNT at READ COMMITTED to be executed as REPEATABLE READ, when the manual clearly states that you can obtain such a COUNT at REPEATABLE READ or SERIALIZABLE.
    3. Last but not least, anyone with actual experience on a genuine SQL Platform can obtain such a meaningless but accurate count without having to plod through each and every page in the table, SQL-Standard-wise. A true instantaneous COUNT, and a true
    point in time.

    ----

    ASE is a fine implementation (*), based on concepts that have been very
    well known in the academic community for a long time

    Lies, more filthy lies. “Based on” is false. The father is not based on the son.

    The historical evidenced facts are:
    ___ Britton-Lee & Sybase
    ___ Lock Manager with 66 lock types (at 15.7, even more in 16, without changing the Lock Manager)
    __ academia pushed the Stonefreaker MV-non-CC as “MVCC”. It never worked in Ingres, it has not worked in PigPoopGres. It never will. They added their 2PL on top on their MV-non-CC, to get it to work at all. It still doesn’t work.
    __ They only know their 2PL.
    __ Sybase, DB2, and MS do not have 2PL
    __ But they, and you here, falsely re-frame a Lock Manager as your hysterically stupid 2PL.

    Therefore “based on” is disgusting filth.

    You can call it what you like. You can reframe and redefine terms until the cows come home. Reality does not care what you call it, it is not affected by what you call it.

    (not to say that
    they are obsolete! On the contrary!). What's not in the textbooks is the specific implementation details and system-dependent guidelines that
    a manual is expected to provide. Granted, the devil's in the details.

    Which, as evidenced, is beyond the ken of those who write the textbooks and academic papers. They cannot even copy-paste, they have to deny the reality of forty years, and re-invent the wheel from scratch.

    Forty years, and counting.

    But good graduate students would have no problems grasping such details
    (or those of any other system), capitalizing on their academic baggage.

    Sure. Like when I give them a task to obtain a COUNT() from a table, and instead they give me an hysterical slew of “reasons” why COUNT() doesn’t count, or that there is no point in time that count is accurate, or that count must be accurate to a
    point in time that does not exist. I enter the few keystrokes required into their session, on their computer, without hitting RETURN, I ask them to watch the second hand on their wrist watch, and to call out the second they wish to have the COUNT for,
    and enter RETURN. Most hackademicks lose control of their bowels. On two occasions they quit overnight and did not even have the courtesy to have a resignation meeting in person. Another committed suicide a month later.

    Sure. It is only when the rubber hits the road, when they get a job in the real world, that their baggage is exposed for what it is, and those not totally indoctrinated get rid of it. Those attached to said baggage, have difficulty dealing with reality,
    that truth is simple, it is only falsity that is complex, they don’t last three months. They get very hurt when we laugh at their voluminous speculations of disaster instead of writing code.

    Sure. They have “no problems grasping such details”, but they are impotent in determining a resolution, they argue endlessly about the “grades” details. Meanwhile I give the capable developers who gratefully do not try to “grasp such details
    a Template, and say do this. And they do it. Hint: check out how Dan has progressed in his thread, vs how you argue endlessly, with utter futility, and you still cannot grasp the even the principles, while labouring over details.

    Make no mistake, this is a life-or-death struggle, that ends in death. Suicide is irrefutable evidence of mental illness. The problem these days is, now that mental illness is being “normalised”, now that schizophrenia is being taught at
    universities (your various arguments, eg. how a COUNT() could be sabotaged to fail ... and therefore it applies to ALL Statements), mental illness is not perceived for what it is, it goes untreated, and we find out after the person has killed themselves.

    I have a friend, 35yo and very intelligent on the IQ scale, hopelessly insane on the intelligence scale. PhD in AI. Three jobs in three years, and it is always the employers fault, never hers. Under tremendous pressure of her own making. I tried to
    help her because I was expert in a certain vertical in one of her jobs. But she was entrenched in RFS+”Ontology”+”Description Logics”, while begging for a real Relational database (NO ”Ontology”, NO ”Description Logics”). She has a 9yo
    son. Divorced. Hates men except when she wants sex, and then she turns into a siren. Her sister and I are the only ones who address her denial of reality (schizophrenia), who are trying to prevent the predictable.

    Make no mistake:
    __ Truth = Reality = life
    __ Falsity = Rejection of Reality = death

    __ Sanity = conforming the intellect to Reality
    __ Insanity = desperately try to conform reality to the mind, which after a lifetime of failure, ends in suicide.

    Academics foster death. It is evil.

    (*) Known to the academics. E.g., some time in the '90s, Sybase was used
    for lab exercises at Stanford.

    1. And notably not taught. Academic filth taught instead. Same as academics pushing ERD, never mentioning IDFE1X for FORTY YEARS.

    2. “Known to academics” is a general statement, because it implies academics generally, as such, it is a pitiful, bald-faced lie.

    3. The truth is, yes, it was at Stanford. No, it was squashed by the Stonebraker groupies at Berkeley, who were pushing their MV-non-CC barrow. These decisions are political, not scientific.

    4. If it had succeeded at all, they would have been using Sybase since then.

    5. Unfortunately they did not study the Sybase Lock Manager, or even copy-paste the manual. As evidenced, they remained vociferously ignorant∑ and erected a Straw Man by descriing it as their primitive 2PL.

    Cheers
    Derek

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Nicola@21:1/5 to Derek Ignatius Asirvadem on Thu Aug 12 08:52:17 2021
    On 2021-08-11, Derek Ignatius Asirvadem <derek.asirvadem@gmail.com> wrote:
    Given your detailed question, AND the example you have cited, at what
    point in time, do you suggest that the COUNT() would be correct
    ? I am not asking for a long answer here, just clarifying you query.
    A few words would be enough.

    If transaction T1 is scanning a table to count its rows, and
    concurrently transaction T2 removes one row and adds two, the only
    values T1 should be able to compute are N (the number of rows in the
    table before the T1 and T2 starts executing) and N+1. That is because
    there are two possible serial executions:

    False. We are not serialised.

    We are discussing READ COMMITTED,

    Ok, I have misunderstood your question. The above is a very informally
    stated definition of correctness of a schedule (i.e., serializability).

    So, if you ask at what point in time a result of a query run at READ
    COMMITTED is correct, the answer is: in general, never. Note that this
    answer doesn't rule out situations in which you can guarantee a correct
    result even at that level.

    1. [S1] starts scanning the table, counting the rows, oblivious to
    other activity, by virtue that it declaratively runs at READ
    COMMITTED.
    2. T2 executes and commits;
    3. [S1] keeps scanning the table, without regard to other activity

    Which somehow is “incorrect” to you.

    Yes, according to the definition of "correctness" (which you affirm to
    reject) as equivalence to a serial schedule.

    Sorry, what is the definition of "correctness" according to the
    Standards?

    Count() would return the correct result if and only if the returned
    value is among the values that some serial execution of the same set of
    committed transactions would have returned.

    I reject that as a definition, Sybase; DB2; MS rejects that as well.

    Then, again, please provide a definition of "correctness". Because you
    want to be confident that your queries produce "correct" results, don't
    you?

    Since anything can happen concurrently during the execution of a query
    at READ COMMITTED, how can you tell apart the result of a query
    returning an integer from

    select cast(rand() * 1000000) as int)

    ?

    Wherein COUNT at READ COMMITTED works perfectly.

    Ok if you are referring to other ways of counting. But if you mean that counting by scanning the table at READ COMMITTED works perfectly, please elaborate on what "works perfectly" means.

    But there is an important second point: anyone who has even pedestrian knowledge of SQL on a genuine SQL Platform, would know that [separate
    to the count changing constantly because the table is active], that
    that is not a “problem”, that that is not the way to obtain a COUNT on
    a large table.

    Sure. But it still illustrates the point, which is about the kind of
    issues you may run into when running queries at READ COMMITTED. It is
    not suggesting that you *should* run those queries at READ COMMITTED.
    Counting was not the best example; but you can replace the query with
    some other computation.

    Nicola

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Derek Ignatius Asirvadem@21:1/5 to I merely on Thu Aug 12 20:37:39 2021
    Nicola

    On Thursday, 12 August 2021 at 18:52:19 UTC+10, Nicola wrote:
    On 2021-08-11, Derek Ignatius Asirvadem wrote:
    Given your detailed question, AND the example you have cited, at what >> > point in time, do you suggest that the COUNT() would be correct
    ? I am not asking for a long answer here, just clarifying you query.
    A few words would be enough.

    If transaction T1 is scanning a table to count its rows, and
    concurrently transaction T2 removes one row and adds two, the only
    values T1 should be able to compute are N (the number of rows in the
    table before the T1 and T2 starts executing) and N+1. That is because
    there are two possible serial executions:

    False. We are not serialised.

    We are discussing READ COMMITTED,

    Ok, I have misunderstood your question.

    Um, I did not have a question. The question was yours. I was answering it. In your question, you raised some quaint notions, that we do not have [are not necessary in] the real world, that we have survived very nicely without, for forty years. I
    merely asked for clarification re one of those precious notions, which I needed, to qualify your question, in order to answer it..

    The above is a very informally
    stated definition of correctness of a schedule (i.e., serializability).

    Yet another precious notion that exists only in fantasy land, not in reality, that we have done without, for forty years. And please note, I am not asking for a definition of that particular insanity, loose or tight, dressed up in a tuxedo or a clown
    suit.

    So, if you ask at what point in time a result of a query run at READ COMMITTED is correct, the answer is: in general, never.

    Good (for you)

    And therein the notion of “correct” and “point in time”, were yours, not mine. It is all about your question, which is so loose an floppy, and contains three stupid notions, that I was trying to answer, in your context, without destroying the
    silly notions. Don’t put it back on me. This item did not start with me asking you what is correct, it started with you saying that something in the real world is NOT “correct”, according to your fantasy of “correct”.

    You are still not getting it. I have explained, in detail, how you are questioning reality, from an insane set of notions that exist only in fantasy (sure, collective fantasy, established and made “real” by hundreds of academic papers that engage in
    fantasy). Therefore very “real” to you. But to those of us who stand on the hard ground of reality, they remain the notions of drooling idiots in the asylum.

    Note that this
    answer doesn't rule out situations in which you can guarantee a correct result even at that level.

    1. [S1] starts scanning the table, counting the rows, oblivious to
    other activity, by virtue that it declaratively runs at READ
    COMMITTED.
    2. T2 executes and commits;
    3. [S1] keeps scanning the table, without regard to other activity

    Which somehow is “incorrect” to you.

    Yes, according to the definition of "correctness" (which you affirm to reject) as equivalence to a serial schedule.

    (I don’t understand what “affirm to reject” means, so my answer excludes that element. It sounds like each cancels the other.)

    No, no, no. The “incorrect” is in quotation marks, meaning that it is incorrect according to your quaint notion of “correct”, AND by inference, that it is not incorrect otherwise.

    So, [1][2][3] above is perfectly correct in the real world, where people are not in denial of the fact that the database is an online shared resource, that is constantly changing.

    It is only “incorrect” where the person denies the real world, and concocts a hysterical notion of “correct:” where in he can observe the real world as “incorrect”.

    Sorry, what is the definition of "correctness" according to the
    Standards?

    Again, the notion of “correct” is yours. We couldn’t care less about it.

    Again, same as the academics that propose that the /Relational Model/ is somehow lacking because it does not define database design or how to tie your shoelaces, it is stupid to expect the Standard (which defines only the standard) to define anything but
    the standard. But academics do that all the time, as you do here. It is no less stupid. Perhaps you are unaware that we put men on the moon in 1969, and did so with mainframes and 8-bit minicomputers, that we have had real, fully ACID compliant DBMS
    since the early 1960’s, long before SQL. When SQL was released by IBM, we did not need the SQL Standard to define what correct operation in a database server is, or how to count rows. We did not find the SQL Standard lacking because it failed to
    define how to tie our shoelaces using an UPDATE command.

    Again, as defined by the Mental Health Act, the insane cannot be responsible, so they impose the responsibility for their impotence, onto others.

    It is not the business or the responsibility of the Standard to define what is correct in a particular database server, especially when they did not define what a database server is.

    You are demonstrating SIX levels of INSANITY (stupid) here, which I destroy using Logic alone (science).
    __ First, you concoct a stupid notion for “correct” that does not exist in reality (insane act).
    __ Second, you apply it to reality and find reality “incorrect” (insane act). No one cares.
    __ Third, when it fails to impress humans, you can’t give a definition (the definitions you do give fail, because it does not reference the reality that it is applied to).
    __ Fourth, you can’t take responsibility for your own stupid notion (definition of insanity).
    __ Fifth, you try to impose that responsibility for definition of your stupid undefined notion onto anyone who does not accept your stupid undefined notion (insanity squared).
    __ Sixth, when that fails you say the Standard that does not define anything except the Standard, is somehow wrong for not defining something that is not in the Standard (ROTFLMAO insanity).

    I do not use the terms such as /insanity/ lightly. Nor do I make declarations without evidence: you always provide evidence to support my declarations.

    Hint: I can prove, with any good example of a reasonably complex query, and a stated set of circumstances, that the result obtained in Sybase is correct, AND that the result of the same query in Oracle is incorrect. But that gets into the operation of
    the server, and the expectation of the person writing the query. And the engagement itself changes that [prior understanding of correct] in the Oracle query writer’s min. If you are looking at my posts on TTM from eleven years ago, I did that three
    times, complete with examples and proofs, with people who were honestly trying to understand. (I did that dozens of times with Darwen and the slaves but due to their dishonesty, they abandoned the exercise so as to deprive me (science) of a resolution.)

    Hint: Most people who have experience on both can categorically state that MySQL operates correctly, and that PoopDePooGres does not. They do not need /correct/ defined for them.

    It is stupefying, idiotic, insane, to define “correct” as an abstraction without reference to reality, and then try to apply it to reality, but academics love abstraction with no relation to reality, it is the foundation for their fantasies. This is
    the core principle that caused the impotence of academics in this field for FIFTY years (no progress of the /Relational Model/, but hundreds of anti-Relational papers marketed as “Relational”). Such as your paper on Movie Titles, which was proved
    false in another thread.

    Normal humans are quite satisfied with the definition of /correct/ from their favourite dictionary. We take any abstraction away from that as either criminal, or insane, or both.

    It is the same for the lunatic notion of “serializsability” and “schedule” and their variants. In the real world, we are multi-threaded. “Serialisability” is only relevant for developers who are so stupid, they can only grasp single-
    threaded operation, and operation from a fantasy of a database “version” that was magically taken at a non-existent “point in time”, frozen, like their brains, that is offline; private; personal, that they can suck on, that does not move and
    shift to interfere with the desperate need for a long suck.

    Yes, of course, we have Scheduling. For actual multi-threaded thread, dependent on the resources requested, and the entire current (real moment in time) workload and cache contents. Not the ham-fisted “scheduling” of requests or pages in a fixed “
    version” that never existed.

    Those who are so intellectually crippled, insist that we who are not crippled, should be so crippled, so that OUR operation is “correct” according to cripples.

    No, we do not have to be “correct” according to some lunatic notion of “correct”. No, we don’t have to be “serialised”, according to some knuckle-dragging notion of “operation”. No, we don’t need a crippled “schedule” to execute
    hundreds of threads concurrently based on the reality of each thread. No, we don’t need the safety and comfort of fantasy notions and the tiled cells that foster them. No, you can’t impose your insanity on the sane.

    Yes, you can and you have, which is why your fantasy such as “MVCC” is now a COLLECTIVE fantasy, the expectation of the unqualified “developers”.
    <<<<
    But not with guys like me.

    You would have better luck if you get a prostitute to tell a virgin how she is not “correct”; how important and essential and glorious syphilis could be in her life; how she is missing out; how she is not really living. In case you do not understand
    that, hint: the virgin lives from her spirit and intellect; the prostitute lives from her body alone, in denial of her spirit and intellect. /Look, you could have oozing sores and scars that are permanent, that make you unique, even after you die you
    will be unique, your bones will be marked permanently./ Not impressive. The virgin knows (knowledge; logic; intellect; spirit) that she is unique because she is created as such, not by mere marks on her skin or bones.

    You need to get some experience in the real world, such that you do not expect a Standard to define what “correct” is. Give yourself ten years or so, and your question will have evaporated.

    OTOH, if you wish to remain an academic idiot, full of irrelevant fantasy notions, since you are pushing them, you will have to define them. Take note, if the definitions do not reference reality, they will not apply to reality, they will be dismissed.

    ----

    Deadlocks. You say “deadlocks can’t happen in MVCC [MV-non-CC+2PL]” as if it is superior. It isn’t. Relative to the real world, it is inferior. The fact is, you can’t even define what a deadlock is. Fact is, if a deadlock did happen in
    reality, your schizophrenic “version” of the frozen database COULD not know about it. Fact is, the rough equivalent of deadlock in your primitive herd of programs does happen, it is called “serialization failure*, proving that you can’t even
    serialise what you say is serialised. You can’t make this stuff up.

    PigPoopGres. Fact is, not only does MV-non-CC not work at all, until you add your primitive 2PL, but that it still does not work at all, until MANUAL LOCKING is implemented in the app code. You academics are so stupid, you do not realise that that (
    allowing app code to interfere with internal locks) (a) guarantees disaster , and (b) guarantees the possibility of deadlocks due to less-than-perfect app code. It is the same irresponsible principle as you are attempting here: you can’t provide the
    service that you declare you provide, so you impose that provision of service onto the developer.

    In that issue, MySQL is superior. Yes, it is MV-non-CC+Lock Manager. Yes, it does not work because MV-non-CC does not work, and MV-non-CC+Lock Manager does not work. Yes, they have to have additional locking. But not being as insane as academics,
    they allow only external named locks, such that it does not interfere with the internal locks. So at least MySQL can guarantee that their herd of programs does not deadlock, and if a deadlock did happen, it is in the app code alone. Far superior to pig
    poop.

    Fact is, we don’t serialise, so truly, we cannot have serialisation failures. Fact is, we don’t need a frozen “version” of the database, we operate in real time, on the single, online, active, version of the truth, so we don’t need an idiotic,
    primitive schedule, we truly cannot have schedule failures.

    Understood properly, yes, deadlocks do happen in the real world, in every walk of life. Fact is, since you are divorced from reality, sucking on an offline frozen “version” of the database, the accurate statement is, in MV-non-CC, since the “
    versions” are artificially offline, the recognition of real world deadlocks is artificially prevented.

    It is not so relevant that our real world database servers are superior (yes, they are), the proper understanding is, reality is relatively superior to the inferiority of perceptions of reality by the insane; the crippled; the non-functional; the
    impotent; the bat-poop crazy.

    ----

    Count() would return the correct result if and only if the returned
    value is among the values that some serial execution of the same set of >> committed transactions would have returned.

    I reject that as a definition, Sybase; DB2; MS rejects that as well.

    Then, again, please provide a definition of "correctness". Because you
    want to be confident that your queries produce "correct" results, don't
    you?

    No.

    The moon has not fallen into the river, and I don’t need your help to fish it out. And I am certainly not about to give you a definition of what a correct moon in the river looks like.

    Yes, I have confidence, but that confidence is based in reality, not in abstraction.

    My confidence that a certain query is, or is not, correct [no quotation marks] is NOT based on some hysterical abstraction, which does not reference the real world elements that it supposedly evaluates, it is based on the real world circumstances that
    the query operates in. If you want your idiotic abstraction to apply to reality, it has to be an abstraction *OF* reality. It is because your abstraction is a result of circle-jerking over fantasy that is proudly detached from reality, that it does not
    relate to, it is not applicable to, reality.

    ----

    In the real world, we are not so crippled as to require “serial execution” in the multi-threaded server (multi-threaded at all levels). Only academics, who consistently demonstrate their abject disability, their sub-human intellect, their inability
    to grasp technical subjects, their divorcement from reality, that can only write simple single-threaded programs, that need a “serial execution”.

    Here, let me help you get out of your own mess, I don’t know if it will work, because I don’t have the necessary qualifications. You still have the hysterical notion of MV-non-CC, as the basis; the foundation, of your idiotic beliefs. That is a
    snapshot of the entire database as a “version”, taken at an abstract “moment in time”, that never existed (NOT like taking a hardcopy), for single-user use, the only thing you can understand, because you cannot handle the reality of an online
    database that is in the constant state of change. Great for simpletons. But in the real world, reality, there is no such thing as a snapshot of the database, no such thing as that /moment in time/. We do not freeze the database and take a photo, only
    cripples do.

    No problem, I accept that you are intellectually crippled.

    But then you try and impose that sub-human disability on the real world, wherein databases are not a snapshots taken at a mythical moment in time. I have a problem with that.

    ----

    We get “developers” who have such hysterical notions all the time, they have false confidence because they say the academics said so. We have to train them by introducing reality to them. Those who are not totally crippled love it, and become
    useful over time. The others leave quietly, or throw a tantrum, or commit suicide later.

    ----

    Since anything can happen concurrently during the execution of a query
    at READ COMMITTED, how can you tell apart the result of a query
    returning an integer from

    select cast(rand() * 1000000) as int)

    ?

    I understand the SQL, but I have read that question several times, but sorry, I do not understand your question.

    ----

    Wherein COUNT at READ COMMITTED works perfectly.

    Ok if you are referring to other ways of counting.

    No, since I referenced “COUNT”, I am referring to reading all the rows in a large table, per the SQL requirement, NOT other ways of obtaining a /count/ of the rows, which would be more efficient.

    But if you mean that
    counting by scanning the table at READ COMMITTED works perfectly,

    Yes.

    please
    elaborate on what "works perfectly" means.

    Why ?
    For what purpose ?
    You yourself just referenced “anything can happen concurrently during the execution of a query”: if you understand what you wrote, you will understand that your question is stupid, it does not apply to reality.

    If I try to answer your question, I would have to explain:
    a. reality
    b. how a database server in the real world works, and
    c. how a particular database server works.
    That is called education.

    As evidenced, I spend an awful lot of time and energy helping you, because you alone have attempted to cross the great chasm between academic isolation from reality, and reality. But no, sorry, I cannot provide basic education. You have down loaded SAP/
    Sybase Express Edition. Go and get educated yourself.

    In short, “works perfectly” means works perfectly in all the circumstances that I have executed the command, across about 120 database servers that I have experience with, in the real world. Which are multi-threaded, and have configurable resources
    at every resource level, and share those resources, and resolve contention, without error. All of which you are, as evidenced, totally ignorant of, which is why you depend on primitive abstract notions divorced from reality, that you CAN understand.

    But there is an important second point: anyone who has even pedestrian knowledge of SQL on a genuine SQL Platform, would know that [separate
    to the count changing constantly because the table is active], that
    that is not a “problem”, that that is not the way to obtain a COUNT on a large table.

    Sure. But it still illustrates the point, which is about the kind of
    issues you may run into when running queries at READ COMMITTED.

    No. You TRIED to illustrate some idiotic point, but you FAILED. The entire attempt, each element, was hysterically stupid, and I destroyed each element of your stupidity.

    It is
    not suggesting that you *should* run those queries at READ COMMITTED.

    Sometimes we do. Sometimes we don’t. It depends on what we want, which includes [does not deny] the reality of the server; and the activity; and the accuracy that is required for the task.

    Counting was not the best example; but you can replace the query with
    some other computation.

    No. You are prosecuting the insanity, the onus is upon you to define the “problem”. It is you that has the “problem”, you define it, you provide an example. From my side, not being intellectually crippled, (a) I don’t have the “problem”,
    and (b) in response to your attempts to impose your insanity on us, (c) I have rejected each element of your “problem”, purely by Logic (science). You are as unscientific as a certified lunatic.

    No, the moon has not fallen into the river. Our necks are not broken and we can look up, skyward. No we don’t need your “method” to fish the moon out of the water. It is up to you to define your moon in the water, yellow or pink or blood.

    Cheers
    Derek

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Derek Ignatius Asirvadem@21:1/5 to All on Sat Aug 14 02:41:19 2021
    Nicola

    On Thursday, 12 August 2021 at 16:08:28 UTC+10, Derek Ignatius Asirvadem wrote:

    Make no mistake:
    __ Truth = Reality = life
    __ Falsity = Rejection of Reality = death

    __ Sanity = conforming the intellect to Reality
    __ Insanity = desperately try to conform reality to the mind, which after a lifetime of failure, ends in suicide.

    Academics foster death. It is evil.

    This is the Theological and Philosophical (when it was a science, before it was sabotaged by drug addicts and other insane) definition. It is science; logic. And a bit more qualification:

    __ Truth = Reality = life
    ____ Permanent (it is eternal, but you wouldn’t understand that)
    __ Falsity = Rejection of Reality = death
    ____ Transient, ever-changing

    __ Sanity = conforming the intellect to Reality
    __ Insanity = Rejection [denial] of Reality
    ____ erection of fantasy, desperate attempts to conform reality to the mind (their fantasy), which after a lifetime of failure [usually short], ends in suicide or murder-suicide.


    On Friday, 13 August 2021 at 13:37:40 UTC+10, Derek Ignatius Asirvadem wrote:

    It is stupefying, idiotic, insane, to define “correct” as an abstraction without reference to reality, and then try to apply it to reality, but academics love abstraction with no relation to reality, it is the foundation for their fantasies. This
    is the core principle that caused the impotence of academics in this field for FIFTY years (no progress of the /Relational Model/, but hundreds of anti-Relational papers marketed as “Relational”).

    Those who are so intellectually crippled, insist that we who are not crippled, should be so crippled, so that OUR operation is “correct” according to cripples.

    With the release of mental patients into society, and the destruction thereof, sure, you have many friends, and there are now quite a few famous examples of the problem I describe (points above).

    We have a 56yo male, who dresses in a skirt and wears a wig. Ok. He says he “identifies” as a 6yo girl. Ok. If I had any official duty of care upon him, I would that that act, in and of itself categorises him as insane, suffering from sex
    dysphoria (more, later), and have him locked up, in order to prevent him harming himself (self-harm and suicide are the province of the insane), and to preserve society from the contamination of insanity (mayhem and murder, and more commonly insane “
    thinking”). Up to a few years ago, that is what would happen.

    But now, the globalists have forced enslaved countries to release the insane into society, and to accept the notions of the insane. Thus the insane have their insanity validated. Worse, they get together with other insane people, and validate each
    other, they form a COLLECTIVE insanity, a COLLECTIVE fantasy against reality, in the manner of populism in their “community” it is “real” to them.



    <<<
    “Gender” is one such. In reality, there is sex, not “gender”, and sex is exclusively male/female only (don’t argue in the tiny corners of the Bell curve, citing deformities, I will destroy them). Every cell in a person’s body is male or
    female only, because sex is established at the chromosome level. When a male castrates himself and mutilates his genitals to form “female” “vagina”, the “organ” remains male because every cell is male. Likewise, when a female has genital
    mutilation performed, the “organ” is completely made up of her female cells. Unscrupulous doctors will happily perform the mutilation for them: chink; chink; chink. The Chinese are known to perform “hysterectomies” on such males.

    “Gender” is a fantasy, proved further by the fact that it is forever changing. 104 “genders” on Fakebook at last count. In this fantasy, “gender” is “assigned” at birth. No, actually, the first cells are created at conception, not
    birth, and all the progressive cells are formed during the entire nine months preceding birth. The event related to sex at birth is observation of reality, not an “assignment”. Sex is real, therefore it cannot be changed. The psychological pain
    they feel every time they look in the mirror is the tension of opposites, between their fantasy and reality. That is internal, that is what needs to be treated, not the body (drugs and mutilation). In their pain, they cannot imagine that, because
    falsity is ever-changing, they might want to reverse the “transition” in the future, and they can’t “transition” back, because it is permanent.

    When a person rejects their sex, it is sex dysphoria, a severe mental illness, not “gender dysphoria”. Their proposal that our rejection of their fantasy causes their high rate of suicide is false, no, it is their mental illness that causes their
    suicide. If we accept their proposal, we have validated their mental illness; their fantasy, and contributed to their suicide. If we remain responsible we recognise their mental illness, and give them the help they need, so as to prevent their suicide,
    as well as their murder and mayhem in human society.

    In the case of the academics who allege that they serve the database space, the fantasy they hold against reality is strongly established, it has FIFTY YEARS of maturity and populism within it. It is no less a mental illness than sex dysphoria. I do
    not use clinical terms re mental illness lightly, they are precise.

    Young people are indoctrinated into the faith, and thus made insane. It is a de facto faith because it is blind faith, belief in a fantasy, that has no evidence in reality. Stonebraker is the great prophet, that delivered the “MVCC” myth, the
    fantasy. That is bad enough, but that needs a denial of reality, otherwise psychological pain ensues. So the denial of reality, schizophrenia, is part of the faith; part of the indoctrination, and the isolation from reality; from the industry; from the
    real world, is made up into an elitism for the chosen ones. Isolation from reality, which is mental illness by definition, is re-framed as a badge of superiority.

    There is no such thing as a superiority complex: a truly superior person does not need constant validation, he knows he is superior. Properly understood, it is an inferiority complex, the inferior need to present as superior, and they have to do it
    constantly.

    Of course, they propose their fantasies as “science”, but it is easily determined as pseudo-science. Science is truth, simple, eg. the single paper for the /Relational Model/, no citations necessary, it changed the industry. Pseudo-science consists
    of a mountain of papers, needing citations (populism) by the cult members, both pro and con, endless argument with no resolution, and has had zero effect on the industry.

    As with any cult, one needs to drink the Kool-Aid, one has to sing the hymn to drown out reality, the mantra “readers never block writers, writers never block readers”. It is a particularly sick cult, because they themselves implement a system in
    which readers block writers, writers block readers. So there is a constant tension of opposites, a constant psychological pain.

    As the mentally ill cannot be responsible, in their state of defined victim, they impose their disease; their sickness; their pain onto the sane. As seen here [paraphrased} “it is you, Derek, who is crazy, because you don’t love and respect my
    schizophrenic no-reference-to-reality notion of /correct/ ... no ? ... ok, then, you define /correct/ in schizophrenic terms, without any reference to reality ... no ? .. ok, then, I will kill myself.” No, fool, leave the contrived isolation of the
    academic asylum, come out into the sunshine, and enjoy reality. It won’t kill you.

    Isolation from reality, as declared with pride, eliminates the possibility of serving the industry that they allege to serve. Theoreticians in the motor vehicle or construction or computer hardware industries are not isolated from the industry they
    serve. But here, we are guaranteed both: isolation with pride and zero service.

    In contrast to the theory divorced from reality, as proclaimed, which is fantasy, the entire faith of the cult, the only theory that has value, is that which relates to reality: abstraction based on reality. As evidenced in the progress of SQL platforms.

    So it is no surprise at all that in reality, all progress in this science has been made by real scientists, employees of the great DBMS platforms. In the Relational paradigm, that started with Dr E F Codd. That is why the cultists; the academics, hate
    him, that is why they endlessly demean him, that is why they market anti-relational filth as “relational”, that is why they sabotage the industry. It is the normal activity of the insane. That is why heavy marketing is implemented, both in the
    mountain of “academic papers”, and the media, it is pure propaganda for the faithful, and a vehicle to attract; seduce, the ignorant: “Here, you don’t have to think about what an online shared database is, just perceive it as a snapshot, frozen
    in a moment in time”, “here, write ‘transactions’ as if you are the only user changing that snapshot.”

    ----

    The problem has been made worse recently, because of the rise of freeware, which is analogous to the rise of revolution ideology. Of course it is false, and that is why it has to be heavily marketed. It doesn’t work at all, but the marketing says it
    is better than the SQL Platforms, that a non-architected non-SQL non-platform based on non-reality, is somehow better. You get what you pay for.

    It is so bad, that even normal people are infected with the blind faith of “MVCC”, blind to the fact that it is not “MVCC” but MV-non-CC+2PL. They parrot “‘MVCC’ as superior”, it has become a check-box issue for the SQL Platform
    providers.

    No problem. As SQL Platform engineers, they are grounded in reality, they are not stupid academics. As engineers, they are quite aware that MV-non-CC+2PL is not a substitute for their mature Concurrency Control. Further, we do not want the customers
    with their high concurrency requirements (95% of the banking & finance vertical) to be affected by catering for new customers who think the moon is made of cream cheese.



    This is a repeat of the same insanity; the same disease; the mental disorder, manifesting in a different technical issue, that we were pressed with in 1999-2000, and we dealt with it with the same structure of solution, so let me mention that first.
    Then the academics and Oracle were pushing the insane notion that contention (which is real and has a perfect real-world solution), was caused by the fact that lock granularity in Sybase; MS; etc, was pages, not rows, and that if only, if only, if only,
    Sybase would implement row level locking (which the fantasy world, had but did not provide high concurrency), then it would be attractive to customers whose program were written by idiots. Because the academics said so. Note that these systems were
    physicalised Record Filing Systems (Record Ids), not logical Relational databases (composite keys).

    Up to then, the page was the unit of measure for everything, and locking was ALLPAGES, meaning index and data. Ok, major new release, first to provide improved support for Record Id based files (they are files, not tables), and second to support row
    level locking. No change to the architecture, just an additional DataStructure, and new lock types. In addition to DATAROW level locks, which locked only the rows, and used new latches for index and data pages, Sybase provided an in-between lock level:
    DATAPAGE, which locked pages, and used latches for index pages. You want fast Record Ids and row locking, no problem.

    The result ? As predicted by scientists before the fact. No change whatsoever to high-end databases, guys like me have never used row locks, we are still on 2kb Pages. I pleaded with people who had sub-standard systems, DO NOT CONVERT ALL YOUR TABLES,
    CONVERT ONLY THOSE NECESSARY. Whoever did convert, found that, gee whiz, instead of being lock-bound at the page level, they were now lock-bound at the row level. And oopsey doopsey, instead of number-of-locks in the 100K range, they were now in the in
    the 1M range (10-20M range for those who converted all their tables).

    At least they STFU and stopped blaming the server. They would not listen to decades of advice:
    - all contention is written in the application & database,
    - it is not in the server (that deals with and resolves contention)
    - sure, the contention is visible as locks,
    - so the stupid think that the problem is in the locks (no responsibility, transference, again)
    - no, the problem is in the cause of the locks, the app code, the transaction design
    Separately:
    - the problem is not lock granularity
    - the problem is lock duration

    No change whatsoever to high-end systems, for guys like me. We don’t need row locks to fix a problem we did not have. We don’t use physical Record Ids, because everything in the database is logical. Physicalising the logical /Relational Model/, as
    academics have done for FIFTY YEARS, is pure sabotage, pure evil. But hey, they need it to justify their “theory”, their shell-game to “find” the keys.

    Hopefully you will understand the relevance of this thread, the relevance of an OLTP Standard, that is designed to minimise contention. Note gravely, it is not in the server, it is in the database and app code.

    <<<<

    Second innings. Same insanity; same stupidity; different technical issue.

    Sybase ADDITIONALLY supports multiple versions of offline pages or rows which schizophrenics say they want.

    For normal humans: 1PL only
    For the insane: 1PL + snapshot isolation
    __ (not the reversal or order, as in MV-non-CC + 2PL)

    Without the smallest change to the architecture, with only the additional resources to cater for the special-needs children, which are fully configurable (so that only the errant Dbs and connections are affected), Sybase can guarantee correct handling (
    do not ask) of multiple versions. And instead of the fraudulent label, let’s call it what it is: SNAPSHOT ISOLATION.

    You wanna create a private offline snapshot of a row ?
    No problem, have one.
    Meanwhile, the entire server and the rest of the users on the database execute with 1PL only.
    Dig for gold in the nasal cavity.
    You wanna nuther private hardcopy of the online row that changes constantly ? Here, have a snapshot.
    Meanwhile, the entire server and the rest of the users on the database execute with 1PL only.
    Dig for gold elsewhere.
    Oh, now you wanna commit, do you ?
    Sure, let me resolve those offline snapshots against the online database for you, using the unchanged concurrency control and resolution manager.
    Sorry, you are three days late.

    It literally materialises the fantasies.

    Normal boys and girls unaffected. Special needs children handled without telling them they are retarded, with new error messages that apply only to the insane.

    Functionally, DB2, MS do the same. MS, as usual, has the MS bloat.

    ----

    That is perfect for an SQL Platform provider, no argument from me.

    But that is horrible for a system supplier, such as I. Why, everything works and everything ? Because it handles the symptoms, but not the cause, and because knuckle-dragging developers are validated in the knuckle-dragging, and never get past it.
    They will continue to hold the fantasies, at additional cost, continue to write filth, and never know how the real world of databases work. And it does not change their path to suicide.

    So I give the education, destroy their stupid religion, and offer them conversion therapy, and a chance for life.

    Cheers
    Derek

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Derek Ignatius Asirvadem@21:1/5 to All on Sat Aug 14 19:02:06 2021
    Nicola

    On Thursday, 12 August 2021 at 16:08:28 UTC+10, Derek Ignatius Asirvadem wrote:

    Make no mistake:
    __ Truth = Reality = life
    __ Falsity = Rejection of Reality = death

    __ Sanity = conforming the intellect to Reality
    __ Insanity = desperately try to conform reality to the mind, which after a lifetime of failure, ends in suicide.

    Academics foster death. It is evil.

    This is the Theological and Philosophical (when it was a science, before it was sabotaged by drug addicts and other insane) definition. It is science; logic. And a bit more qualification:

    __ Truth = Reality = life
    ____ Permanent (it is eternal, but you wouldn’t understand that)
    __ Falsity = Rejection of Reality = death
    ____ Transient, ever-changing

    __ Sanity = conforming the intellect to Reality
    __ Insanity = Rejection [denial] of Reality
    ____ erection of fantasy, desperate attempts to conform reality to the mind (their fantasy), which after a lifetime of failure [usually short], ends in suicide or murder-suicide.


    On Friday, 13 August 2021 at 13:37:40 UTC+10, Derek Ignatius Asirvadem wrote:

    It is stupefying, idiotic, insane, to define “correct” as an abstraction without reference to reality, and then try to apply it to reality, but academics love abstraction with no relation to reality, it is the foundation for their fantasies. This
    is the core principle that caused the impotence of academics in this field for FIFTY years (no progress of the /Relational Model/, but hundreds of anti-Relational papers marketed as “Relational”).

    Those who are so intellectually crippled, insist that we who are not crippled, should be so crippled, so that OUR operation is “correct” according to cripples.

    With the release of mental patients into society, and the destruction thereof, sure, you have many friends, and there are now quite a few famous examples of the problem I describe (points above).

    We have a 56yo male, who dresses in a skirt and wears a wig. Ok. He says he “identifies” as a 6yo girl. Ok. If I had any official duty of care upon him, I would that that act, in and of itself categorises him as insane, suffering from sex
    dysphoria (more, later), and have him locked up, in order to prevent him harming himself (self-harm and suicide are the province of the insane), and to preserve society from the contamination of insanity (mayhem and murder, and more commonly insane “
    thinking”). Up to a few years ago, that is what would happen.

    But now, the globalists have forced enslaved countries to release the insane into society, and to accept the notions of the insane. Thus the insane have their insanity validated. Worse, they get together with other insane people, and validate each
    other, they form a COLLECTIVE insanity, a COLLECTIVE fantasy against reality, in the manner of populism in their “community” it is “real” to them.



    “Gender” is one such. In reality, there is sex, not “gender”, and sex is exclusively male/female only (don’t argue in the tiny corners of the Bell curve, citing deformities, I will destroy them). Every cell in a person’s body is male or
    female only, because sex is established at the chromosome level. When a male castrates himself and mutilates his genitals to form “female” “vagina”, the “organ” remains male because every cell is male. Likewise, when a female has genital
    mutilation performed, the “organ” is completely made up of her female cells. Unscrupulous doctors will happily perform the mutilation for them: chink; chink; chink. The Chinese are known to perform “hysterectomies” on such males.

    “Gender” is a fantasy, proved further by the fact that it is forever changing. 104 “genders” on Fakebook at last count. In this fantasy, “gender” is “assigned” at birth. No, actually, the first cells are created at conception, not
    birth, and all the progressive cells are formed during the entire nine months preceding birth. The event related to sex at birth is observation of reality, not an “assignment”. Sex is real, therefore it cannot be changed. The psychological pain
    they feel every time they look in the mirror is the tension of opposites, between their fantasy and reality. That is internal, that is what needs to be treated, not the body (drugs and mutilation). In their pain, they cannot imagine that, because
    falsity is ever-changing, they might want to reverse the “transition” in the future, and they can’t “transition” back, because it is permanent.

    When a person rejects their sex, it is sex dysphoria, a severe mental illness, not “gender dysphoria”. Their proposal that our rejection of their fantasy causes their high rate of suicide is false, no, it is their mental illness that causes their
    suicide. If we accept their proposal, we have validated their mental illness; their fantasy, and contributed to their suicide. If we remain responsible we recognise their mental illness, and give them the help they need, so as to prevent their suicide,
    as well as their murder and mayhem in human society.

    <<<<

    In the case of the academics who allege that they serve the database space, the fantasy they hold against reality is strongly established, it has FIFTY YEARS of maturity and populism within it. It is no less a mental illness than sex dysphoria. I do
    not use clinical terms re mental illness lightly, they are precise.

    Young people are indoctrinated into the faith, and thus made insane. It is a de facto faith because it is blind faith, belief in a fantasy, that has no evidence in reality, no reference to reality. Stonebraker is the great prophet, that delivered the
    MVCC” myth, the fantasy. That is bad enough, but that needs a denial of reality, otherwise psychological pain ensues. So the denial of reality, schizophrenia, is part of the faith; part of the indoctrination, and the isolation from reality; from the
    industry; from the real world, is made up into an elitism for the chosen ones.

    Isolation from reality, which is mental illness by definition, is re-framed as a badge of superiority.

    There is no such thing as a superiority complex: a truly superior person does not need constant validation, he knows he is superior. Properly understood, it is an inferiority complex, the inferior need to present as superior, and they have to do it
    constantly. Observe the Chinese posturing.

    Of course, they propose their fantasies as “science”, but it is easily determined as pseudo-science. Science is truth, simple, eg. the single paper for the /Relational Model/, no citations necessary, it changed the industry. Pseudo-science consists
    of a mountain of papers, needing citations (populism) by the cult members, both pro and con, endless argument with no resolution, and has had zero effect on the industry.

    As with any cult, one needs to drink the Kool-Aid, one has to sing the hymn to drown out reality, the mantra “readers never block writers, writers never block readers”. It is a particularly sick cult, because they themselves implement a system in
    which readers block writers, writers block readers. So there is a constant tension of opposites, a constant psychological pain.

    As the mentally ill cannot be responsible, in their state of defined victim, they impose their disease; their sickness; their pain onto the sane. As seen here [paraphrased} “it is you, Derek, who is crazy, because you don’t love and respect my
    schizophrenic no-reference-to-reality notion of /correct/ ... no ? ... ok, then, you define /correct/ in schizophrenic terms, without any reference to reality ... no ? .. ok, then, I will kill myself.” No, fool, leave the contrived isolation of the
    academic asylum, come out into the sunshine, and enjoy reality. It won’t kill you.

    Isolation from reality, as declared with pride, eliminates the possibility of serving the industry that they allege to serve. Theoreticians in the motor vehicle or construction or computer hardware industries are not isolated from the industry they
    serve. But here, we are guaranteed both: isolation with pride and zero service.

    In contrast to the theory divorced from reality, as proclaimed, which is fantasy, the entire faith of the cult, the only theory that has value, is that which relates to reality: abstraction based on reality. As evidenced in the progress of SQL platforms.

    So it is no surprise at all that in reality, all progress in this science has been made by real scientists, employees of the great DBMS platforms. In the Relational paradigm, that started with Dr E F Codd. That is why the cultists; the academics, hate
    him, that is why they endlessly demean him, that is why they market anti-relational filth as “relational”, that is why they sabotage the industry. It is the normal activity of the insane. That is why heavy marketing is implemented, both in the
    mountain of “academic papers”, and the media, it is pure propaganda for the faithful, and a vehicle to attract; seduce, the ignorant: “Here, you don’t have to think about what an online shared database is, just perceive it as a snapshot, frozen
    in a moment in time”, “here, write ‘transactions’ as if you are the only user changing that snapshot.”

    ----

    The problem has been made worse recently, because of the rise of freeware, which is analogous to the rise of revolution ideology. Of course it is false, and that is why it has to be heavily marketed. It doesn’t work at all, but the marketing says it
    is better than the SQL Platforms, that a non-architected non-SQL non-platform based on non-reality, is somehow better. You get what you pay for.

    It is so bad, that even normal people are infected with the blind faith of “MVCC”, blind to the fact that it is not “MVCC” but MV-non-CC+2PL. They parrot “‘MVCC’ as superior”, it has become a check-box issue for the SQL Platform
    providers.

    No problem. As SQL Platform engineers, they are grounded in reality, they are not stupid academics. As engineers, they are quite aware that MV-non-CC+2PL is not a substitute for their mature Concurrency Control. Further, we do not want the customers
    with their high concurrency requirements (95% of the banking & finance vertical) to be affected by catering for new customers who think the moon is made of cream cheese.



    This is a repeat of the same insanity; the same disease; the mental disorder, manifesting in a different technical issue, that we were pressed with in 1999-2000, and we dealt with it with the same structure of solution, so let me mention that first.
    Then the academics and Oracle were pushing the insane notion that contention (which is real and has a perfect real-world solution), was caused by the fact that lock granularity in Sybase; MS; etc, was pages, not rows, and that if only, if only, if only,
    Sybase would implement row level locking (which the fantasy world, had but did not provide high concurrency), then it would be attractive to customers whose program were written by idiots. Because the academics said so. Note that these systems were
    physicalised Record Filing Systems (Record Ids), not logical Relational databases (composite keys).

    Up to then, the page was the unit of measure for everything, and locking was ALLPAGES, meaning index and data. Ok, major new release, first to provide improved support for Record Id based files (they are files, not tables), and second to support row
    level locking. No change to the architecture, just an additional DataStructure, and new lock types. In addition to DATAROW level locks, which locked only the rows, and used new latches for index and data pages, Sybase provided an in-between lock level:
    DATAPAGE, which locked pages, and used latches for index pages. You want fast Record Ids and row locking, no problem.

    The result ? As predicted by scientists before the fact. No change whatsoever to high-end databases, guys like me have never used row locks, we are still on 2kb Pages. I pleaded with people who had sub-standard systems, DO NOT CONVERT ALL YOUR TABLES,
    CONVERT ONLY THOSE NECESSARY. Whoever did convert, found that, gee whiz, instead of being lock-bound at the page level, they were now lock-bound at the row level. And oopsey doopsey, instead of number-of-locks in the 100K range, they were now in the in
    the 1M range (10-20M range for those who converted all their tables).

    At least they STFU and stopped blaming the server. They would not listen to decades of advice:
    - all contention is written in the application & database,
    - it is not in the server (that deals with and resolves contention)
    - sure, the contention is visible as locks,
    - so the stupid think that the problem is in the locks (no responsibility, transference, again)
    - no, the problem is in the cause of the locks, the app code, the transaction design
    Separately:
    - the problem is not lock granularity
    - the problem is lock duration

    No change whatsoever to high-end systems, for guys like me. We don’t need row locks to fix a problem we did not have. We don’t use physical Record Ids, because everything in the database is logical. Physicalising the logical /Relational Model/, as
    academics have done for FIFTY YEARS, is pure sabotage, pure evil. But hey, they need it to justify their “theory”, their shell-game to “find” the keys.

    Hopefully you will understand the relevance of this thread, the relevance of an OLTP Standard, that is designed to minimise contention. Note gravely, it is not in the server, it is in the database and app code.

    <<<<

    Second innings. Same insanity; same stupidity; different technical issue.

    Sybase ADDITIONALLY supports multiple versions of offline pages or rows which schizophrenics say they want.

    For normal humans: 1PL only
    For the insane: 1PL + snapshot isolation
    __ (not the reversal or order, as in MV-non-CC + 2PL)

    Without the smallest change to the architecture, with only the additional resources to cater for the special-needs children, which are fully configurable (so that only the errant Dbs and connections are affected), Sybase can guarantee correct handling (
    do not ask) of multiple versions. And instead of the fraudulent label, let’s call it what it is: SNAPSHOT ISOLATION.

    You wanna create a private offline snapshot of a row ?
    No problem, have one.
    Meanwhile, the entire server and the rest of the users on the database execute with 1PL only.
    Dig for gold in the nasal cavity.
    You wanna nuther private hardcopy of the online row that changes constantly ? Here, have a snapshot.
    Meanwhile, the entire server and the rest of the users on the database execute with 1PL only.
    Dig for gold elsewhere.
    Oh, now you wanna commit, do you ?
    Sure, let me resolve those offline snapshots against the online database for you, using the unchanged concurrency control and resolution manager.
    Sorry, you are three days late.

    It literally materialises the fantasies.

    Normal boys and girls unaffected. Special needs children handled without telling them they are retarded, with new error messages that apply only to the insane.

    Functionally, DB2, MS do the same. MS, as usual, has the MS bloat.

    ----

    That is perfect for an SQL Platform provider, no argument from me.

    But that is horrible for a system supplier, such as I. Why, everything works and everything ? Because it handles the symptoms, but not the cause, and because knuckle-dragging developers are validated in their knuckle-dragging, and never get past it.
    They will continue to hold the fantasies, continue to write filth, at great additional cost, and never know how the real world of databases work. And it does not change their path to suicide.

    I am responsible. So I give the education, destroy their stupid religion, and offer them conversion therapy, and a chance for life.

    Cheers
    Derek

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Derek Ignatius Asirvadem@21:1/5 to All on Sun Aug 15 03:14:12 2021
    As a result of the exchange with Dan, I have updated the Transaction Sanity doc, to be generic SQL (eg. readily MS SQL which is the most common), and removed the SG specific notes. Of course, that excludes the freeware and Oracle, which are not SQL-
    compliant.

    To be fair, it must be mentioned that MySQL is the least SQL-non-compliant, and it does not have the vulnerability of the gamut of locking problems (such as being wide open to deadlocks and app code interfering with the internal locks). I have not
    examined it recently, but it certainly appears that it is possible to maintain ACID compliance in MySQL, whereas PissGres and Oracle do not provide ACID in the herd of programs ("server"), and thus it is not possible to make the app code ACID compliant.

    __ https://www.softwaregems.com.au/Documents/Article/Database/Transaction/Transaction%20Sanity.pdf

    Nicola

    Are there any facts, in my Transaction Sanity doc, p1 and p2, that you dispute ?

    Cheers
    Derek

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Nicola@21:1/5 to Derek Ignatius Asirvadem on Mon Aug 16 09:29:02 2021
    On 2021-08-15, Derek Ignatius Asirvadem <derek.asirvadem@gmail.com> wrote:
    Are there any facts, in my Transaction Sanity doc, p1 and p2, that you dispute ?

    How could I dispute facts?

    Thank you for that document, and for the whole discussion around ACID
    and transactions. It has made me understand how you use those terms (as
    opposed to their "textbook" use), which in turn, has helped me clarify
    many aspects of your critique of MVCC.

    I'll gladly follow your developments on Dan's data model, if there are
    any, and think how they (fail to) apply to MVCC-based systems.

    Nicola

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Derek Ignatius Asirvadem@21:1/5 to All on Mon Aug 16 23:31:33 2021
    Nicola

    On Monday, 16 August 2021 at 19:29:04 UTC+10, Nicola wrote:
    On 2021-08-15, Derek Ignatius Asirvadem wrote:

    Are there any facts, in my Transaction Sanity doc, p1 and p2, that you dispute ?

    How could I dispute facts?

    Good to hear.

    Thank you for that document, and for the whole discussion around ACID
    and transactions.

    You are welcome.

    It has made me understand how you use those terms (as
    opposed to their "textbook" use),

    As you can see, I do not have private terms or re-definitions of terms, I use the definitions that have been established in the industry, in chronological order (SQL, genuine SQL Platforms of forty years). I trust you appreciate that technical terms are
    established in order to facilitate correct communication between people. When the academics use terms to mean different things than the established terms:
    a. it is an act of dishonesty,
    b. it guarantees that the communication will be laboured and confused (which is a substantial component in the volume of our discussion)
    c. it is the base they use to promote some primitive and non-compliant feature as the feature (eg. anti-SQL as “SQL”; anti-ACID as “ACID”; etc)
    d. their students are trained in such falsity, which breaks down when they are employed in industry

    which in turn, has helped me clarify
    many aspects of your critique of MVCC.

    Great.

    Perhaps some day, you too, will admit the utter falsity of MV-non-CC, the fantasy, and thus the insanity of perceiving an online shared active database as something, anything, that it is not, let alone a snapshot frozen in time, which is impossible. And
    the terrible consequences thereof.

    I'll gladly follow your developments on Dan's data model, if there are
    any,

    Assuming you mean the data model relevant to this thread, the goal being Optimistic Locking, and showing the progress of the OLTP Transaction Template code, the GitHub Gist is here. This contains the DDL and obsolete stored proc code:
    __ https://gist.github.com/DanielLoth/76d241515655e76cadddef6ed2d373aa

    My submission, the latest version of code against that db, is here. It is now generic code for SQL-compliant Platforms (Sybase; DB2; MS; and Informix):
    __ https://www.softwaregems.com.au/Documents/Article/Database/Transaction/Visit_Add_tr%20DA.sql

    Because it is for Dan’s db, it does have some nuances: if it is at all confusing, ie. you don’t clearly see the difference re Template vs nuances, let me know and I will post code for the db in the Transaction Sanity doc.

    If you mean the data modelling exercise for the Shooter db, please post to that effect. I don’t know how far Dan is interested in taking it. That is in another GithHub “Pull Request”.

    and think how they (fail to) apply to MVCC-based systems.

    After having reached the status that you have, per your post, it would be interesting if you comment on that. The MV-non-CC plus the manual locking (you said “I love 2PL”) that you have to do vs the Lock Managers in real SQL platforms, that wouldn’
    t dream of allowing the user to interfere with locks.

    Cheers
    Derek

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Derek Ignatius Asirvadem@21:1/5 to All on Sat Aug 21 18:39:10 2021
    Nicola

    In this thread, you posed questions re "Serialisation" and "Schedules", which I found very odd:
    - why on earth should a developer be concerned about such things (internal operation of the server) ?
    - a Schedule implies single-threaded operation (we have been fully multi-threaded since 1975, not to mention Sybase is massively so at all levels)

    Could you please enlighten me,, in a few words.

    I found this, it appears it is being taught at Berkeley, as “computer science” about “databases”. Why ???

    https://dsf.berkeley.edu/dbcourse/lecs/22cc.pdf

    Cheers
    Derek

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)