httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Roy T. Fielding" <field...@kiwi.ICS.UCI.EDU>
Subject Re: Countdown to 1.2b5
Date Sat, 25 Jan 1997 23:40:45 GMT
hmmmm, where'd my last update go....

1.2b5-dev status as of 3:40pm PST, Saturday:

  * Committed since 1pm update: 
       * mod_status needs "." to be explained in text
       * definite bug in bcwrite regarding failure to account for partials
       * avoids calling bflush() when the client is pipelining requests
       * remove bflush in http_protocol.c:1375
       * NeXT doesn't compile due to macro NEXT in regex/regcomp.c, etc.
       * Solaris 2.6 has "uname -X" working, so GuessOS fails, see PR#60

  * Randy says he'll generate a tarball when I call for one. :)
    We have only one thing left that is not deferred, and it has
    enough votes, but needs some documentation to go in with it.
    We'll then freeze changes while Randy generates the tarball.

  * RobH wants us to test it before a public release.  That makes sense,
    so lets plan on delaying public release until 24hrs after 1.2b5 tar.
    That should satisfy Ben as well.

Can do before 1.2b5

  * Change default for KeepAlive so that it doesn't limit to 5 requests
    Add MaxKeepAliveRequests for those people who really want a limit.
       Status: Alexei posted new patch, +1 Alexei, Roy, Marc
               Note: also needs documentation change

Deferred until after 1.2b5:

  * core dump if an error in .htaccess & subrequest
       Status: no patch yet
       Info: <> reports that if sub_req_lookup_uri() is
             called, then per_dir_config in subrequest is not initialized
             until directory_walk is done. If any error is encountered during
             this time, log_reason() will core dump, since it calls
             get_remote_host() with r->per_dir_config. 
       Solution: Initialize per_dir_config in set_sub_req_protocol()
             (see initialization of regular request in read_request()!).

  * Solaris 2.6 apparently has a getwd() or getcwd() prototype, see PR#89
       Status: easy to fix, but will require testing by 2.6beta person

  * suexec setuid() before directory checks for nfs mounted filesystems
    Currently, the code will not pass foo=bar as argv[1]. Should it?
       Status: no patch yet, Randy said postpone til 1.2b6-dev

  * new header_parse API hook is called too often
       Status: RobH posted patch, had second thoughts.  He
       suggests that mod_browser be optimised by detecting if it has been
       called already and returning early if it has.

  * lingering_close generates the following error message
      shutdown: Transport endpoint is not connected - lingering_close
    using current 1.2b5-dev (only a few a day).  I think this is what 
    happens when a client disconnects during transmission, which
    is a normal condition for web servers.  I suggest not logging
    an error if errno == ENOTCONN.
      Marc says that this may not be "normal", it may be if the client
    sends a RST to terminate the connection (as per recent discussion on
    end2end-interest) and it gets here before we get to that point in
       Status: no patch, worth leaving in for this beta to see if it
    it improves debugging.

  * accept errors EPROTO and ECONNABORTED should not be logged
       Status: no patch, ditto above, but will require ifdefs

  * allow whitespace after comma in mod_imap, see PR#106
       Status: Marc posted patch

  * directory redirect returns 302 not 301, see PR 77
       Status: easy to fix, but will require testing

  * SO_DEBUG in proxy_ftp.c may not be portable, see PR 166
       Status: Chuck says it is a leftover, will fix

  * bugs in mod_negotiation (serious)
       Status: reported by on Jan 6 to apache-bugs.
               It is a very good, detailed report with patches.

  * report from Henrik at about pipelined requests
          Possible improvements include not bflushing if there is another
          request waiting to be read, and removing keepalive total request
       Status: deferred til after 1.2b5, maybe beyond 1.2

  * 3 seconds delay in CGI execution on SunOS 4.x
       Status: no patch.
       Info: Pages containing script output show up with a delay of 3
             seconds (there was no such delay in Apache 1.1.1). 
             [] tracked the problem down to
             source file alloc.c, function free_proc_chain. This function
             contains a conditional call to sleep(3), which causes the delay.

       for (p = procs; p; p = p->next) {
          if (p->kill_how == kill_after_timeout) {
            /* Subprocess may be dead already.  Only need the timeout if not. */
            if (kill (p->pid, SIGTERM) != -1)  
              need_timeout = 1;
          } else if (p->kill_how == kill_always) {
            kill (p->pid, SIGKILL);
        /* Sleep only if we have to... */
        if (need_timeout) sleep (3);

        [RobH: So CGI included as SSI hangs around for longer and needs
               to be SIGTERM'ed.  Why?]

        [Roy: note also that a call to sleep will blow-out any other timeout]

View raw message