Forum .LRN Q&A: File-Storage Error in include template

Error in include template "/var/www/openacs/packages/file-storage/www/folder-chunk": can't read "root_folder_id": no such variable

file-storage File Storage 5.10.0d13 2017-08-06 Enabled Locally

What can I do to fix this?
Thanks.

Collapse
Posted by Gustaf Neumann on
Hmm, the actual version of file-storage is 5.10.0d14, so d13 seems pretty new. Is this a new install, or have you updated your packages to a recent version?

I can't reproduce the problem on a fresh instance, "folder-chunk.tcl" sets the variable via an include_contract... so it should be set in this file. Can you provide some more details?

Have you fixed the your earlier problem with the filehandle?

Collapse
Posted by Kenneth Wyrick on
This is a fairly recent install using your
openacs sussdorff/openacs 2021-02-13 16:43:04
I went to do an update and it already had this version.
If you email me I'd be glad to give you access. mailto:kmw@caltek.net
Collapse
Posted by Gustaf Neumann on
What is "openacs sussdorff/openacs 2021-02-13 16:43:04" ?
Collapse
Posted by Siqsuruq Siqsuruq on
I think its an Docker image of OpenACS from Github
Collapse
Posted by Gustaf Neumann on

Dear Kenneth,

Thanks for providing me access to your web site. I logged in, and got on /file-storage a different error message.

Error in include template "/var/www/openacs/packages/file-storage/www/folder-chunk": invalid command name "lc_content_size_pretty"

Therefore, i assume, some changes were done on the site after your posting. The error essentially means that the function called by file-storage is not defined. lc_content_size_pretty was introduced in acs-lang about 2 years ago by commit [1], which hints to a version conflict.

On this site, dotlrn is installed. The major involved components are:

acs-lang        ACS Localization    5.9.1
file-storage    File Storage        5.10.0d13
acs-tcl         ACS Tcl Library     5.10.0d44
dotlrn          dotLRN              2.9.1

The file-storage package is from oacs-5-10, also acs-tcl, but acs-lang (which is usually part of acs-core) is still from oacs-5-9.

To check, whether something is broken on new installs, I did a docker install of OpenACS based on Vlads work [2], did there an "install from repository" (checked xowiki and dotlrn), and got the following versions of the packages noted above:

acs-lang        ACS Localization    5.10.0d14
file-storage    File Storage        5.10.0d14
acs-tcl         ACS Tcl Library     5.10.0d44
dotlrn          dotLRN              2.10.0d8

So, part of of acs-core is from oacs-5-9, part is from oacs-5-10, dotlrn is from oacs-5-9, file-storage is from oacs-5-10. I wonder, why this is the case. In case, the site is a fresh install, i would recommend to reinstall it as sketched, or to upgrade the components (starting with the acs-core components, then a restart before updating the other components). Working with mixed version (especially in acs-core) is dangerous, since there are mutual dependencies, and the basic assumption is that the core is updated in one step (at least for major number upgrades).

Since i do not know about the history of this site, and the reasons, why things are setup as they are now, i did not changes there. I have not looked in detail into the docker setup of Malte, so i can't exclude that the version mix-up comes from there.

Hope this helps -gn

[1] https://openacs.org/forums/message-view?message_id=5514346

[2] https://github.com/openacs/openacs-core/commit/1793f390fb0b8e24691648ad68c074520f2913eb