Forum OpenACS Q&A: possable install, probably my fault.

Collapse
Posted by Marc Spitzer on
Here is some background:
OS Freebsd 4.6
database postgres 7.2.1
here is the first problem I get when installing:
[07/Jul/2002:02:33:21][402.136237056][-conn4-] Notice: Scanning for
new unregistered packages...
[07/Jul/2002:02:33:21][402.136237056][-conn4-] Error: Ns_PgExec:
result status: 7 message: ERROR:  Relation "apm_package_versions" does
not exist

[07/Jul/2002:02:33:21][402.136237056][-conn4-] Error: Error sourcing
/var/web/packages/acs-bootstrap-installer/installer/packages-install.tcl:
Database operation "0or1row" failed (exception NSDB, "Query was not a
statement returning rows.")
    while executing
"ns_pg_bind 0or1row nsdb0 {

        select 1 from apm_package_versions
        where package_key = :package_key
        and installed_p = 't'

      }"
    ("uplevel" body line 1)
    invoked from within
"uplevel $ulevel [list ns_pg_bind $type $db $sql"
    invoked from within
"db_exec 0or1row $db $full_name $sql"
    invoked from within
"set selection [db_exec 0or1row $db $full_name $sql]"
    ("uplevel" body line 2)
    invoked from within
"uplevel 1 $code_block "
    invoked from within
"db_with_handle db {
        set selection [db_exec 0or1row $db $full_name $sql]
    }"
    (procedure "db_string" line 7)
    invoked from within
"db_string apm_package_installed_p {
        select 1 from apm_package_versions
        where package_key = :package_key
        and installed_p = 't'
    } -default 0"
    (procedure "apm_package_installed_p" line 2)
    invoked from within
"apm_package_installed_p $package_key"
    (procedure "apm_scan_packages" line 25)
    invoked from within
"apm_scan_packages -new [file join [acs_root_dir] packages]"
    invoked from within
"apm_dependency_check -initial_install [apm_scan_packages -new [file
join [acs_root_dir] packages]]"
    invoked from within
"set dependency_results [apm_dependency_check -initial_install
[apm_scan_packages -new [file join [acs_root_dir] packages]]]"
    (file
"/var/web/packages/acs-bootstrap-installer/installer/packages-install.tcl"
line 27)
    invoked from within
"source $__file "
[07/Jul/2002:02:33:36][402.136213504][-conn0-] Notice: Populating
apm_package_db_types
I have looked at the table and it does exist. and after I install openfts I get the following sql in my error log:
Notice: Running scheduled proc search_indexer...
Debug: QD_LOGGER = calling namespace =
Debug: QD_LOGGER = proc_name is -apm_package_id_from_key_mem-
Debug: QD_LOGGER = there is no documented proc with name
apm_package_id_from_key_mem -- we used default SQL
Debug: QD_LOGGER = PRE-QD: the SQL is
        select package_id from apm_packages where package_key =
:package_key
     for dbqd..NULL
Debug: QD_LOGGER = NO FULLQUERY FOR dbqd..NULL --> using default SQL
Debug: QD_LOGGER = POST-QD: the SQL is
        select package_id from apm_packages where package_key =
:package_key

Debug: QD_LOGGER = calling namespace =
Debug: QD_LOGGER = proc_name is -search_indexer-
Debug: QD_LOGGER = tcl file is packages/search/tcl/search-procs.tcl
Debug: QD_LOGGER = TEMP - QD: proc_name is search_indexer
Debug: QD_LOGGER = TEMP - QD: local_name is search_observer_queue_entry
Debug: QD_LOGGER = generated fullname of
dbqd.search.tcl.search-procs.search_indexer.search_observer_queue_entry
Debug: QD_LOGGER = PRE-QD: the SQL is
        select object_id, date, event
        from search_observer_queue
        order by date asc
     for
dbqd.search.tcl.search-procs.search_indexer.search_observer_queue_entry
Debug: QD_LOGGER = NO FULLQUERY FOR
dbqd.search.tcl.search-procs.search_indexer.search_observer_queue_entry
--> using default SQL
Debug: QD_LOGGER = POST-QD: the SQL is
        select object_id, date, event
        from search_observer_queue
        order by date asc

Notice: Done running scheduled proc search_indexer.
Then I get this,it has oracle sql in it(select x from dual) after I add a test message from the notes applacation, per the docs:
Notice: Done running scheduled proc search_indexer.
debug: RP (3.223 ms): rp_filter: setting up request: GET /
Debug: QD_LOGGER = calling namespace =
Debug: QD_LOGGER = proc_name is -sec_get_token-
Debug: QD_LOGGER = tcl file is packages/acs-tcl/tcl/security-procs.tcl
Debug: QD_LOGGER = TEMP - QD: proc_name is sec_get_token
Debug: QD_LOGGER = TEMP - QD: local_name is get_token
Debug: QD_LOGGER = generated fullname of
dbqd.acs-tcl.tcl.security-procs.sec_get_token.get_token
Debug: QD_LOGGER = PRE-QD: the SQL is select token from secret_tokens
                                         where token_id = :token_id
for dbqd.acs-tcl.tcl.security-procs.sec_get_token.get_token
Debug: QD_LOGGER = query
dbqd.acs-tcl.tcl.security-procs.sec_get_token.get_token from
/var/web/packages/acs-tcl/tcl/security-procs.xql
Debug: QD_LOGGER = POST-QD: the SQL is
      select token from secret_tokens
                                         where token_id = :token_id

Debug: Security: Getting token_id 151, value
6D4F6A58535B7CFC90FBC0D1FDDF39589A7080EC
Debug: Security: Expire_Time is 1026070659 (compare to 1026069676),
hash is DB8E13D685ED205750842275296EB3EE948C9A29
Debug: Security: Done calling get_cookie 1,2537 {151 1026070659
DB8E13D685ED205750842275296EB3EE948C9A29} for ad_session_id; received
1026070659 expiration, getting 1,2537 and 151 102$
Debug: QD_LOGGER = calling namespace =
Debug: QD_LOGGER = proc_name is -ad_permission_p-
Debug: QD_LOGGER = tcl file is
packages/acs-tcl/tcl/acs-permissions-procs.tcl
Debug: QD_LOGGER = TEMP - QD: proc_name is ad_permission_p
Debug: QD_LOGGER = TEMP - QD: local_name is result
Debug: QD_LOGGER = generated fullname of
dbqd.acs-tcl.tcl.acs-permissions-procs.ad_permission_p.result
Debug: QD_LOGGER = PRE-QD: the SQL is
    select count(*)
      from dual
     where acs_permission.permission_p(:object_id, :user_id,
:privilege) = 't'
   for dbqd.acs-tcl.tcl.acs-permissions-procs.ad_permission_p.result
Debug: QD_LOGGER = query
dbqd.acs-tcl.tcl.acs-permissions-procs.ad_permission_p.result from
/var/web/packages/acs-tcl/tcl/acs-permissions-procs-postgresql.xql
Debug: QD_LOGGER = POST-QD: the SQL is
    select count(*)
      from dual
     where acs_permission__permission_p(:object_id, :user_id,
:privilege) =
't'

[07/Jul/2002:15:21:16][480.136224768][-conn4-] Notice: random:
generating 1 seeds
Warning: APM: PersistentLoginDefaultP does not exist
Debug: QD_LOGGER = LEVEL=0= db_multirow nodes site_nodes {
    select site_node.url(node_id) as url,
    acs_object.name(object_id) as name
      from site_nodes
      where parent_id = site_node.node_id('/')
      and object_id is not null
      and acs_permission.permission_p(
          object_id,
          nvl(:user_id, acs.magic_object_id('the_public')),
          'read') = 't'
}
Debug: QD_LOGGER = LEVEL=1= template::adp_parse /var/web/www/index {}
Debug: QD_LOGGER = LEVEL=2= adp_parse_ad_conn_file
Debug: QD_LOGGER = LEVEL=3= rp_serve_concrete_file /var/web/www/index.adp
Debug: QD_LOGGER = LEVEL=4= rp_serve_abstract_file /var/web/www/
Debug: QD_LOGGER = LEVEL=5= rp_handler
Debug: QD_LOGGER = the ad_conn file is /var/web/www/index.adp
Debug: QD_LOGGER = We are in a WWW page sourced by apm_source, woohoo!
Debug: QD_LOGGER = package key is www and rest is .index
Debug: QD_LOGGER = generated fullname of dbqd.www.index.site_nodes
Debug: QD_LOGGER = PRE-QD: the SQL is
    select site_node.url(node_id) as url,
    acs_object.name(object_id) as name
      from site_nodes
      where parent_id = site_node.node_id('/')
      and object_id is not null
      and acs_permission.permission_p(
          object_id,
          nvl(:user_id, acs.magic_object_id('the_public')),
          'read') = 't'
 for dbqd.www.index.site_nodes
Debug: QD_LOGGER = query dbqd.www.index.site_nodes from
/var/web/www/index-postgresql.xql
Debug: QD_LOGGER = POST-QD: the SQL is
  select site_node__url(node_id) as url, acs_object__name(object_id)
as name
      from site_nodes
      where parent_id = site_node__node_id('/',NULL)
      and object_id is not null
      and acs_permission__permission_p(
          object_id,
          coalesce(:user_id, acs__magic_object_id('the_public')),
          'read') = 't'

Debug: QD_LOGGER = LEVEL=0= db_0or1row user_name_select {
        select first_names || ' ' || last_name as name, email
        from persons, parties
        where person_id = :user_id
        and person_id = party_id
    }
Debug: QD_LOGGER = LEVEL=1= template::adp_parse /var/web/www/index {}
Debug: QD_LOGGER = LEVEL=2= adp_parse_ad_conn_file
Debug: QD_LOGGER = LEVEL=3= rp_serve_concrete_file /var/web/www/index.adp
Debug: QD_LOGGER = LEVEL=4= rp_serve_abstract_file /var/web/www/
Debug: QD_LOGGER = LEVEL=5= rp_handler
Debug: QD_LOGGER = the ad_conn file is /var/web/www/index.adp
Debug: QD_LOGGER = We are in a WWW page sourced by apm_source, woohoo!
Debug: QD_LOGGER = package key is www and rest is .index
Debug: QD_LOGGER = generated fullname of dbqd.www.index.user_name_select
Debug: QD_LOGGER = PRE-QD: the SQL is
        select first_names || ' ' || last_name as name, email
        from persons, parties
        where person_id = :user_id
        and person_id = party_id
     for dbqd.www.index.user_name_select
Debug: QD_LOGGER = query dbqd.www.index.user_name_select from
/var/web/www/index.xql
Debug: QD_LOGGER = POST-QD: the SQL is

        select first_names || ' ' || last_name as name, email
        from persons, parties
        where person_id = :user_id
        and person_id = party_id

I tried to look something up and did not see anything that jumped out at me. good day marc
Collapse
Posted by Marc Spitzer on
I put in a patch: https://openacs.org/sdm/one-patch.tcl?patch_id=309 for the first problem.  It seems to clear the problem up.  I am still getting oracle sql staatements loaded after loading the openfts stuff from the docs(notes, search, openfts-driver), I might have some more patches soon.
Collapse
Posted by Jeff Davis on
I am surprised this is a problem since the query exists in
apm-procs.xql (the generic version), can you look and see if you have that file and
if so is the query defined there?
<p>
Also you directory in the diff says openacs/openacs_45_beta/openacs-4.  Is it really
one of the betas that you are looking at?
Collapse
Posted by Marc Spitzer on
I did have the file, the generic query did not work for me. It could be a 7.2 vs 7.1 issue. Here is the the sql from my error.log:
        select 1 from apm_package_versions
        where package_key = :package_key
        and installed_p = 't'

it is from the generic xql file, which I had.

The reason I figured it out at all was that there was a different psql statement:

fullquery name="apm_package_version_installed_p.apm_package_version_installed_p"
that looked very close to "apm_package_installed_p" and existed in the postgres verson of the file. So I made a pg specific version based on what I had seen in the version query.

The error went away so it apears to have worked.

Collapse
Posted by Jeff Davis on
I did an install from scratch on 7.2 and did not run into this
although I guess it might have something to do with which packages you have installed.
Collapse
Posted by Marc Spitzer on
I did not get any errors in the web page, went looking for it in the error log when I could not get searching to work.  I was following the instructions in chapter 2 next stepts section, https://openacs.org/doc/openacs-4/nextsteps.html, for getting text searching working.

Oh yes, I am using oacs-4-5 cvs branch for my build.