Forum OpenACS Q&A: Still using OACS 3.2.5...Upgrade? How?
How difficult would it be to move to the latest versions of
OACS, AOLserver, and Postgres?
I know that the newer versions of OACS have a new organizational and structural methods...
AND
We'd love to run our current base of code with MINIMAL changes.
Has this been done?
Is it doable?
Help Appreciated.
Thanks.
-Bob O
I've upgraded old systems to the latest AOLserver without much problem. There may be a few minor things you need to change but nothing serious comes to mind.
Upgrading OpenACS itself would be a big job I imagine, which is one of the reasons we haven't done it on certain clients.
I can't comment on Postgres unfortunately.
hope this helps!
Brian
Due to some corruption in the core data on one system, recently I chose to upgrade by exporting the application data, and then re-importing the data into a fresh OpenACS 5.5. This was possible because there were few active packages, and each package was not critically interdependent on core services (such as bugtracker/workflow).
Bulk exporting/importing was an easier process for me than messing with a corrupt/developer core. File-storage, photo-album and some other packages already have bulk export/import in CVS head.
It was still necessary to have a working original system during the re-fresh to check against, but an advantage included being able to use fresh permissions strategies.
I had a couple of 5.1 systems running on aolserver 4.5.1 and PG 82 (outside of the compatibility matrix bounds). It required exporting the pg db and re-importing in pg82, and applying the info from the old nsd.tcl file to the latest config.tcl. The system was not accessible to users, so I don't know how robust it was, but it seemed to work. There were obvious templating issues that would have needed to be addressed.
I believe acs-core has some serious changes between using aolserver 3 and 4.51. maybe they are avoidable with a early core?
cheers,
Torben
Much of the 3.2.5 code will work out of the box, but I am not sure of exactly which legacy code has been removed or disabled, but many of the old procs are still around.
This is encouraging... One more non-standard thing is that we have multiple separate sites on the same server/ip and use nsamain / nsvhr virtual server to do the serving.
Is there a new way to do virtual serving that might be better?
Is is possible to run apache on the same server?
Or
on the same server with a 2nd ip addy?
We are assuming that upgrading from a single processor
to a quad processor would be useful to AOLserver when it gets busy.
Thanks.
-Bob O
Pl direct me to the correct forum if this is not the correct one for my query below
--------------------------------------
I am new to Openacs trying find out its webframework features for my own interest.
However I am stymied by the problem of not being able to install the OpenAcs 5.6.0. for nearly a week. I had followed the instructions available for OpenAcs 5.6.0 in the OpenAcs site.
I have installed TCL 8,5,Aolserver 4.5 and Postgresql 8.4.3 on ubuntu Lucid Lynx (10.04 LTS).
Aolserver : /usr/local/aolserver
Postgresql : /usr/local/pgsql
TCL : /usr/local/aolserver
I have downloaded and installed Openacs 5.6.0 as per the instructions.
I am not able to access the http://myserver.test:8000 page, however http://localhost:8000/SYSTEM/success get loaded successfully.
I have installed all the SW on my HP Pavilion DV6 laptop
I have given config.tcl sections for db parameters after the log below.
I was able to access the postgres db schoolacs using /usr/bin/pgsql/bin/psql. I found that none of the tables /queries/packages related got loaded. This has happened on more than one occasion and the error log shows that no 'apm_packages' are loaded. I have not created any special tablespace for schoolacs db in postgres.There is only one db , hence I am not using the multi-db feature( this information I had gathered from other postings in the forum).
I am unable to resolve this error.
Request your help / feedback .....
Many Thanks,
Gunalan
The error.log is given below :
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: nsmain: AOLserver/4.5.1 starting
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: nsmain: security info: uid=1002, euid=1002, gid=1001, egid=1001
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: nsmain: max files: FD_SETSIZE = 1024, rl_cur = 1024, rl_max = 1024
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: encoding: loaded: utf-8
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: fastpath[schoolacs]: mapped GET /
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: fastpath[schoolacs]: mapped HEAD /
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: fastpath[schoolacs]: mapped POST /
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: adp[schoolacs]: mapped GET /*.adp
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: adp[schoolacs]: mapped HEAD /*.adp
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: adp[schoolacs]: mapped POST /*.adp
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: modload: loading '/usr/local/aolserver/bin/nssock.so'
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: modload: loading '/usr/local/aolserver/bin/nslog.so'
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: nslog: opened '/var/lib/aolserver/schoolacs/log/schoolacs.log'
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: modload: loading '/usr/local/aolserver/bin/nssha1.so'
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: modload: loading '/usr/local/aolserver/bin/nsdb.so'
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: modload: loading '/usr/local/aolserver/bin/nspostgres.so'
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: PostgreSQL loaded.
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading OpenACS, rooted at /var/lib/aolserver/schoolacs
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Sourcing /var/lib/aolserver/schoolacs/packages/acs-bootstrap-installer/bootstrap.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Bootstrap: sourcing /var/lib/aolserver/schoolacs/packages/acs-bootstrap-installer/tcl/00-proc-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Bootstrap: sourcing /var/lib/aolserver/schoolacs/packages/acs-bootstrap-installer/tcl/10-utilities-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Bootstrap: sourcing /var/lib/aolserver/schoolacs/packages/acs-bootstrap-installer/tcl/20-db-bootstrap-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Bootstrap: sourcing /var/lib/aolserver/schoolacs/packages/acs-bootstrap-installer/tcl/30-apm-load-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Bootstrap: sourcing /var/lib/aolserver/schoolacs/packages/acs-bootstrap-installer/tcl/40-db-query-dispatcher-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Database API: Config Path is: 'ns/server/schoolacs/acs/database'
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Database API: database_names values is: ''
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Database API: Default database (dbn) is: 'default'
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Database API : Old available pool 1
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Database API: Using ALL database pools for OpenACS.
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Database API: The following pools are available for OpenACS: subquery main log
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: dbdrv: opening database 'postgres:localhost:5432:schoolacs'
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Opening schoolacs on localhost
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Ns_PgOpenDb(postgres): Openned connection to localhost:5432:schoolacs.
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: dbdrv: opening database 'postgres:localhost:5432:schoolacs'
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Opening schoolacs on localhost
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Ns_PgOpenDb(postgres): Openned connection to localhost:5432:schoolacs.
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: dbdrv: opening database 'postgres:localhost:5432:schoolacs'
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Opening schoolacs on localhost
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Ns_PgOpenDb(postgres): Openned connection to localhost:5432:schoolacs.
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Bootstrap: Loading acs-tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/00-database-procs-postgresql.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/00-database-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/10-charset-compat-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/30-xml-utils-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/acs-kernel-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/acs-permissions-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/acs-private-data-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/ad-functional-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/admin-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/adp-parser-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/aolserver-3-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/apm-file-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/apm-install-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/apm-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/apm-xml-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/application-data-link-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/application-link-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/callback-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/community-core-2-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/community-core-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/defs-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/deprecated-utilities-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/document-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/ds-stub-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/exception-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/form-processing-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/html-email-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/http-auth-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/image-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/install-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/json-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/membership-rel-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/memoize-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/navigation-callback-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/navigation-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/object-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/object-type-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/openacs-kernel-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/parameter-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/pdf-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/proxy-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/request-processor-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/security-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/server-cluster-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/set-operation-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/site-node-apm-integration-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/site-node-object-map-procs.tcl
[16/Aug/2010:13:41:13][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/site-nodes-procs.tcl
[16/Aug/2010:13:41:14][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/sql-statement-procs.tcl
[16/Aug/2010:13:41:14][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/stack-trace-procs.tcl
[16/Aug/2010:13:41:14][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/table-display-procs.tcl
[16/Aug/2010:13:41:14][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/tcl-documentation-procs.tcl
[16/Aug/2010:13:41:14][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/tdom-procs.tcl
[16/Aug/2010:13:41:14][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/text-html-procs.tcl
[16/Aug/2010:13:41:14][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/user-extensions-procs.tcl
[16/Aug/2010:13:41:14][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/util-diff-procs.tcl
[16/Aug/2010:13:41:14][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/utilities-procs.tcl
[16/Aug/2010:13:41:14][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/whos-online-procs.tcl
[16/Aug/2010:13:41:14][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/widgets-procs.tcl
[16/Aug/2010:13:41:14][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/xml-0-sgml-procs.tcl
[16/Aug/2010:13:41:14][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/xml-1-dom-procs.tcl
[16/Aug/2010:13:41:14][3020.3078452928][-main-] Notice: Loading acs-tcl/tcl/xml-2-procs.tcl
[16/Aug/2010:13:41:14][3020.3078452928][-main-] Notice: Bootstrap: Installation is not complete - sourcing the installer.
[16/Aug/2010:13:41:14][3020.3078452928][-main-] Notice: Sourcing files for postload...
[16/Aug/2010:13:41:14][3020.3078452928][-main-] Notice: Done.
[16/Aug/2010:13:41:14][3020.3078452928][-main-] Notice: Executing initialization code blocks...
[16/Aug/2010:13:41:14][3020.3065916272][-default:0-] Notice: random: generating 1 seed
[16/Aug/2010:13:41:14][3020.3078452928][-main-] Notice: nsmain: AOLserver/4.5.1 running
[16/Aug/2010:13:41:14][3020.3078452928][-main-] Notice: nsmain: security info: uid=1002, euid=1002, gid=1001, egid=1001
[16/Aug/2010:13:41:14][3020.3078452928][-main-] Notice: driver: starting: nssock
[16/Aug/2010:13:41:14][3020.3069799280][-sched-] Notice: sched: starting
[16/Aug/2010:13:41:14][3020.3058535280][-nssock:driver-] Notice: starting
[16/Aug/2010:13:41:14][3020.3058535280][-nssock:driver-] Notice: nssock: listening on 127.0.0.1:8000
[16/Aug/2010:13:46:14][3020.3065916272][-default:0-] Error: Error sourcing /var/lib/aolserver/schoolacs/packages/acs-bootstrap-installer/installer/index.tcl:
invalid command name "ns_getform"
while executing
"ns_getform"
(procedure "ad_page_contract" line 302)
invoked from within
"ad_page_contract {
If no database driver is available, the acs-kernel libraries may not have
been loaded (which is fine, since index.tcl will..."
(file "/var/lib/aolserver/schoolacs/packages/acs-bootstrap-installer/installer/index.tcl" line 1)
invoked from within
"source $__file "
#################################
Config.tcl :
#################################
ns_log notice "nsd.tcl: starting to read config file..."
######################################################################
#
# Instance-specific settings
# These default settings will only work in limited circumstances
# Two servers with default settings cannot run on the same host
#
######################################################################
#---------------------------------------------------------------------
# change to 80 and 443 for production use
set httpport 8000
set httpsport 8443
# If setting port below 1024 with AOLServer 4, read comments in file:
# /var/lib/aolserver/service0/packages/etc/daemontools/run
# The hostname and address should be set to actual values.
# setting the address to 0.0.0.0 means aolserver listens on all interfaces
set hostname localhost
set address 127.0.0.1
# Note: If port is privileged (usually < 1024), OpenACS must be
# started by root, and, in AOLserver 4, the run script have a
# '-b address' flag which matches the address according to settings (above)
set server "schoolacs" ; # "service0"
set servername "New SchoolACS Installation - Development"
set serverroot "/var/lib/aolserver/${server}"; # "/var/www/${server}"
set database postgres
set db_name $server
set db_host localhost
set db_port 5432 ; # ""
set db_user $server
#---------------------------------------------------------------------
# if debug is false, all debugging will be turned off
set debug false
set homedir /usr/local/aolserver ;# /usr/lib/aolserver4
set bindir ${homedir}/bin
set max_file_upload_mb 5 ;# default 20
set max_file_upload_min 5
######################################################################
#
# End of instance-specific settings
#
# Nothing below this point need be changed in a default install.
#
######################################################################
#---------------------------------------------------------------------
#
# AOLserver's directories. Autoconfigurable.
#
#---------------------------------------------------------------------
# Where are your pages going to live ?
set pageroot ${serverroot}/www
set directoryfile index.tcl,index.adp,index.html,index.htm
#---------------------------------------------------------------------
#
# Database drivers
# The database driver is specified here.
# Make sure you have the driver compiled and put it in {aolserverdir}/bin
#
#---------------------------------------------------------------------
ns_section "ns/db/drivers"
ns_param postgres ${bindir}/nspostgres.so ;# Load PostgreSQL driver
# Database Pools: This is how AOLserver ``talks'' to the RDBMS. You need
# three for OpenACS: main, log, subquery. Make sure to replace ``yourdb''
# and ``yourpassword'' with the actual values for your db name and the
# password for it, if needed.
#
# AOLserver can have different pools connecting to different databases
# and even different different database servers. See
# https://openacs.org/doc/openacs-5-1/tutorial-second-database.html
ns_section ns/db/pools
ns_param main "main"
ns_param subquery "subquery"
ns_param log "log"
ns_section ns/db/pool/main
ns_param maxidle 1000000000
ns_param maxopen 1000000000
ns_param connections 15
ns_param verbose $debug
ns_param extendedtableinfo true
ns_param logsqlerrors $debug
ns_param driver postgres
ns_param datasource ${db_host}:${db_port}:${db_name}
ns_param user $db_user
ns_param password ""
ns_section ns/db/pool/subquery
ns_param maxidle 1000000000
ns_param maxopen 1000000000
ns_param connections 5
ns_param verbose $debug
ns_param extendedtableinfo true
ns_param logsqlerrors $debug
ns_param driver postgres
ns_param datasource ${db_host}:${db_port}:${db_name}
ns_param user $db_user
ns_param password ""
ns_section ns/db/pool/log
ns_param maxidle 1000000000
ns_param maxopen 1000000000
ns_param connections 5
ns_param verbose $debug
ns_param extendedtableinfo true
ns_param logsqlerrors $debug
ns_param driver postgres
ns_param datasource ${db_host}:${db_port}:${db_name}
ns_param user $db_user
ns_param password ""
#---------------------------------------------------------------------
# Global server parameters
#---------------------------------------------------------------------
ns_section ns/parameters
ns_param serverlog ${serverroot}/log/error.log
ns_param home ${serverroot}; # $homedir
# maxkeepalive is ignored in aolserver4.x
ns_param maxkeepalive 0
ns_param logroll on
ns_param maxbackup 5
ns_param debug $debug
# ns_param mailhost localhost
# setting to Unicode by default
# see http://dqd.com/~mayoff/encoding-doc.html
ns_param HackContentType 1
ns_param DefaultCharset utf-8
ns_param HttpOpenCharset utf-8
ns_param OutputCharset utf-8
ns_param URLCharset utf-8
#---------------------------------------------------------------------
# Thread library (nsthread) parameters
#---------------------------------------------------------------------
ns_section ns/threads
ns_param mutexmeter true ;# measure lock contention
# The per-thread stack size must be a multiple of 8k for AOLServer to run under MacOS X
ns_param stacksize [expr {128 * 8192}]
#
# MIME types.
#
ns_section ns/mimetypes
# Note: AOLserver already has an exhaustive list of MIME types:
# see: /usr/local/src/aolserver-4.{version}/aolserver/nsd/mimetypes.c
# but in case something is missing you can add it here.
ns_param Default */*
ns_param NoExtension */*
ns_param .pcd image/x-photo-cd
ns_param .prc application/x-pilot
ns_param .xls application/vnd.ms-excel
ns_param .doc application/vnd.ms-word
#---------------------------------------------------------------------
#
# Server-level configuration
#
# There is only one server in AOLserver, but this is helpful when multiple
# servers share the same configuration file. This file assumes that only
# one server is in use so it is set at the top in the "server" Tcl variable
# Other host-specific values are set up above as Tcl variables, too.
#
#---------------------------------------------------------------------
ns_section ns/servers
ns_param $server $servername
#
# Server parameters
#
ns_section ns/server/${server}
ns_param directoryfile $directoryfile
ns_param pageroot $pageroot
ns_param maxconnections 100 ;# Max connections to put on queue
ns_param maxdropped 0
ns_param maxthreads 10
ns_param minthreads 5
ns_param threadtimeout 120 ;# Idle threads die at this rate
ns_param globalstats false ;# Enable built-in statistics
ns_param urlstats true ; #false ;# Enable URL statistics
ns_param maxurlstats 1000 ;# Max number of URL's to do stats on
# ns_param directoryadp $pageroot/dirlist.adp ;# Choose one or the other
# ns_param directoryproc _ns_dirlist ;# ...but not both!
# ns_param directorylisting fancy ;# Can be simple or fancy
ns_param ConnsPerThread 50
# Aolserver 4.5 related
ns_pools set default -minthreads 5
ns_pools set default -maxthreads 10
ns_pools set default -maxconns 50
ns_pools set default -timeout 120
ns_log Notice "Default pool: [ns_pools get default]"
#
# Special HTTP pages
#
ns_param NotFoundResponse "/global/file-not-found.html"
ns_param ServerBusyResponse "/global/busy.html"
ns_param ServerInternalErrorResponse "/global/error.html"
ns_section ns/server/${server}/db
ns_param pools "*"
ns_param defaultpool main
#---------------------------------------------------------------------
#
# ADP (AOLserver Dynamic Page) configuration
#
#---------------------------------------------------------------------
ns_section ns/server/${server}/adp
ns_param map /*.adp ;# Extensions to parse as ADP's
# ns_param map "/*.html" ;# Any extension can be mapped
ns_param enableexpire false ;# Set "Expires: now" on all ADP's
ns_param enabledebug $debug ;# Allow Tclpro debugging with "?debug"
ns_param defaultparser fancy
ns_section ns/server/${server}/adp/parsers
ns_param fancy ".adp"
ns_section ns/server/${server}/redirects
ns_param 404 "global/file-not-found.html"
ns_param 403 "global/forbidden.html"
#
# Tcl Configuration
#
ns_section ns/server/${server}/tcl
ns_param library ${serverroot}/tcl
ns_param autoclose on
ns_param debug $debug
# Aolserver 4.5 addition
ns_param nsvbuckets 20 ;# no of buckets to hold nsv's
#---------------------------------------------------------------------
#
# Rollout email support
#
# These procs help manage differing email behavior on
# dev/staging/production.
#
#---------------------------------------------------------------------
ns_section ns/server/${server}/acs/acs-rollout-support
# EmailDeliveryMode can be:
# default: Email messages are sent in the usual manner.
# log: Email messages are written to the server's error log.
# redirect: Email messages are redirected to the addresses specified
# by the EmailRedirectTo parameter. If this list is absent
# or empty, email messages are written to the server's error log.
# filter: Email messages are sent to in the usual manner if the
# recipient appears in the EmailAllow parameter, otherwise they
# are logged.
# ns_param EmailDeliveryMode redirect
# ns_param EmailRedirectTo mailto:somenerd@yourdomain.test, mailto:othernerd@yourdomain.test
# ns_param EmailAllow mailto:somenerd@yourdomain.test,mailto:othernerd@yourdomain.test
#---------------------------------------------------------------------
#
# WebDAV Support (optional, requires oacs-dav package to be installed
#
#---------------------------------------------------------------------
ns_section ns/server/${server}/tdav
ns_param propdir ${serverroot}/data/dav/properties
ns_param lockdir ${serverroot}/data/dav/locks
ns_param defaultlocktimeout "300"
ns_section ns/server/${server}/tdav/shares
ns_param share1 "OpenACS"
ns_param share2 "Share 2 description"
ns_section ns/server/${server}/tdav/share/share1
ns_param uri "/dav/*"
# all WebDAV options
ns_param options "OPTIONS COPY GET PUT MOVE DELETE HEAD MKCOL POST PROPFIND PROPPATCH LOCK UNLOCK"
ns_section ns/server/${server}/tdav/share/share2
ns_param uri "/share2/path/*"
# read-only WebDAV options
ns_param options "OPTIONS COPY GET HEAD MKCOL POST PROPFIND PROPPATCH"
#---------------------------------------------------------------------
#
# Socket driver module (HTTP) -- nssock
#
#---------------------------------------------------------------------
ns_section ns/server/${server}/module/nssock
ns_param timeout 120
ns_param address $address
ns_param hostname $hostname
ns_param port $httpport
# setting maxinput higher than practical may leave the server vulnerable to resource DoS attacks
# see http://www.panoptic.com/wiki/aolserver/166
ns_param maxinput [expr {$max_file_upload_mb * 1024 * 1024}] ;# Maximum File Size for uploads in bytes
ns_param maxpost [expr {$max_file_upload_mb * 1024 * 1024}] ;# Maximum File Size for uploads in bytes
ns_param recvwait [expr {$max_file_upload_min * 60}] ;# Maximum request time in minutes
# maxsock will limit the number of simultanously returned pages,
# regardless of what maxthreads is saying
ns_param maxsock 100 ;# 100 = default
# On Windows you need to set this parameter to define the number of
# connections as well (it seems).
ns_param backlog 5 ;# if < 1 == 5
# Optional params with defaults:
ns_param bufsize 16000
ns_param rcvbuf 0
ns_param sndbuf 0
ns_param socktimeout 30 ;# if < 1 == 30
ns_param sendwait 30 ;# if < 1 == socktimeout
ns_param recvwait 30 ;# if < 1 == socktimeout
ns_param closewait 2 ;# if < 0 == 2
ns_param keepwait 30 ;# if < 0 == 30
ns_param readtimeoutlogging false
ns_param serverrejectlogging false
ns_param sockerrorlogging false
ns_param sockshuterrorlogging false
#---------------------------------------------------------------------
#
# Access log -- nslog
#
#---------------------------------------------------------------------
ns_section ns/server/${server}/module/nslog
ns_param debug false
ns_param dev false
ns_param enablehostnamelookup false
ns_param file ${serverroot}/log/${server}.log
ns_param logcombined true
ns_param extendedheaders COOKIE
# ns_param logrefer false
# ns_param loguseragent false
ns_param logreqtime true
ns_param maxbackup 1000
ns_param rollday *
ns_param rollfmt %Y-%m-%d-%H:%M
ns_param rollhour 0
ns_param rollonsignal true
ns_param rolllog true
#---------------------------------------------------------------------
#
# nsjava - aolserver module that embeds a java virtual machine. Needed to
# support webmail. See http://nsjava.sourceforge.net for further
# details. This may need to be updated for OpenACS4 webmail
#
#---------------------------------------------------------------------
#ns_section ns/server/${server}/module/nsjava
# ns_param enablejava off ;# Set to on to enable nsjava.
# ns_param verbosejvm off ;# Same as command line -debug.
# ns_param loglevel Notice
# ns_param destroyjvm off ;# Destroy jvm on shutdown.
# ns_param disablejitcompiler off
# ns_param classpath /usr/local/jdk/jdk118_v1/lib/classes.zip:${bindir}/nsjava.jar:${pageroot}/webmail/java/activation.jar:${pageroot}/webmail/java/mail.jar:${pageroot}/webmail/java
#---------------------------------------------------------------------
#
# CGI interface -- nscgi, if you have legacy stuff. Tcl or ADP files inside
# AOLserver are vastly superior to CGIs. I haven't tested these params but they
# should be right.
#
#---------------------------------------------------------------------
#ns_section "ns/server/${server}/module/nscgi"
# ns_param map "GET /cgi-bin ${serverroot}/cgi-bin"
# ns_param map "POST /cgi-bin ${serverroot}/cgi-bin"
# ns_param Interps CGIinterps
#ns_section "ns/interps/CGIinterps"
# ns_param .pl "/usr/bin/perl"
#---------------------------------------------------------------------
#
# PAM authentication
#
#---------------------------------------------------------------------
#ns_section ns/server/${server}/module/nspam
# ns_param PamDomain "pam_domain"
#---------------------------------------------------------------------
#
# OpenSSL for Aolserver 4
#
#---------------------------------------------------------------------
ns_section "ns/server/${server}/module/nsopenssl"
# Note this portion of the configuration is not perfect, and you
# will get errors in the your error.log. However, it does
# work. Fixes welcome.
# this is used by acs-tcl/tcl/security-procs.tcl to get the
# https port.
ns_param ServerPort $httpsport
# setting maxinput higher than practical may leave the server vulnerable to resource DoS attacks
# see http://www.panoptic.com/wiki/aolserver/166
# must set maxinput for nsopenssl as well as nssock
ns_param maxinput [expr {$max_file_upload_mb * 1024 * 1024}] ;# Maximum File Size for uploads in bytes
# We explicitly tell the server which SSL contexts to use as defaults when an
# SSL context is not specified for a particular client or server SSL
# connection. Driver connections do not use defaults; they must be explicitly
# specificied in the driver section. The Tcl API will use the defaults as there
# is currently no provision to specify which SSL context to use for a
# particular connection via an ns_openssl Tcl command.
ns_section "ns/server/${server}/module/nsopenssl/sslcontexts"
ns_param users "SSL context used for regular user access"
# ns_param admins "SSL context used for administrator access"
ns_param client "SSL context used for outgoing script socket connections"
ns_section "ns/server/${server}/module/nsopenssl/defaults"
ns_param server users
ns_param client client
ns_section "ns/server/${server}/module/nsopenssl/sslcontext/users"
ns_param Role server
ns_param ModuleDir ${serverroot}/etc/certs
ns_param CertFile certfile.pem
ns_param KeyFile keyfile.pem
# ns_param CADir ca-client/dir
# ns_param CAFile ca-client/ca-client.crt
# for Protocols "ALL" = "SSLv2, SSLv3, TLSv1"
ns_param Protocols "SSLv3, TLSv1"
ns_param CipherSuite "ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP"
ns_param PeerVerify false
ns_param PeerVerifyDepth 3
ns_param Trace false
# following from bartt's nsd4.tcl, might help stablize openssl connections?
# http://www.mail-archive.com/aolserver@listserv.aol.com/msg07092.html
ns_param SessionCache true
ns_param SessionCacheID 1
ns_param SessionCacheSize 512
ns_param SessionCacheTimeout 300
# ns_section "ns/server/${server}/module/nsopenssl/sslcontext/admins"
# ns_param Role server
# ns_param ModuleDir /path/to/dir
# ns_param CertFile server/server.crt
# ns_param KeyFile server/server.key
# ns_param CADir ca-client/dir
# ns_param CAFile ca-client/ca-client.crt
# for Protocols "ALL" = "SSLv2, SSLv3, TLSv1"
# ns_param Protocols "All"
# ns_param CipherSuite "ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP"
# ns_param PeerVerify false
# ns_param PeerVerifyDepth 3
# ns_param Trace false
ns_section "ns/server/${server}/module/nsopenssl/sslcontext/client"
ns_param Role client
ns_param ModuleDir ${serverroot}/etc/certs
ns_param CertFile certfile.pem
ns_param KeyFile keyfile.pem
# ns_param CADir ${serverroot}/etc/certs
# ns_param CAFile certfile.pem
# for Protocols "ALL" = "SSLv2, SSLv3, TLSv1"
ns_param Protocols "SSLv2, SSLv3, TLSv1"
ns_param CipherSuite "ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP"
ns_param PeerVerify false
ns_param PeerVerifyDepth 3
ns_param Trace false
# following from bartt's nsd4.tcl, might help stablize openssl connections?
# http://www.mail-archive.com/aolserver@listserv.aol.com/msg07092.html
ns_param SessionCache true
ns_param SessionCacheID 1
ns_param SessionCacheSize 512
ns_param SessionCacheTimeout 300
# SSL drivers. Each driver defines a port to listen on and an explitictly named
# SSL context to associate with it. Note that you can now have multiple driver
# connections within a single virtual server, which can be tied to different
# SSL contexts.
ns_section "ns/server/${server}/module/nsopenssl/ssldrivers"
ns_param users "Driver for regular user access"
# ns_param admins "Driver for administrator access"
ns_section "ns/server/${server}/module/nsopenssl/ssldriver/users"
ns_param sslcontext users
# ns_param port $httpsport_users
ns_param port $httpsport
ns_param hostname $hostname
ns_param address $address
# following added per
# http://www.mail-archive.com/aolserver@listserv.aol.com/msg07365.html
# Maximum File Size for uploads:
ns_param maxinput [expr {$max_file_upload_mb * 1024 * 1024}] ;# in bytes
# Maximum request time
ns_param recvwait [expr {$max_file_upload_min * 60}] ;# in minutes
# ns_section "ns/server/${server}/module/nsopenssl/ssldriver/admins"
# ns_param sslcontext admins
# ns_param port $httpsport_admins
# ns_param port $httpsport
# ns_param hostname $hostname
# ns_param address $address
#---------------------------------------------------------------------
# which modules should be loaded? Missing modules break the server, so
# don't uncomment modules unless they have been installed.
ns_section ns/server/${server}/modules
ns_param nssock ${bindir}/nssock.so
ns_param nslog ${bindir}/nslog.so
ns_param nssha1 ${bindir}/nssha1.so
ns_param nsdb ${bindir}/nsdb.so
# since aolserver version 4.5.1 built-in ns_cache, so we dont
# need to load the nscache module.
if {[ns_info version] < 4.5 || [ns_info patchlevel] eq "4.5.0"} {
ns_param nscache ${bindir}/nscache.so
}
# openacs versions earlier than 5.x requires nsxml
# ns_param nsxml ${bindir}/nsxml.so
#---------------------------------------------------------------------
# nsopenssl will fail unless the cert files are present as specified
# later in this file, so it's disabled by default
# ns_param nsopenssl ${bindir}/nsopenssl.so
# authorize-gateway package requires dqd_utils
# ns_param dqd_utils dqd_utils[expr {int($tcl_version)}].so
# Full Text Search
# ns_param nsfts ${bindir}/nsfts.so
# PAM authentication
# ns_param nspam ${bindir}/nspam.so
# LDAP authentication
# ns_param nsldap ${bindir}/nsldap.so
# These modules aren't used in standard OpenACS installs
# ns_param nsperm ${bindir}/nsperm.so
# ns_param nscgi ${bindir}/nscgi.so
# ns_param nsjava ${bindir}/libnsjava.so
# ns_param nsrewrite ${bindir}/nsrewrite.so
# nsthread library which should become standard in 5.3
# ns_param libthread [lindex [glob ${homedir}/lib/libnsthread*[info sharedlibextension]] 0]
if {[ns_info version] >= 4.5} {
ns_limits set default -maxupload [ns_config ns/server/${server}/module/nssock maxinput]
}
ns_log notice "nsd.tcl: using threadsafe tcl: [info exists tcl_platform(threaded)]"
ns_log notice "nsd.tcl: finished reading config file."
Please provide details on how you installed the Tcl + AOLserver bundle on your Ubuntu platform. My guess is (from reading the modified config.tcl) that you did not use the packaged versions (https://openacs.org/xowiki/ubuntu) but that you staged custom builts from the source distributions? If so, please provide the exact steps of compiling and installing Tcl + AOLserver.
As for the startup error:
[16/Aug/2010:13:46:14][3020.3065916272][-default:0-] Error: Error sourcing /var/lib/aolserver/schoolacs/packages/acs-bootstrap-installer/installer/index.tcl: invalid command name "ns_getform" while executing "ns_getform"
I think you continue using your 3.2.5 config.tcl under 5.6 which won't work. The most obvious problem to me, which relates to the above error condition (which occurs upon configuring a first connection thread), is that in the 3.2.5 config.tcl the Tcl thread extension (in contrast to AOLservers nsthread module) is not loaded:
(your config.tcl)
# nsthread library which should become standard in 5.3 # ns_param libthread [lindex [glob ${homedir}/lib/libnsthread*[info sharedlibextension]] 0]
(the current 5.6 config.tcl)
see e.g. http://fisheye.openacs.org/browse/OpenACS/openacs-4/etc/config.tcl?r=HEAD
ns_param libthread [lindex [glob ${homedir}/lib/thread*/libthread*[info sharedlibextension]] 0]
Did you install the Tcl thread extension? What were the installation instructions you followed?
Many Thanks for your time and the detailed reply.
Indeed I have custom installed/compiled Aolserver, Postgresql , TCLTK from the tar zips available for ubuntu lucid distro.
I have compiled TCLTK with --enable-threads option with location optionas /usr/local/aolserver.
I have compile Aolserver4.5.3 with location option as /usr/local/aolserver --with-tcl=/usr/local/aolserver.
The Postgresql install location is /usr/local/pgsql
I did not use the packages for 2 reasons 1. The install instructions re locations for AOLserver , Postgres & TCLTK have been changing from version to version of OpenAcs. I went by the locations in the earliest version of OpenAcs. 2. I am new to CVS or SVN and I did not want to search around for locations of bin,lib,include files.
As recommended by you I will try with config.tcl for OpenAcs5.6.
I will get back as soon as I am done...
Regards,
Gunalan
I have compiled and installed TCL 8.5.8 with the following options :
--prefix = /usr/local/aolserver
--enable-threads
--enable-shared
--enable-symbols
--enable-langinfo
I remember commenting the libthread option because it was giving mod-load error. Now I have restored it and the error is given below.
[18/Aug/2010:11:09:20][2088.3078702784][-main-] Notice: nsmain: AOLserver/4.5.1 starting
[18/Aug/2010:11:09:20][2088.3078702784][-main-] Notice: nsmain: security info: uid=1002, euid=1002, gid=1001, egid=1001
[18/Aug/2010:11:09:20][2088.3078702784][-main-] Notice: nsmain: max files: FD_SETSIZE = 1024, rl_cur = 1024, rl_max = 1024
[18/Aug/2010:11:09:20][2088.3078702784][-main-] Notice: encoding: loaded: utf-8
[18/Aug/2010:11:09:20][2088.3078702784][-main-] Notice: fastpath[schoolacs]: mapped GET /
[18/Aug/2010:11:09:20][2088.3078702784][-main-] Notice: fastpath[schoolacs]: mapped HEAD /
[18/Aug/2010:11:09:20][2088.3078702784][-main-] Notice: fastpath[schoolacs]: mapped POST /
[18/Aug/2010:11:09:20][2088.3078702784][-main-] Notice: adp[schoolacs]: mapped GET /*.adp
[18/Aug/2010:11:09:20][2088.3078702784][-main-] Notice: adp[schoolacs]: mapped HEAD /*.adp
[18/Aug/2010:11:09:20][2088.3078702784][-main-] Notice: adp[schoolacs]: mapped POST /*.adp
[18/Aug/2010:11:09:20][2088.3078702784][-main-] Notice: modload: loading '/usr/local/aolserver/bin/nssock.so'
[18/Aug/2010:11:09:20][2088.3078702784][-main-] Notice: modload: loading '/usr/local/aolserver/bin/nslog.so'
[18/Aug/2010:11:09:20][2088.3078702784][-main-] Notice: nslog: opened '/var/lib/aolserver/schoolacs/log/schoolacs.log'
[18/Aug/2010:11:09:20][2088.3078702784][-main-] Notice: modload: loading '/usr/local/aolserver/bin/nssha1.so'
[18/Aug/2010:11:09:20][2088.3078702784][-main-] Notice: modload: loading '/usr/local/aolserver/bin/nsdb.so'
[18/Aug/2010:11:09:20][2088.3078702784][-main-] Notice: modload: loading '/usr/local/aolserver/bin/nspostgres.so'
[18/Aug/2010:11:09:20][2088.3078702784][-main-] Notice: PostgreSQL loaded.
[18/Aug/2010:11:09:20][2088.3078702784][-main-] Notice: modload: loading '/usr/local/aolserver/lib/libnsthread.so'
[18/Aug/2010:11:09:20][2088.3078702784][-main-] Warning: modload: could not find Ns_ModuleInit in /usr/local/aolserver/lib/libnsthread.so
[18/Aug/2010:11:09:20][2088.3078702784][-main-] Fatal: modload: failed to load module '/usr/local/aolserver/lib/libnsthread.so'
Regards,
Gunalan
Tcl8.5 is installed in /usr/local/aolserver
Options used:
--prefix=/usr/local/aolserver
--enable-threads
--enable-shared
--enable-symbols
--enable-langinfor
Aolserver is installed in /usr/local/aolserver
options used for compiling :
--with-tcl=/usr/local/aolserver/lib
Posgresql is installed in /usr/local/pgsql
based on instructions in OpenAcs5.6.0 document
Postgres , Web user and group ids have been created as required and given ownership of /usr/local/pgsql
Pgclient and psql have been installed and are working fine
Openacs5.6.0 files are in /var/lib/aolserver/schoolacs
config file for aolserver is in /var/lib/aolserver/schoolacs/etc
schoolacs, web user and group ids own /var/lib/aolserver/schoolacs
I had the following error while re-installing TCL8.5.8 - just to be sure that I had compiled with --enable-shared and --enable-threads options.
exec.test
==== exec-9.7 commands returning errors FAILED
==== Contents of test case:
list [catch {exec [interpreter] "$path(sh)" -c "\"$path(echo)\" error msg 1>&2 ; \"$path(sleep)\" 1" | [interpreter] "$path(sh)" -c "\"$path(echo)\" error msg 1>&2 ; \"$path(sleep)\" 1"} msg] $msg
---- Result was:
1 {error msg}
---- Result should have been (exact matching):
1 {error msg
error msg}
==== exec-9.7 FAILED
execute.test
expr-old.test
expr.test
fCmd.test
fileName.test
fileSystem.test
for-old.test
for.test
foreach.test
format.test
get.test
history.test
http.test
Running httpd in thread 1081539440
httpold.test
if-old.test
if.test
incr-old.test
incr.test
indexObj.test
info.test
init.test
: Total 25 Passed 25 Skipped 0 Failed 0
interp.test
io.test
ioCmd.test
ioUtil.test
iogt.test
join.test
lindex.test
link.test
linsert.test
list.test
listObj.test
llength.test
load.test
lrange.test
lrepeat.test
lreplace.test
lsearch.test
lset.test
lsetComp.test
macOSXFCmd.test
macOSXLoad.test
main.test
mathop.test
misc.test
msgcat.test
namespace-old.test
namespace.test
notify.test
obj.test
opt.test
package.test
parse.test
parseExpr.test
parseOld.test
pid.test
pkg.test
: Total 384 Passed 384 Skipped 0 Failed 0
pkgMkIndex.test
platform.test
proc-old.test
proc.test
pwd.test
reg.test
regexp.test
regexpComp.test
registry.test
rename.test
result.test
safe.test
scan.test
security.test
set-old.test
set.test
socket.test
source.test
split.test
stack.test
string.test
stringComp.test
stringObj.test
subst.test
switch.test
tcltest.test
thread.test
timer.test
tm.test
trace.test
unixFCmd.test
unixFile.test
unixInit.test
unixNotfy.test
unknown.test
unload.test
uplevel.test
upvar.test
utf.test
util.test
var.test
while-old.test
while.test
winConsole.test
winDde.test
winFCmd.test
winFile.test
winNotify.test
winPipe.test
winTime.test
Tests ended at Wed Aug 18 11:51:33 IST 2010
all.tcl: Total 24472 Passed 23250 Skipped 1221 Failed 1
Sourced 137 Test Files.
Files with failing tests: exec.test
Number of tests skipped for each constraint:
9 !ieeeFloatingPoint
3 asyncPipeChan
76 bigEndian
1 dontCopyLinks
59 emptyTest
2 hasIsoLocale
1 impossible
27 knownBug
2 largefileSupport
100 localeRegexp
12 longIs64bit
14 macosxFileAttr
17 memory
40 nonPortable
265 notRoot
8 nt
1 testWinCPUID
7 testaccessproc
1 testexprparser && !ieeeFloatingPoint
8 testopenfilechannelproc
7 teststatproc
1 testwinclock
21 testwordend
3 unknownFailure
2 unthreaded
523 win
Regards,
Gunalan