Index: openacs-4/packages/acs-bootstrap-installer/installer/install-data-model.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-bootstrap-installer/installer/Attic/install-data-model.tcl,v diff -u -r1.8 -r1.9 --- openacs-4/packages/acs-bootstrap-installer/installer/install-data-model.tcl 17 May 2003 09:40:03 -0000 1.8 +++ openacs-4/packages/acs-bootstrap-installer/installer/install-data-model.tcl 12 Jul 2003 01:10:35 -0000 1.9 @@ -28,7 +28,7 @@
 "
 cd [file join [acs_root_dir] packages acs-kernel sql [db_type]]
-db_source_sql_file -callback apm_dummy_callback "acs-kernel-create.sql"
+db_source_sql_file -callback apm_ns_write_callback acs-kernel-create.sql
 
 # DRB: Now initialize the APM's table of known database types.  This is
 # butt-ugly.  We could have apm-create.sql do this but that would mean
Index: openacs-4/packages/acs-bootstrap-installer/tcl/30-apm-load-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/acs-bootstrap-installer/tcl/30-apm-load-procs.tcl,v
diff -u -r1.18 -r1.19
--- openacs-4/packages/acs-bootstrap-installer/tcl/30-apm-load-procs.tcl	19 May 2003 10:05:28 -0000	1.18
+++ openacs-4/packages/acs-bootstrap-installer/tcl/30-apm-load-procs.tcl	12 Jul 2003 01:10:35 -0000	1.19
@@ -46,6 +46,7 @@
 
     
  1. Files with extension .sql are considered data-model files, +
  2. Files with extension .csv are considered comma-separated values files. or if any path contains the substring upgrade, data-model upgrade files.
  3. Files with extension .sqlj are considered sqlj_code files. @@ -109,6 +110,8 @@ } else { set type "data_model" } + } elseif { [string equal $extension ".csv"] } { + set type "csv_data" } elseif { [string equal $extension ".sqlj"] } { set type "sqlj_code" } elseif { [string equal $extension ".info"] } { @@ -193,6 +196,7 @@ set file_db_type [apm_guess_db_type $package_key $rel_path] set type_match_p [expr [empty_string_p $file_types] || [lsearch $file_types $file_type] != -1] + if { $all_db_types_p } { set db_match_p 1 } else { @@ -307,6 +311,9 @@ set sql_index [lsearch $components "sql"] if { $sql_index >= 0 } { set db_dir [lindex $components [expr $sql_index + 1]] + if { [string equal $db_dir "common"] } { + return "" + } foreach known_database_type [db_known_database_types] { if { [string equal [lindex $known_database_type 0] $db_dir] } { return $db_dir Index: openacs-4/packages/acs-events/sql/oracle/timespan-create.sql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-events/sql/oracle/timespan-create.sql,v diff -u -r1.1 -r1.2 --- openacs-4/packages/acs-events/sql/oracle/timespan-create.sql 13 Jul 2001 02:00:30 -0000 1.1 +++ openacs-4/packages/acs-events/sql/oracle/timespan-create.sql 12 Jul 2003 01:10:35 -0000 1.2 @@ -40,6 +40,8 @@ check(start_date <= end_date) ); +create index time_intervals_start_idx on time_intervals(start_date); + comment on table time_intervals is ' A time interval is represented by two points in time. '; Index: openacs-4/packages/acs-events/sql/postgresql/timespan-create.sql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-events/sql/postgresql/timespan-create.sql,v diff -u -r1.2 -r1.3 --- openacs-4/packages/acs-events/sql/postgresql/timespan-create.sql 17 May 2003 09:46:57 -0000 1.2 +++ openacs-4/packages/acs-events/sql/postgresql/timespan-create.sql 12 Jul 2003 01:10:36 -0000 1.3 @@ -30,6 +30,8 @@ check(start_date <= end_date) ); +create index time_intervals_start_idx on time_intervals(start_date); + comment on table time_intervals is ' A time interval is represented by two points in time. '; Index: openacs-4/packages/acs-kernel/sql/postgresql/utilities-create.sql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-kernel/sql/postgresql/utilities-create.sql,v diff -u -r1.2 -r1.3 --- openacs-4/packages/acs-kernel/sql/postgresql/utilities-create.sql 20 Mar 2001 06:02:57 -0000 1.2 +++ openacs-4/packages/acs-kernel/sql/postgresql/utilities-create.sql 12 Jul 2003 01:10:36 -0000 1.3 @@ -8,30 +8,6 @@ -- @cvs-id utilities-create.sql,v 1.3 2000/11/02 17:55:51 yon Exp -- --- create or replace package util --- as --- function multiple_nextval( --- v_sequence_name in varchar2, --- v_count in integer) --- return varchar2; --- --- function computehash_raw( --- v_value IN varchar2 ) --- return raw; --- --- function computehash( --- v_value IN varchar2) --- return varchar2; --- --- function logical_negation ( --- true_or_false IN varchar2) --- return varchar2; --- end util; - --- show errors - --- create or replace package body util --- function multiple_nextval create function util__multiple_nextval (varchar,integer) returns varchar as ' declare @@ -52,47 +28,6 @@ end;' language 'plpgsql'; - -- This is for Password Hashing. - -- Make sure to run: 'loadjava -user username/password Security.class' - -- before running this. - -- Make sure you have javasyspriv and javauserpriv granted for the user. - --- function computehash_raw( v_value IN varchar2 ) --- return raw --- as language java --- name 'Security.computeSHA(java.lang.String) returns java.lang.byte[]'; - -create function RAWTOHEX(text) returns text as ' -declare - arg alias for $1; -begin - raise exception ''not implemented yet: depends on java code in acs classic''; - return ''''; -end;' language 'plpgsql'; - - -create function util__computehash_raw(text) returns text as ' -declare - arg alias for $1; -begin - raise exception ''not implemented yet: depends on java code in acs classic''; - return ''''; -end;' language 'plpgsql'; - - - -- The hashing function can be changed to MD5 by using computeMD5. - -create function util__computehash (varchar) returns varchar as ' -declare - v_value alias for $1; - v_hashed char(40); -begin - select RAWTOHEX(util__computehash_raw(v_value)) into v_hashed; - - return v_hashed; -end;' language 'plpgsql'; - - create function util__logical_negation (boolean) returns boolean as ' declare true_or_false alias for $1; Index: openacs-4/packages/acs-lang/tcl/lang-catalog-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-lang/tcl/lang-catalog-procs.tcl,v diff -u -r1.16 -r1.17 --- openacs-4/packages/acs-lang/tcl/lang-catalog-procs.tcl 29 Jun 2003 23:32:23 -0000 1.16 +++ openacs-4/packages/acs-lang/tcl/lang-catalog-procs.tcl 12 Jul 2003 01:10:36 -0000 1.17 @@ -115,10 +115,8 @@ # Parse the xml document set tree [xml_parse -persist $catalog_file_contents] -ns_log notice "Huh? tree: $tree" # Get the message catalog root node set root_node [xml_doc_get_first_node $tree] -ns_log notice "Huh? root_node: $root_node name: [xml_node_get_name $root_node]" if { ![string equal [xml_node_get_name $root_node] ${MESSAGE_CATALOG_TAG}] } { error "lang::catalog_parse: Could not find root node ${MESSAGE_CATALOG_TAG}" } Index: openacs-4/packages/acs-service-contract/tcl/acs-service-contract-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-service-contract/tcl/acs-service-contract-procs.tcl,v diff -u -r1.13 -r1.14 --- openacs-4/packages/acs-service-contract/tcl/acs-service-contract-procs.tcl 29 Jun 2003 23:32:23 -0000 1.13 +++ openacs-4/packages/acs-service-contract/tcl/acs-service-contract-procs.tcl 12 Jul 2003 01:10:36 -0000 1.14 @@ -265,7 +265,6 @@ # MAYBE NOT, THE SEMANTICS MIGHT REQUIRE TO CALL # THE FUNCTION ONLY IF THE IMPLEMENTATION IS SUPPORTED. ns_log warning "ACS-SC: Function Not Found: $proc_name [info procs $proc_name]" -ns_log Notice "Huh? $contract $impl $operation" return } } Index: openacs-4/packages/acs-tcl/tcl/request-processor-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-tcl/tcl/request-processor-procs.tcl,v diff -u -r1.39 -r1.40 --- openacs-4/packages/acs-tcl/tcl/request-processor-procs.tcl 4 Jul 2003 00:35:03 -0000 1.39 +++ openacs-4/packages/acs-tcl/tcl/request-processor-procs.tcl 12 Jul 2003 01:10:36 -0000 1.40 @@ -554,14 +554,15 @@ } } - # DRB: a bug in ns_conn causes urlc to be set to one and urlv to be set to + # DRB: a bug in ns_conn causes urlc to be set to one greater than the number of URL + # directory elements and the trailing element of urlv to be set to # {} if you hit the site with the host name alone. This confuses code that - # expects urlc to be set to zero and the empty list. This bug is probably due - # to changes in list handling in Tcl 8x vs. Tcl 7x. + # expects urlc to be set to the length of urlv and urlv to have a non-null + # trailing element except in the case where urlc is 0 and urlv the empty list. - if { [ad_conn urlc] == 1 && [lindex [ad_conn urlv] 0] == "" } { - ad_conn -set urlc 0 - ad_conn -set urlv [list] + if { [lindex [ad_conn urlv] end] == "" } { + ad_conn -set urlc [expr [ad_conn urlc] - 1] + ad_conn -set urlv [lrange [ad_conn urlv] 0 [expr {[llength [ad_conn urlv]] - 2}] ] } rp_debug -ns_log_level debug -debug t "rp_filter: setting up request: [ns_conn method] [ns_conn url] [ns_conn query]"