[LON-CAPA-admin] Not Open To Be Viewed Troubles

Stuart Raeburn raeburn at msu.edu
Wed Oct 4 16:57:44 EDT 2017


> Does this live entirely in memory or am I missing something?

It is in memory on the access server.

When the problem is rendered, the &initialize_storage() routine is  
called in structuretags.pm within start_problem() which will populate  
the (global) %history hash in Apache::lonhomework with submission and  
award history etc. for the current resource (in the current course  
context and instance for the current user) by calling lonnet::restore().

See lines 1024-1025 in the version of structuretags.pm included in  

Later during rendering, the global %history hash is cleared with undef  
(within the end_problem routine).

Stuart Raeburn
LON-CAPA Academic Consortium

> I'm tracing the path of where a condition is stored against the
> on our servers.
> Condition to be met:
&EXT('user.resource.resource.200.1.awarddetail','BuffersLab') eq

> contains:
> I'm having a difficult time locating that condition on the access  
> servers, though.  I've found the conditional statement in the .state

> file, but I'm not seeing it in any of the user files.  Does this
> entirely in memory or am I missing something?
> Thanks,
> Lee
> -----Original Message-----
> From: lon-capa-admin-bounces at mail.lon-capa.org  
> [mailto:lon-capa-admin-bounces at mail.lon-capa.org] On Behalf Of
> Raeburn
> Sent: Tuesday, October 3, 2017 7:14 PM
> To: lon-capa-admin at mail.lon-capa.org
> Subject: Re: [LON-CAPA-admin] Not Open To Be Viewed Troubles
> Hello Lee,
> There is no log file of access server parameter file changes, but
> could make your own (see below).
> Looking back through the archives, it seems you ran into this issue
in March.
> I posted a response to the list to that earlier post. See:
> mail.lon-capa.org/pipermail/lon-capa-admin/2017-March/003273.html
> which discussed how to view cached parameters in memcache.
> Assuming the open date parameter in effect is for all students, or  
> for a specific section, and not for individual student(s), then  
> parameters will be retrieved using lonnet::get_courseresdata(). That

> will, in turn, call &lonnet::dump(), when the cache on the access  
> server has expired (it's valid for 10 minutes).
> You could modify lonnet::get_courseresdata() to write the hash  
> returned by dump() for a particular course to a file (e.g.,  
> /home/httpd/perl/tmp/debug/$coursenum on the access server).
> Your code could check if the file already exists, and if it did move

> the existing file to /home/httpd/perl/tmp/debug/$coursenum.old,  
> before writing the latest data to a new file.
> You could then create a perl script, which would be run by cron
> 5 minutes to look in /home/httpd/perl/tmp/debug/.  The script would  
> compare the contents of $coursenum.old and $coursenum (if both
> and record what had changed for course: $coursenum for the current  
> timestamp, in a log file.  The script would then unlink  
> $coursenum.old.
> Stuart Raeburn
> LON-CAPA Academic Consortium
>> Hello Admins,
>> I am diving back into an issue we've had in which resources are
>> temporarily "Not open to be viewed."  The resources should be
>> available now and do become available after 10-20 minutes or a
> change
>> of access server.  The leading theory is that the parameter file is
>> being read incorrectly, resulting in the access server thinking the
>> resource is unavailable until the bad parameter is updated.
>> Is there a log anywhere of access server parameter file changes?
>> Because things seem to go back to normal after a while I have yet
>> have the problem reported to me in time to look at the potentially
>> problematic files in real time.
>> Sorry for rehashing old troubles, but I'm hoping this time will to
> the trick.
>> Lee
> _______________________________________________
> LON-CAPA-admin mailing list
> LON-CAPA-admin at mail.lon-capa.org

More information about the LON-CAPA-admin mailing list