Forum OpenACS Q&A: Re: Debugging Tcl

Collapse
3: Re: Debugging Tcl (response to 1)
Posted by Gustaf Neumann on
One has to distinguish between "web pages" and "API":
  • "web pages" are interpreted on the fly. These are located roughly speaking in the "*/www/*" libraries of the server or the package. Also included parts of a page are (located typically in */lib/*) are loaded this way (see [1,2]).
  • API: The definitions of the OpenACS API are reloaded upon request by a site-wide admin, typically via /acs-admin/apm/. It is possible to check for all changed files, or to reload the code package-wise. It is also possible to watch files (i.e. to reload these files automatically, when these are changed).

In rare situations, it is necessary to restart the server including

  • version upgrades
  • code which a loaded explicitly only once such as content of */tcl/*-init.tcl files
  • code in special purpose threads (scheduled procedures) in versions up to OpenACS 5.9.1. This has changed in the forthcoming OpenACS 5.10.* version (see dynamic reloading reform in [3])

[1] https://openacs.org/doc/packages
[2] https://openacs.org/doc/acs-templating/guide/composite
[3] https://openacs.org/xowiki/openacs-todo