• last updated 8 hours ago
Constraints: committers
Constraints: files
Constraints: dates
Reform of site-nodes-procs

- made XOTcl2 based implementation of site-nodes usable during

initial bootstrap

- made new site-node cache implementation working for Oracle

- now, the same code works during bootstrap, for PostgreSQL and Oracle

and independent of xotcl-core being installed or not.

- removed old and broken nsv-based site-node cache

- reduced need of .xql files (removed query for delete.delete_site_node)

- moved deprecated calls to deprecated-procs.tcl

This change make the code much clearer and eases maintenance and debugging.

  1. … 3 more files in changeset.
improve comment

fix wrong name (not sure, why i have not noticed this earlier)

perform also sitewide flushes for urspace based site-node cache

  1. … 1 more file in changeset.
fix case where the manual slash-parsing in the sitenode code is confused with percent-substitutions

This is just a "quick fix", since the Proper solution in more complex:

# A URL path /%2f/ is syntactically permissible,

# but this is not supported in the current site-nodes code. It

# would be correct, to avoid the parsing of the slashes here and

# to process instead the result of [ns_conn urlv], which is

# already parsed (before the percent substitutions). This would

# probably require the request processor to perform some mangling

# of urlv in vhost cases to set a a proper [ad_conn urlv] ... and

# of course to pass the "urlv" instead of the "url" to the

# slash-parsing functions.

added minor debugging aids, make disk-cache more similar to ns_cache

  1. … 2 more files in changeset.
Fix typos (many thanks to Nathan Coulter)

Fix typo, many thanks to Nathan Coulter

Make api public, complies with acs-api-browser.graph__bad_calls automated test

  1. … 1 more file in changeset.
avoid array notation for per_thread caches to ease flushing

  1. … 5 more files in changeset.
reduce verbosity

Prefer 'namespace which' over 'info commands', as it is faster (on local tests, around 2x) and returns a single value. Many thanks to Nathan Coulter.

  1. … 58 more files in changeset.
Whitespace cleanup

Improve sql portability

  1. … 6 more files in changeset.
Avoid the not portable limit idiom, just kill the recursive part using the flag instead

...although one should point out that Oracle does not support the boolean type...

Maintain also the has_child cache when mounting a package

Fix typo

cache method "has_children" to avoid frequent (but cheap) DB calls

introduced "ad_file" as a means to avoid unexpected tilde substitution in file names

  1. … 50 more files in changeset.
improve comments

  1. … 1 more file in changeset.
acs::per_request_cache: standardize per-request caching

- added per-request cache verfsy similar to acs::per_thread_cache

- use per-request-cache on several occasions

- bump version number of acs-tcl to 5.10.0d35

  1. … 9 more files in changeset.
fix broken dict

delete cut&pate error

added per-thread caching for "static" sitenotes. In case these will change (never saw a system where this happend), either a broadcast flush or a restart is needed.

whitespace and spelling changes

Added HashKeyPartitionedCache:

This is type of cache is like a "KeyPartitionedCache" but works as

well with strings as keys while the "KeyPartitionedCache" requires numeric


  1. … 2 more files in changeset.
flush per_request_cache also when patterns are flushed

reduce verbosity

Fix typo

fix typo