• last updated 1 hour ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates

1. Changed a lot of package info files to fix problems ...

2. Added Vinod's bboard patch

3. Rationalized party e-mail checking by putting a "before insert or update"

trigger on the table that lower-cases email (this was already done by the

party.new() func but at least one update missed this). Got rid of all

"lower(email) = " and "upper(email) = " checks and just made all use the

db email column directly and lower-cased Tcl vars. In this way the index

on the email column is always and consistently used without needing to

define functional indexes on the column (an EE feature for Oracle).

4. Rationalized naming of a couple of workflows and fixed a glossary PG bug

where apparently its workflow got overwritten by one from the CMS at some

point in time.

5. Made the .cmp/.dat/.frm filters in the template code usable though not

very beautiful nor exactly correct. But with practice you can use them

to debug pages in the packages/* hierarchy. I also turned these off by

default as there's no need to run these filters on a production site!

6. Performed minor surgery on templating, including adding a new

"ad_return_exception_template" that allows you to return a templated

error page and aborts the script.

7. ??? probably but I think this covers most stuff.

  1. … 70 more files in changeset.
if there is a return_url use it before the email page is presented, maybe the programmer wants this behaviour

Added C. R. Oldham's patch to fix membership testing (unimplemented in ACS

4.2). Ported it to PG on the way ...

  1. … 9 more files in changeset.
patch 157 applied

fixed up uniqueness of package_key

yet another .tcl extension removal from links

  1. … 1 more file in changeset.
removed .tcl extension from redirects

fixed some unported queries from the old code, scary!!!

    • -1
    • +13
    ./users/member-state-change-postgresql.xql
applied patches 145,146,148, ignore patch 147. Patches by Gilbert Wonf. Fixes problems with email verification

    • -1
    • +1
    ./users/member-state-change-oracle.xql
    • -6
    • +10
    ./users/member-state-change-postgresql.xql
cleaned up and fixed some bugs

    • -49
    • +0
    ./users/member-state-change-postgresql.xql
  1. … 2 more files in changeset.
added referer variable so that i can use this code as a plug-in

Fixed the 4K character limit on session properties for Oracle by making an

optional "clob" value available. The APM wouldn't let me load any packages

when I added all the dotLRN packages plus standard packages over to a new

"dotlrn" user from my normal "acs" user - the list of packages grew to

> 4KB in size! Grrrr!

  1. … 5 more files in changeset.

After importing openacs.org users, forums and messages I discovered that it

took literally several minutes to load the APM's home page. This was due

to a rather stupid subselect of the form:

select count(*)

from content_revisions r

where r.revision_id = content_item.get_latest_revision(item_id)

where item_id comes from the package versions table.

It's stupid in both PG and Oracle because get_latest_revision already

joins the latest_revision_id value from cr_items with the content

revisions table thus a simple check for a null return by get_latest_revision

would be sufficient.

It's *really* stupid in Oracle because Oracle won't use the index on

revision_id when checking NULLs so we get two sequential scans of the

cr_revisions table tucked into that one itty-bitty subquery (itself called

once for each package version in ths system).

Which explains why I hadn't noticed it while working on scalability testing

in PG - PG uses the index because its btree index structure handles NULLs.

Meaning this query only fell apart at a rate of O(log2(R)) rather than O(R)

as in Oracle (R being the number of revision objects in the system).

My solution was to rewrite the subselect using "case" rather than "count(*)"

and also to speed up get_latest_revision by having it check for NULL and

return NULL immediately rather than execute the query (in PG this is

accomplished by declaring the function "isstrict", and the executor won't

even call the function if the argument's NULL, making it REALLY fast!).

  1. … 2 more files in changeset.

1. Modified the Javascript "check/uncheck all boxes" code in the APM

package install page so that it still works if javascript's disabled.

2. Slight rewrite of a view in bboard.

3. Skin works in OpenACS Oracle/PG - changed info file to reflect this.

4. Added clean error handling to wimpy point attachment upload page.

  1. … 3 more files in changeset.
Implement check/uncheck all with Javascript (SDM patch #86)

Add ad_return_top_of_page to pages which start with an ns_write to

make sure HTTP headers get returned

Bootstrap installer was installing packages that don't work with the

current RDBMS (search vs. Oracle in particular)

  1. … 2 more files in changeset.

1. Fixed APM bug - updating a package failed due to an unported query.

2. Updated the version number for version control.

    • -0
    • +15
    ./apm/packages-install-3-oracle.xql
    • -0
    • +15
    ./apm/packages-install-3-postgresql.xql
  1. … 2 more files in changeset.

Fixed a couple of minor problems:

1. A typo in version-edit-2 that didn't really impact anything

2. A "triggered data change" error caused by apm-create.sql

3. restore-user flat-out didn't work and aD had never tested it

  1. … 2 more files in changeset.

Fixed db_blob_get for PG, and got rid of db_continue_transaction, which we

can no longer support because PG automatically aborts a transaction after an

error.

  1. … 4 more files in changeset.
*** empty log message ***

  1. … 4 more files in changeset.

A bunch of "ACS"->"OpenACS" and similar changes

  1. … 27 more files in changeset.

Started on address book, still a lot of work to do.

made minor improvements to "packages-install" in the APM.

  1. … 15 more files in changeset.

1. Fixed a bug in the oracle version of acs-mail-nt-create.sql

2. Fixed a bug in the oracle version of the APM - a standard SQL92

left join was being executed rather than the nasty Oracle-specific

notation.

3. Futzed with the APM a bit - you can now only set "watch" commands on

those .xql files which are used by the current installation, you can

only install packages supported by the current installation's RDBMS.

  1. … 7 more files in changeset.

Oops - Vinod caught the fact that only the standard SQL92 version of the

query "apm_all_files" existed in a query file ...

    • -0
    • +17
    ./apm/version-files-oracle.xql

1. Fixed a couple of .info files

2. Got rid of Ben's hack to always reload query files before doing a query

mapping. He did this so you wouldn't have to reboot AOLserver every

time you change query files. It was a short-term hack but unfortunately

it looped virgin installs.

3. Added code to the APM to make the "watch" feature work with query files

as well as library files. This makes Ben's hack mentioned above

unnecessary.

  1. … 7 more files in changeset.

Built two query snippets using "db_map". They weren't db specific so we

now have a generic index.xql file...

catchall

  1. … 2 more files in changeset.

Added calls to Dan's new "db_map" routine to make db-specific queries in

the apm index page work.

cleaned up content repository data-model and converted oracle apm to use file storage in the content repository

  1. … 11 more files in changeset.