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

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