Database Management for Smalltalk

Transparent Persistence

+ Transaction Processing…

 

Smalltalk is pure object-oriented programming for complex business and technical applications, but the benefits of this can be lost in the well-known ‘impedance mismatch’ with relational databases.

The VOSS open source virtual object storage system extends Smalltalk with integrated database management, providing transparent multi-user access and transaction processing of persistent, versioned, Smalltalk objects directly accessible by normal programming, with efficient persistent Btree collection classes, including the multi-key/multi-value/key-set VirtualDictionarySet for aggregation and query-building.

  • Multi-process, multi-machine transactional access to distributed objects
  • ACID transactions with two-phase commit, logging and rollforward crash recovery
  • Persist clustered complexes of any Smalltalk classes except block closures
  • Historical object versioning, MVRC repeatable read, MVCC concurrency control
  • Automatic object locking with transaction rollback & retry on deadlock time-out
  • Automatic change detection, no lock conflicts with sub-transactions, short read-locks
  • Multi-key/multi-value/key-set Btree VirtualDictionarySet with query-building methods
  • Continuation Transactions manage alternative futures for design or what-if
  • Long Continuation Transactions may be persisted prior to ultimate commit/rollback
  • Web server / application process rendezvous
  • Distributed copying, parented copying, identity-exchange, checkout, read-only etc
  • 24×7 operation, with concurrent variable-rate incremental foreground & background garbage collection and snapshot backup of the set of distributed virtual spaces.
  • Up to 150 logged & flushed transactions per second on desktop hardware
  • Terabyte 64-bit object id and addressing default, configurable up to 128-bit
  • Dual Licensing - Open Source GPLv3 and/or Supported Commercial Licence

…Seamless Smalltalk Solutions Download VOSS



(C) Logic Arts Ltd 2009

Mon 19th Oct 2009   05:10 PM
posted by John Clapperton

New in this release, 3.150.04 allows snapshot shadow hot backup of all connected virtual spaces without the need to take an application offline. On menu click from the control panel, or by program message send, the flow of transaction commits pauses for just a few seconds whilst the snapshot shadows are created, and then continues normal service whilst the shadow copies are backed up to a specified location.

Together with concurrent background garbage collection, this allows 24×7 operation of applications managing multi-gigabyte databases of objects in virtual spaces distributed over a Microsoft Windows Network Filesystem.

Download VOSS 3.150.04 here

John


Join the forum discussion on this post
Mon 28th Sep 2009   06:09 PM
posted by John Clapperton

Version 3.150.03 fixes an initialization fault in 3.150.02.

Download 3.150.03 here.

John

Thu 3rd Sep 2009   10:09 PM
posted by John Clapperton

Version 3.150 improves administrative integrity safeguards; in particular, each most recent transaction commit timestamp is now stored in new header records in each of the files which comprise a virtual space (.vs1, .vs2, .tsq, .tlb), in addition to the existing .vot header record. Log-on is blocked if these do not match, safeguarding the virtual space against accidental mixups with the files.

The new header records are automatically added to existing virtual space files, (.vs1 or .vs2) and .tsq on the first garbage collector flip, (.vs2 or .vs1) on the second flip. The transaction log archive (which never needs garbage-collection, as nothing is ever deleted from it) is ‘converted’ when it is next replaced by a new empty one prior to routine backup (the transaction log must know the timestamp of the backup which it may be called upon to roll forward in crash recovery).

Note that virtual spaces which have been flipped at least once by version 3.150 cannot thereafter be used with any earlier version of VOSS, as earlier versions do not expect the header records to be there. Similarly, virtual spaces created by version 3.150 cannot be used with any earlier release of VOSS for the same reason.

There is a bug fix in VOSortedDictionary>>forKeyMatches: (which matches String keys with wild * and # characters) replacing the erroneous case-sensitive #= comparison by #voEQ: which looks at the VOSSRoot>>caseSensitiveKeys global variable to decide what to do.

In this area, it has been suggested that it would be useful to give each instance of VOSortedDictionary (and therefore its subclass VirtualDictionary, and by extension, the VOAutoDictionary components of VirtualDictionarySet etc) its own #caseSensitiveKeys attribute. If you have views on this please let me know.

VOSS 3.150.02 is available for download here.

John



 



 
  • Viagra ordre
  • Cialis en ligne
  • Levitra en ligne
  • Propecia acheter
  • Viagra acheter
  • Acheter cialis
  • Ordre levitra
  • Ordre propecia
  • En ligne viagra
  • Vente cialis
  • Levitra bon marche
  • Propecia en ligne
  • Viagra online
  • Buy cialis
  • Order Levitra
  • Buy propecia
  • Buy viagra
  • Cheap cialis
  • Cheap Levitra
  • propecia online
  • Viagra prescription
  • Cialis online
  • Buy Levitra
  • Order propecia