Database Management for Smalltalk

Forum
New! Persistent Continuation Transactions in VOSS 3.145.00.10 (beta)



Current User: Guest
  • This forum allows Guest Users to post
  • Guests may not subscribe to email notifications
  • This forum allows for Member Registration
  • Registered Members can subscribe to email notifications
  • Registered Members can upload personal avatars
Login Register
Search 
Search Forums:


 
Current Forum
All Forums
Match Any Word
Match All Words
Match Phrase

New! Persistent Continuation Transactions in VOSS 3.145.00.10 (beta)
Read original blog post

Reply to Post
UserPost

8:37 pm
Thursday, 3 April 2008

John Clapperton

Admin

posts 13

VOSS 3.145.00.10 (beta) is now available for download.

New feature in this release is Persistent Continuation Transactions.

An open VOContinuationTransaction which has committed any number of alternative futures for its set of objects in continuation sub-transactions may now itself be persisted, or persisted & deactivated which removes the live transaction from the image, allowing log-off and shutdown.

Whilst the persisted continuation transaction exists, it and all its objects are persistently set read-only in the name of that transaction. Whilst deactivated it may be re-activated from the Control Panel or by program message sending, to re-create the live open transaction.

Persistent transactions are useful in design or what-if type of applications, where transactions may extend over days of revision and re-working of different saved possible final states, until a final commit is chosen.

Persisting a VOContinuationTransaction stores in the current virtual space (in a private dictionary in the stateDictionary) a virtual object complex which is a representation of the open VOContinuationTransaction, as a VOPersistedContinuationTransaction containing the same virtual objects. The same complex also includes a representation of its owner VOSession and its virtualObjectPark dictionary and contents, as a VOPersistedSession.

By default, every committing VOConSubTransaction persists its parent VOContinuationTransaction within the same commit; this default may be changed by the class method:

  VOContinuationTransaction persistConTxnOnSubTxnCommitDefault: aBoolean.

The public instance methods of VOContinuationTransaction offer further options. For example, VOContinuationTransaction>>persistAndDeactivate persists the receiver and removes it from the image, setting persistent read-locks on its VOPersistedContinuationTransaction and contents.

If all open VOContinuationTransactions in an image have been persisted and deactivated, the image may log-off and shutdown if desired.

Whilst a VOContinuationTransaction is active (i.e. exists, open, in the image), but has not yet been persisted, its contents are locked by volatile cache and object table file (.vot) record locks in the same way as in an ordinary  transaction. When persisted, the persistent read-locks are additional, but incidental from the point of view of other Process’s transactions (in the same or other images). However, when an open VOContinuationTransaction has been deactivated, it no longer exists in the image and its volatile locks are released; other Process’s transactions may then see such objects, but the persistent read-locks will block them from committing any changes to those objects (or the VOPersistedContinuationTransaction itself).

At the application level, the database may be considered to be in an inconsistent state (this is not something which any DBMS can determine, it is a matter for the application designer and/or user; consider, for example, work in progress in a CAD design for a gearbox or building), and objects which were write-locked in the open VOContinuationTransaction will now be only read-locked and therefore visible to other Processes in their deemed inconsistent state. However, this situation may be managed, since such locks may be tested by the method:

  VORefPrivate>>isReadOnlyForPersistedTransaction

and/or by checking the startTimestamp (id) of each extant VOPersistedContinuationTransaction in each virtual space returned by the method:

  VOManager>>persistedContinuationTransactionsOrIDs

so that, other Process’s transactions may choose to see the database as at a specified #dateAndTimeToRead (or equivalent integer #timestampToRead) pre-dating any or all extant persisted continuation transactions. If transaction versioning is globally enabled (set by VOManagerManager>>versioning: aBoolean, or from the Control Panel) then all historical states prior to the continuation transaction(s) may be seen.

Persisted instances of VOPersistedContinuationTransaction are shown in the Control Panel, and may be (re)activated by menu there, or by one of the following messages to the single LocalVOSSServer global instance of VOSSServer.

  VOSSServer>> activatePersistedContinuationTransaction: aPersistedContinuationTxn
or
  VOSSServer>> activatePersistedContinuationTransactionID: anInteger in: aVOManager

Download here and test-drive this in the tutorial.
Read original blog post


Reply to Post


Reply to Topic: New! Persistent Continuation Transactions in VOSS 3.145.00.10 (beta)

Guest Name (Required):

Guest EMail (Required):

Guest URL (required)

Math Required!
What is the sum of: 12 + 4        (Required)

Topic Reply:


 



About the VOSS 3.1 forum

Currently Online:

2 Guests

Maximum Online: 20

Forums:

Groups: 2

Forums: 8

Topics: 17

Posts: 19

Members:

There are 2 members

There are 1 guests

John Clapperton has made 13 posts

Top Posters:

Thomas Holzer - 1


Simple Forum - Version 2.1 (Build 237)

Simple Forum WordPress Plugin created by Andy Staines: Yellow Swordfish

Forum Skin/Icons: theme229compatible / default

Default 'Silk' Icon Set created by Mark James: fam fam fam

Math Spam Protection based on code by Michael Woehrer: Software Guide

Tabbed Admin uses Tabifier by Patrick Fitzgerald: BarelyFitz Designs


My thanks to all the people who have aided, abetted, suggested and helped test this plugin



 
cancer treatment effects of celexa buy proscar real levitra online online cialis no prescription buy cialis where luvox cr cialis online without prescription rx-viagra chewable cialis buy levitra onlines cialis 10 online allegra effects of high blood pressure buy alpha lipoic acid phentermine no perscription medician for heart attacks chlamydia medication dosage alternative cholesterol treatment buy lasuna natural constipation remedies nitroglycerin sublingual site viagra treatment of heart attacks seroquel for depression buy cialis how to boost immune system healthy pets cialis alcohol buy canada levitra scabies medicine cheapest cialis price buy pain medicine on-line immune system support products cats hairball low prices pain meds alcoholism treatment option new treatment for depression buy tribulus discount vitamin vitamin a natural arthritis cures chlamydia antibiotics viagra prescription lisinopril 10mg celecoxib medicine ultram buy discount cialis famvir dose buspar viagra online usa herbal antifungal and antibacterial buy viagra hypnosis to stop smoking buy discount cialis depakote 250mg buy lipothin viagra to buy how to take a beta-blocker buy cialis without prescription diazepam 10 mg what causes hair loss in women buy cheap cialis without a prescription cheap cialis tadalafil generic viagra on line menopause treatment zantac medication dog tooth infection cialis 30 effexor dose buy glucosamine sulfate metoprolol dose diet hoodia gum side effects levitra cialis on line stomach parasites viagra online cheap breast increasing oils buy paxil online online cheap viagra buy buy viagra order viagra cialis 5 aspirin medicine at home acne treatment canada cialis generic buy mycelex treatment of stroke order viagra plus zyprexa 5mg buy diazepam approved cialis fda itching relief viagra online usa hair loss treatment online information on levitra immune system supplement how to buy viagra beta blocker uses adhd treatment buy online viagra buy cialis online in usa adhd in women cats inflammatory bowel disease cialis viagra valtrex dosage cheap breast augmentation buy cialis online with a prescription prescription ibuprofen healthy women's vitamins dog site health treatment for lung cancer cialis without a prescription cialis 5mg cheap order viagra online discount viagra online order celebrex hypnotherapy for health synthroid doses hypothyroidism medication discount cialis online cialis 50mg help for infertility top ten acne products buy pain killers reducing cholesterol naturally viagra tablet dosage zoloft viagra cialis cialis comparison online stores hair loss products medications ativan lowering blood pressure naturally fluconazole cialis 20 mg buy augmentin buy cialis online cold flu menopause gum online pharmacy viagra buy cymbalta fluconazole capsule jelly kamagra brand viagra online cialis prescription online cialis without rx irritable bowel syndrome cures zestril medication cheapest online cialis buy celebrex online buy viagra on line