[LON-CAPA-admin] Re: [LON-CAPA-users] Navigation Screen Sort

Stuart Raeburn raeburn at msu.edu
Fri Jun 26 17:26:44 EDT 2009


Ray,

The mechanism used to update a copy of a file on an access server  
following a change to the corresponding file on the library sever  
depends on whether this is an "uploaded" file (i.e., the URL for the  
file begins with "uploaded"), or an "imported" file from the LON-CAPA  
repository (URL begins "res").  This applies to both .sequence files  
(in this case "uploaded" files are folders created via the DOCS  
interface with names default_$timestamp.sequence), and .problem files  
(these files will presumably have been imported from RES).

For uploaded files, the access server will send an internal HTTP HEAD  
request to the library server and compares the 'Last-modified'  
information in the header returned from the library server with the  
file's modification time on the access server's filesystem (in  
/home/httpd/html/userfiles/$cdom/$cnum/).

For imported files, whenever a file is copied from the published  
version in RES (on the author's library server), a record is written  
in the subscription file in RES on that server.  The record will  
include the lonHostID (e.g., msua1) for the access server to which the  
copy was sent.  Re-publication of the file on the library server will  
cause an "update" message to be sent to the subscribed access server,  
which will in turn trigger lond on the access server to make a web  
request for the new version of the file from the library server.

So, if an update to a file on a library server is not causing the copy  
on the access server to be updated, what you should look for in the  
logs depends on whether this is an uploaded file, or an imported file.

Uploaded file:

1. Check the Apache access logs on the library server to see whether a  
request  is logged for a url starting /raw/ from the access server.

2. Check whether there is a discrepancy between the clock on the  
library server and the access server.

3. Check the timestamp for the current file in  
/home/httpd/html/userfiles/$cdom/$cnum/ on the access server (where  
$cdom is the course domain, and $cnum is the course number - e.g.,  
33803011027874598msul1) of the course which contains the "uploaded"  
.sequence file

Imported file:

1. Check the Apache access logs on the library server to see whether a  
request  is logged for a url starting /raw/

2. Check the $filename.log file for the file in /home/$author/... to  
see if there is a record for "Notifying host $lonhostID"   (where  
$lonhostID is the hostID of the subscribed access server).

3. Check the lonnet.log file on the access server for records containing:
the string: "Subscribe returned rejected by "

Stuart Raeburn
MSU LON-CAPA group


Quoting Ray Batchelor <batchelo at sfu.ca>:

> I have, twice more today, observed a phenomenon whereby a (DOCS) xml file
> (either a sequence or problem and in at least two different courses) becomes
> out of sync (or otherwise incomplete) on only specific access servers.  i.e.
> the resource is not the same on the given access server as it is on the
> library server or other access servers.
>
> It seems that by tweaking the resource in question, by using DOCS to rename
> it while on the library server, causes the access server to become updated
> such that it is back in sync with what should be the current status of the
> resource in the course.
>
>
> Any thoughts or suggestions?
>
> Ray






More information about the LON-CAPA-admin mailing list