• last updated 8 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Part 3 of scalability improvement: provide lock-free implementation of

ad_page_contract_filter_rules. If nothing bad shows up, the

underlaying nsv-arrays can be removed completely.

If one looks at the top 10 nsv mutex locks of a rather busy site

(nsd running for 3 days), one can see the ad_page_contract_filters

and ad_page_contract_filter_rules belong to the most frequent

mutex locks, which can be avoided at completely. These two

arrays make up of nearly 40% of the top 10 nsv locks.

ad_page_contract_filters 38042679

api_proc_doc 37717019

ad_page_contract_filter_rules 26036060

::xotcl::THREAD 18628540

OACS_FULLQUERIES 17771146

ds_properties 7855339

rp_extension_handlers 6837414

apm_subsite_packages_list 3524672

apm_reload_watch 3514474

apm_properties 3514472

    • -14
    • +21
    ./tcl/tcl-documentation-procs.tcl
Part 2 of scalability improvement: provide lock-free implementation of ad_page_contract_filters (*rules are still missing)

fix for backwards compatibility test for ns_reflow_text

fix documentation

Replace "wrap_string" by "ns_reflow_text", where the latter is a

builtin of newer versions of NaviServer. When "ns_reflow_text" is not

available, provide a scripted version for it.

wrap_string is marked as deprecated, since it has no proper prefix,

and is less powerful than ns_reflow_text

  1. … 15 more files in changeset.
Improve scalability by reducing the number of locks on ad_page_contract_filters (this nsv receives the most locks on e.g. openacs.org)

    • -14
    • +22
    ./tcl/tcl-documentation-procs.tcl
Use acs_magic_object instead of acs_lookup_magic_object

reduce stress on util_memoize cache by using per-thread cache for magic objects

reduce stress on util_memoize_cache by using per-thread cache for acs::version number

complete truncated file

factor out naviserver and aolserver specific code

    • -0
    • +283
    ./tcl/utilities-procs-aolserver.tcl
    • -0
    • +191
    ./tcl/utilities-procs-naviserver.tcl
Factor out code for navisever and aolserver

    • -0
    • +120
    ./tcl/memoize-procs-aolserver.tcl
    • -0
    • +117
    ./tcl/memoize-procs-naviserver.tcl
fix internal redirection to beautified error pages in connection with host-node-mapped subsites

clean up expression: no need to use backslashes in tcl expression

Portrait management reform and correction

Moved logics to create a portrait in a proc in order to reuse it in other places

such as picture retrieval services (e.g. Bach picture retrieval at WU). Turns out

we were not doing our homeworks here: when the portrait is created into CR, a

cr_child_rel is created. When the portrait was erased though, this was not cleaned

up propely, leaving dangling acs_objects with no reference in cr_child_rels table.

On busy sites, this can grow in the ten thousands order of magnitude. Changes include

also fix for this behavior and tuples cleanup.

    • -1
    • +14
    ./tcl/community-core-procs-oracle.xql
    • -0
    • +16
    ./tcl/community-core-procs-postgresql.xql
  1. … 13 more files in changeset.
provide more feedback when tdom parsing fails

fix typo

  1. … 1 more file in changeset.
add oneof(red|green|blue) to page filters

add text/markdown to the accepted text formats of the richtext widget and ad_html_text_convert

  1. … 4 more files in changeset.
remove not referened xql queries and files

move queries to deprecated-procs.xql

    • -15
    • +0
    ./tcl/request-processor-procs-oracle.xql
    • -13
    • +0
    ./tcl/request-processor-procs-postgresql.xql
fix typo

remove referenced SQL function

    • -7
    • +0
    ./tcl/acs-permissions-procs-oracle.xql
    • -6
    • +0
    ./tcl/acs-permissions-procs-postgresql.xql
make code uniform

Use ad_with_deprecated_code_p to control loading of deprecated code.

Bump version number to 5.10.0d4

bump version number to allow to "upgrade from repository" to fix bugs

Fix for bug #3335 (as suggested by Michael Aram)

Use consistently ad_script_abort after ad_return_error.

remove unneeded "ns_conn close" operations (connections are already closed by prior commands).

remove obsolete files

rename deprecated-utility-procs.xql to deprecated-procs.xql

    • -0
    • +18
    ./tcl/deprecated-procs.xql
    • -18
    • +0
    ./tcl/deprecated-utilities-procs.xql