ANGEL APPLICATION version 0.4.5 is disengaged into the hands of Angels!
This is another technical blow with regard to performance and stability in the 0.4 series of releases. The previous improvements have additionally been refined. It can be said with certainty that this release is the fastest ever. However, not much has happened in terms of visibility for end-users.
It should be noted that these performance enhancements are serving an important purpose: the expected lifetime theta of the ARCANUM CAPSULES stored in the ANGEL network is directly connected with the time dt needed to replace a bad medium with a good one (and replicate the content to it) . The formula to calculate the lifetime is:
Previous versions of the ANGEL APPLICATION (< 0.4.3) took about 10 days (in practice) to replicate and validate the current dataset in the ANGEL network, giving a lifetime of 4.13e8 years, which is about 5% of the current estimated age of the universe. This, obviously, is not good enough!
The improvements in the new version (0.4.5) make this number jump back to a sane value, namely 1.43e18 years, a number with 10 more zeros than the old version, surpassing the estimated age of the universe by the range of 100 million times. etoy.CORPORATION is back in eternity business.
For the nerds, here is the technical changelog:
- on Mac OS X, the main window can now be closed without quitting the application (just for you agent.MONOROM ;-) )
- mounting missioneternity.org is not forced in a hidden way anymore. Instead, on GUI startup, a check is performed that asks the end-user if he wants to become an ANGEL by backing up missioneternity data. This only happens on fresh installations.
- added menu Help->Version History
- added angel_app.worker, which implements boiled down map/reduce functionality
- html directory listing changed to be more independant of the missioneternity.org website (css) and made it look more like a "technical" listing as opposed to looking like being part of the website
- when syncing a collection that already exists, only sync the metadata
- error handling refinements
- optimized resource inspection by parallelizing network requests
- optimized broadcast: parallelize broadcasting, essentially scaling O(1) instead of O(n). This saves about 1 hour per tree traversal right now. Also, only broadcasts to reachable clones that don't have the local node.
- stability fixes in DirectoryDeadPropertyStore (file transactions and broken metadata)
- optimized PROPPATCH: do not pingBack() to self
- optimized PROPPATCH: use byte range based validation instead of full validation
- optimized clone DNS resolution: resolve IP of local nodename, resolve all clone hostnames and check for IP doubles
- added new config option to enable/disable parallelization in network requests, default on (common.workerforking = bool)
- added new config variable in section 'common': 'repository-tmp'. This variable holds absolute paths, is optional and only relevant if you put the repository on a different mount point than angelHome. Atomic file renames cannot be done cross-device.
A download is available at http://angelapp.missioneternity.org/index.py/Download.
 Technical Report, Eternal Storage in Social Networks: MISSION ETERNITYs Angel-Application