Ok, I think I have addressed all concerns (and that Danek's questions were mosty answered by Shawn.)
Here are the new and incremental webrevs: http://cr.opensolaris.org/~mjnelson/webrev.pkg-index-control.2/ http://cr.opensolaris.org/~mjnelson/webrev.pkg-index-control.1-2/ Some notes on testing: I did almost exactly as Shawn suggested, with two primary differences: 1. I have independently verified that index suppression is working completely as intended for the following two cases: A. No depot server running, using pkgsend only with a file uri B. Depot server running, using pkgsend only with a http uri I have further verified that, when you are running a depot server but publishing to the same repo via a file uri, the open and add pkgsend subcommands trigger a silent index refresh. So whatever was previously published, but not indexed, will magically be indexed, even though the currently open transaction will not be. This led me on a merry chase to figure out why my test searches were returning results unexpectedly, and eventually led to a slight reordering of test operations. (Checking for search failure on the http-published package prior to publishing via file transaction.) 2. If you publish an empty package, a "pkg search pkg:::" will always fail, even after refreshing the search indices. So I added a file action to each of my test packages. I'm inclined to treat difference (1) as "not part of this wad." Is this expected behavior? If not, I can collect info and file a bug. Since the tests were not previously reviewed, I welcome comments on them. --Mark On Thu, Sep 10, 2009 at 04:59:55PM -0500, Shawn Walker wrote: > Danek Duvall wrote: >> Mark J. Nelson wrote: >> >>> http://cr.opensolaris.org/~mjnelson/webrev.pkg-index-control/ >> >> depot.py: >> >> - line 729: I forget -- is there a reason we can't send back a 5xx error >> code? (This may be more of a question for Shawn.) Alternatively, why >> can't both error returns be NOT_FOUND? See file_0(). > > We currently don't send back 5xx error codes because that causes Apache > to think that the backend has stopped working and it will refuse > requests. > > We don't send 404 for most of the failed operations because > versioned_urlopen will interpret that to mean that the server doesn't > support this operation as opposed to the operation failing. This comes > back to us not having upgraded to the newest version of cherrypy yet, > which would allow us to have custom status messages (i.e. 404 No write > permissions on search indices.). > > Cheers, > -- > Shawn Walker _______________________________________________ pkg-discuss mailing list [email protected] http://mail.opensolaris.org/mailman/listinfo/pkg-discuss
