~zorba-coders/zorba/trunk

  • Committer: Zorba Jenkins
  • Author(s): Federico Cavalieri
  • Date: 2014-04-29 20:37:35 UTC
  • mfrom: (11714.2.7 feature-caching-annotations)
  • Revision ID: jenkins@lambda.nu-20140429203735-mgu2acarnn71p66l
Greatly improved function caching.

* Changed function annotations:
  - %an:deterministic: disables caching (previously %an:no-cache)
  - %an:strictlydeterministic: enables caching for deterministic and non-deterministic functions. Cache is only within the same snapshot.
  - %an:cache enables caching  for deterministic, non-deterministic and sequential functions. Caches is across snapshots. (unchanged)
  - %an:exclude-from-cache-key(n) specifies that a function argument has to be ignored when computing the cache key
  - %an:compare-with-deep-equal(n) specifies that a function argument has to be compared with deep-equal semantics
  
* Changed criteria for default annotations of internal and external functions:
  - Functions which have no %an:deterministic, %an:nondeterministic or %an:strictlydeterministic annotations and all their parameter and the return types are atomics are now automatically annotated %an:strictlydeterministic
  - All the other functions are annotated %an:deterministic
* Added snapshot id in global dynamic context
* Added dynamic context xquery module
* Added strict equality hashmap
* Reimplemented %an:cache
* Enabled caching for function that have non atomic arguments
* Whenever the eager evaluation of a function arguments raises an error, the evaluation is retried without cache. The function cache is then disabled if it was automatically detected.
Approved: Matthias Brantner, Federico Cavalieri
Filename Latest Rev Last Changed Committer Comment Size
..
5890.xml 10582.2.75 11 years ago Markos Zaharioudakis merge from trunk 12.9 KB Diff Download File
5890.xq 10582.2.75 11 years ago Markos Zaharioudakis merge from trunk 462 bytes Diff Download File
6123.xml 10582.2.75 11 years ago Markos Zaharioudakis merge from trunk 226 bytes Diff Download File
6123.xq 10582.2.75 11 years ago Markos Zaharioudakis merge from trunk 1 KB Diff Download File
8819.xq 10582.2.75 11 years ago Markos Zaharioudakis merge from trunk 1.4 KB Diff Download File
8856.xq 10582.2.75 11 years ago Markos Zaharioudakis merge from trunk 120 bytes Diff Download File