Forum OpenACS Q&A: openacs/intranet bug

Collapse
Posted by Cristian Petrescu-Prahova on
Hi,

I don't know exactly where I should post this one. Probably a bug list, but I don't know exactly where to look for one.

I'm playing around with the intranet module and I got into a bug and I cannot do anything but stare at it in wonder 😉 I haven't got a single clue on what's happening. Maybe somebody else has. The


NOTICE:  PortalHeapMemoryFree: 0x0x40b11998 not in alloc set!
errors are particularily puzzling.

I'm using postgresql 7.0.2-2, openacs3.2.2, pgdriver 1.1.0, aolserver3.0_ad4

page accessed:

http://cristipp.lasting.ro/intranet/employees/admin/index.tcl
error log:

11/Sep/2000:16:36:04][14487.6151][-conn1-] Notice: Querying 'select
group_id 
from administration_info 
where module = 'intranet' 
and submodule is null;'
[11/Sep/2000:16:36:04][14487.6151][-conn1-] Notice: nsd.db:
sql(localhost::openvoid):  select group_id 
from administration_info 
where module = 'intranet' 
and submodule is null
[11/Sep/2000:16:36:04][14487.6151][-conn1-] Notice: Querying 'select
count(*) from user_group_map where user_id =3 and group_id = 4;'
[11/Sep/2000:16:36:04][14487.6151][-conn1-] Notice: nsd.db:
sql(localhost::openvoid):  select count(*) from user_group_map where
user_id =3 and group_id = 4
[11/Sep/2000:16:36:04][14487.6151][-conn1-] Notice: Querying 'select
group_id 
from administration_info 
where module = 'site_wide' 
and submodule is null;'
[11/Sep/2000:16:36:04][14487.6151][-conn1-] Notice: nsd.db:
sql(localhost::openvoid):  select group_id 
from administration_info 
where module = 'site_wide' 
and submodule is null
[11/Sep/2000:16:36:04][14487.6151][-conn1-] Notice: Querying 'select
multi_role_p from user_groups where group_id = 1;'
[11/Sep/2000:16:36:04][14487.6151][-conn1-] Notice: nsd.db:
sql(localhost::openvoid):  select multi_role_p from user_groups where
group_id = 1
[11/Sep/2000:16:36:04][14487.6151][-conn1-] Notice: Querying 'select
case when count(*)=0 then 0 else 1 end from user_group_map where
user_id = 3 and group_id = 1 and role in ('administrator', 'all');'
[11/Sep/2000:16:36:04][14487.6151][-conn1-] Notice: nsd.db:
sql(localhost::openvoid):  select case when count(*)=0 then 0 else 1
end from user_group_map where user_id = 3 and group_id = 1 and role in
('administrator', 'all')
NOTICE:  PortalHeapMemoryFree: 0x0x40b115a8 not in alloc set!
NOTICE:  PortalHeapMemoryFree: 0x0x40b11c60 not in alloc set!
NOTICE:  PortalHeapMemoryFree: 0x0x40b11c38 not in alloc set!
[11/Sep/2000:16:36:05][14487.6151][-conn1-] Error: Ns_PgExec: result
status: 7 message: ERROR:  btree scan list trashed; can't find
0x0x40b11b88

[11/Sep/2000:16:36:05][14487.6151][-conn1-] Error: nsd.db:
error(localhost::openvoid, ERROR:  btree scan list trashed; can't find
0x0x40b11b88
): select users.user_id , coalesce(info.salary, 0) as salary,
users.last_name || ', ' || users.first_names as name,
                info.supervisor_id, info.years_experience as
n_years_experience, info.salary_period, info.referred_by, 
                to_char(info.start_date,'Mon DD, YYYY') as
start_date_pretty,
                (case when info.project_lead_p = 't' then
'Yes'::varchar else 'No'::varchar end) as project_lead,
                (case when info.team_leader_p = 't' then
'Yes'::varchar else 'No'::varchar end) as team_lead,
                (case when supervisor_id is NULL then
'missing'
                 else (select s.first_names || ' ' || s.last_name from
users s where s.user_id=supervisor_id) end) as supervisor_name,
                (case when info.referred_by is NULL then
'nobody'
                 else (select r.first_names || ' ' || r.last_name from
users r where r.user_id=referred_by) end) as referral_name
           from users_active users, im_employee_info info,
user_group_map ugm
          where users.user_id = ugm.user_id
            and ugm.group_id = 8
            and users.user_id = info.user_id
union
select users.user_id , 0 as salary, users.last_name || ', ' ||
users.first_names as name,
                '' as supervisor_id, '' as n_years_experience, '' as
salary_period, '' as referred_by, 
                '' as start_date_pretty,
                'No'::varchar as project_lead,
                'No'::varchar as team_lead,
                'missing' as supervisor_name,
                'nobody' as referral_name
           from users_active users, user_group_map ugm
          where users.user_id = ugm.user_id
            and ugm.group_id = 8
            and not exists (select 1 from im_employee_info 
                            where user_id = users.user_id)
       order by upper(users.last_name),upper(users.first_names)
[11/Sep/2000:16:36:05][14487.6151][-conn1-] Error: nsd.tcl: Database
operation "select" failed (exception NSDB, "Query was not a statement
returning rows.")
Database operation "select" failed (exception NSDB, "Query was not a
statement returning rows.")
    while executing
"ns_db select $db 
"select users.user_id , coalesce(info.salary, 0) as salary,
users.last_name || ', ' || users.first_names as name,
                i..."
    invoked from within
"set selection [ns_db select $db 
"select users.user_id , coalesce(info.salary, 0) as salary,
users.last_name || ', ' || users.first_names as name,
  ..."
    (file "/web/openvoid/www/intranet/employees/admin/index.tcl" line
63)
    invoked from within
"source $ad_conn(file)"
    (procedure "ad_handle_abstract_url" line 67)
    invoked from within
"ad_handle_abstract_url cns3 {}"
[11/Sep/2000:16:36:05][14487.6151][-conn1-] Notice: Querying 'select *
from referer_log_glob_patterns;'
[11/Sep/2000:16:36:05][14487.6151][-conn1-] Notice: nsd.db:
sql(localhost::openvoid):  select * from referer_log_glob_patterns
[11/Sep/2000:16:36:05][14487.6151][-conn1-] Notice: Querying 'update
referer_log set click_count = click_count + 1
where local_url = '/intranet/employees/admin/' 
and foreign_url = 'http://cristipp.lasting.ro/intranet/index.tcl'
and trunc(entry_date) = trunc(sysdate());'
[11/Sep/2000:16:36:05][14487.6151][-conn1-] Notice: nsd.db:
sql(localhost::openvoid):  update referer_log set click_count =
click_count + 1
where local_url = '/intranet/employees/admin/' 
and foreign_url = 'http://cristipp.lasting.ro/intranet/index.tcl'
and trunc(entry_date) = trunc(sysdate())
Any hints will be qappreciated.
Collapse
Posted by Jade Rubick on
I had the same problem. Search for "portal" and you'll find a thread which describes how to fix this. You have to change something in Postgres and recompile.