Since this question pertains to the implementation of ETags in the httpd source code (core.c?), I think this question is appropriate for the developer list. I hope you agree. :)
I'm using apache and subversion (mod_dav_svn) as the filesystem provider. Apache won't generate weak ETags (Size & MTime) from the subversion filesystem provider. The same config works fine when I take subversion out and use the regular filesystem. I've also tried generating weak ETags from a Catacomb repository (mod_dav_repos) to no avail.
I'm trying to figure out whether this is an Apache limitation (I suspect it is), or a limitation of the alternate providers.
What I want to know is: Is the ETag implementation tied directly to the filesystem? Or, is it abstract and therefore should/could theoretically support alternate filesystem providers?
So far, the subversion and catacomb developers have been silent on this question. I'm hoping someone on this list can help.
Thanks for any help, pointers, etc.
--EJ
References: http://subversion.tigris.org http://webdav.org/catacomb/
--- Begin Message ---Hi,I'm trying to figure out if/how ETags might be generated when using a non-filesystem repository provided by an apache module. For example, I've tried to generate weak ETags when using the subversion and catacomb apache modules. Is the code to generate ETags abstracted from the underlying repository? Or, is it tied directly to the filesystem? I think I found the relevant source using viewcvs, but I haven't been able to decipher it.... http://cvs.apache.org/viewcvs.cgi/httpd-2.0/server/core.c?rev=1.252&content-type=text/vnd.viewcvs-markup Any help much appreciated. --EJ--- Begin Message ---Hi, I'm trying to implement a collaborative authoring environment that uses apache webdav + subversion with auto-versioning on the server. Client-side, my users will have a variety of clients (Winie, Web Commander, mozile) that check for ETag match before doing a PUT as described here: http://www.w3.org/1999/04/Editing/ In my experiments so far, it doesn't appear that apache + subversion will generate a weak ETag. If I remove svn and just use the filesystem, apache generates the expected ETags. Excerpt from httpd.conf: <Location /p3> FileETag MTime Size (some stuff deleted...) </Location> So, I'm wondering if the apache ETag code simply doesn't play with alternate repositories -- ie, the calls to get modification time and size are not abstracted... Or, are there changes that could be made to subversion to generate the requested ETags? I dug through some of the apache code, but couldn't locate the ETag stuff. I'm assuming that if the latter is the case, it'll probably be a post 1.0 thing -- unless it's a very easy fix. Thanks for any info/pointers. --EJ _______________________________________ Eric R. Johnson SunServices Sun Microsystems, Inc. Phone: (303)-272-5671, x75671 Email: [EMAIL PROTECTED] _______________________________________
--- End Message ------------------------------------------------------------------------ The official User-To-User support forum of the Apache HTTP Server Project. See <URL:http://httpd.apache.org/userslist.html> for more info. To unsubscribe, e-mail: [EMAIL PROTECTED] " from the digest: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--- End Message ---