• last updated 9 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
provide compatibility with AOLserver

make timeout cnd cache size configurable

follow usual naming conventions

    • -0
    • +23
    ./tcl/community-core-init.tcl
Pass to a ns_cache implementation to avoid race conditions

Implement acs_user:: cache through nsv, instead of the util_memoize cache. Note that now this information won't expire anymore unless explicitly flushed.

Remove unnecessary backslashes, remove leftover usages of get_from_username_not_cached cache, minimize catch wrapping

Reuse acs_user::get_by_username to retrieve user_id in order to reduce query duplication and cache entries for acs_user::get, simplify idiom

Prefer literal in adp axpressions + Whitespace changes

  1. … 29 more files in changeset.
Remove hardwired Yahoo spider handling from the request processor

Simplify expression

change capitalization for protocol name

improve spelling

  1. … 7 more files in changeset.
unify spelling of names

  1. … 3 more files in changeset.
exclude status code 200

fix typo

  1. … 1 more file in changeset.
improve wording

  1. … 4 more files in changeset.
fixing internal redirect to error pages from application packages

white space changes

allow access via automated testing also via standard login interface

Removed unused sql

Deprecate proc apm_pretty_name_for_db_type as is not used anywhere and also relies on questionable datamodel

make spelling of names more consistent

site-nodes cache reform: use ns_urlsspace instead of brute-force caching.

For OpenACS site with recent versions of NaviServer and XOTcl2,

cache sitenode information much more efficiently by the built-in

URL trie, which supports tree match operations, for

tree information. This means that for example for .vuh

handlers it is not necessary to cache the full url for

obtaining the site-node, like it was until now:

3839 id-/storage/view/installers/windows-installer/installer.htm

3839 id-/storage/view/aolserver/install.tgz

3839 id-/storage/view/tutorial/OpenACS_Tutorial.htm

3839 id-/storage/view/openacs-dotlrn-conference-2007-spring/Methodology_ALPE.pdf

3839 id-/storage/view/xowiki-resources/Assessment.jpg

3839 id-/storage/view/tutorial-page-map.png

...

Providing a single entry like

ns_urlspace set -key sitenode /storage/* 3839

is sufficient.

Why is this needed: current cache sizes of larger sites show 330K

(site A) and 390K (site B) cache entries. Matchbase flushes have to

gor thhrough all these entries, causing long lock times. Running

thhis code at OpenACS.org shows an improvement by a factor of more

than 200x.

    • -252
    • +343
    ./tcl/site-nodes-procs.tcl
Use proper thread cached variables instead of legacy proc

Deprecate proc 'apm_db_type_keys' as the info it provides is already in 'ad_known_database_types' without need for queries

TODO: find out if we really need a table of database types

Improve indentation, use non indentation-breaking idioms to create report string

TODO: refactor this bug-tracker dependency outside the core, e.g. using a callback

Revert massive replacement of empty list creation sentences. The use of '[list]' instead of '{}' adds semantics that could be used for performance improvements in the future, such as using a different internal representation. There is already work in this direction, avoiding the generation of the string representation during comparison of empty strings (huge thanks to Stefan Sobernig for the pointer: https://core.tcl.tk/tcl/info/44527c632ed609c2).

  1. … 461 more files in changeset.
Rework variable assigning loops (set -> lassign) + Whitespace changes

  1. … 12 more files in changeset.
improve CSP in accordance with Google's csp-evaluator.withgoogle.com

  1. … 1 more file in changeset.
Prefer 'lappend' to 'set ... concat' for appending elements to lists + Whitespace changes

  1. … 3 more files in changeset.
remove duplicated words

  1. … 9 more files in changeset.
Prefer '{}' to '[list]' when creating empty lists

  1. … 204 more files in changeset.