~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
..
compare0.xq 10582.2.75 11 years ago Markos Zaharioudakis merge from trunk 71 bytes Diff Download File
compare1.spec 10582.2.75 11 years ago Markos Zaharioudakis merge from trunk 50 bytes Diff Download File
compare1.xq 10582.2.75 11 years ago Markos Zaharioudakis merge from trunk 12 bytes Diff Download File
compareNaN.xq 10582.2.75 11 years ago Markos Zaharioudakis merge from trunk 179 bytes Diff Download File
fnboolean0.xq 10582.2.75 11 years ago Markos Zaharioudakis merge from trunk 126 bytes Diff Download File
ifthenelse0.xq 10582.2.75 11 years ago Markos Zaharioudakis merge from trunk 30 bytes Diff Download File
logic0.xq 10582.2.75 11 years ago Markos Zaharioudakis merge from trunk 95 bytes Diff Download File
nodecomp0.xq 10582.2.75 11 years ago Markos Zaharioudakis merge from trunk 13 bytes Diff Download File