Forum OpenACS Q&A: Problems in access file storage in dotLRN

Hi everyone...

We're having a strange problem. We migrated a dotLRN installation from one Postgresql database running on SuSE 8.0 to one running on Debian. Both are Postgresql 7.2 versions.

So far, everything seems to be working fine. However, whenever a user tries to access any of the stored files the following message shows up in the log:

-----------------------------------------------------
*** portal::evaluate_element callback Error! ***

Database operation "select" failed (exception NSDB, "Query was not a statement returning rows.")

ERROR:  Function 'tree_ancestor_keys(varbit)' does not exist Unable to identify a function that satisfies the given argument types You may need to add explicit typecasts

SQL:
            select file_storage__get_package_id(fs_objects.object_id) as package_id,
                  (CASE
                      WHEN fs_objects.type = 'url'
                      THEN (select site_node__url(site_nodes.node_id)
                                                  from site_nodes
                                                  where site_nodes.object_id = file_storage__get_package_id(fs_objects.parent_id))
                      ELSE (select site_node__url(site_nodes.node_id)
                                            from site_nodes
                                            where site_nodes.object_id = file_storage__get_package_id(fs_objects.object_id))
                  END) as url,
                  fs_objects.object_id,
                  fs_objects.name,
                  fs_objects.file_upload_name,
                  fs_objects.live_revision,
                  fs_objects.type,
                  fs_objects.content_size
            from fs_objects
            where fs_objects.object_id in (12233, 1770)
            and 't' = acs_permission__permission_p(fs_objects.object_id, '5158', 'read')
            order by fs_objects.sort_key,
                    fs_objects.name
-----------------------------------------------------

Repeated searches on Google and OpenACS have yielded no solutions or indications to what the actual problem could be.

Could anyone else with similar experience provide some inputs?

Thanks in advance,

Abhas,
DeepRoot Linux,
Bangalore - India.

Collapse
Posted by DeepRoot Linux on
Okay - we just discovered a simple "hack" for getting this problem set right. After some more digging on the OpenACS web site itself, a message here:

https://openacs.org/forums/message-view?message_id=31016

indicated that one needs to execute

    psql -f postgresql.sql

The status at the moment is that file storage is work just fine as it was working earlier. :)

Thanks a lot!

cheers,
Abhas.