[Varnish] #278: Varnish at some point can't handle a spesific URL

Varnish varnish-bugs at projects.linpro.no
Mon Jul 21 18:29:59 CEST 2008


#278: Varnish at some point can't handle a spesific URL
----------------------+-----------------------------------------------------
 Reporter:  ay        |       Owner:  phk                      
     Type:  defect    |      Status:  new                      
 Priority:  normal    |   Milestone:  Varnish 2.0 code complete
Component:  varnishd  |     Version:  trunk                    
 Severity:  major     |    Keywords:  PURGE                    
----------------------+-----------------------------------------------------
 Sometime varnish won't handle a specific URL. After a restart. Everything
 is back to normal. This happens quite often, and usually with with a
 specific URL.

 This works: (talking to backend)
 [root at fritz ~]# echo -e "GET /sport/fotball/
 HTTP/1.0\nHost:www.vg.no\n\n" | nc 10.0.0.151 80 |head -1
 HTTP/1.1 200 OK

 This works: (talking to backend)
 [root at fritz ~]# echo -e "GET /sport/fotball
 HTTP/1.0\nHost:www.vg.no\n\n" | nc 10.0.0.151 80 |head -1
 HTTP/1.1 301 Moved Permanently

 This works: (talking to varnish on localhost)
 [root at fritz ~]# echo -e "GET /sport/fotball
 HTTP/1.0\nHost:www.vg.no\n\n" | nc localhost 80 |head -1
 HTTP/1.1 301 Moved Permanently

 This does not work at the moment on one of the varnishes:

 [root at fritz ~]# echo -e "GET /sport/fotball/
 HTTP/1.0\nHost:www.vg.no\n\n" | nc localhost 80 |head -1

 It just hangs forever. ( waited up to 10 minutes )

 Running on another varnish it works

 [root at maddie ~]# echo -e "GET /sport/fotball/
 HTTP/1.0\nHost:www.vg.no\n\n" | nc localhost 80 |head -1
 HTTP/1.1 200 OK

 Same varnish, same vcl

 Varnishlog on the working varnish

  2315 ReqStart     c 127.0.0.1 51162 512297753
  2315 RxRequest    c GET
  2315 RxURL        c /sport/fotball/
  2315 RxProtocol   c HTTP/1.0
  2315 RxHeader     c Host:www.vg.no
  2315 VCL_call     c recv lookup
  2315 VCL_call     c hash hash
  2315 Hit          c 510694686
  2315 VCL_call     c hit deliver
  2315 Length       c 158261
  2315 VCL_call     c deliver deliver
  2315 TxProtocol   c HTTP/1.1
  2315 TxStatus     c 200
  2315 TxResponse   c OK
  2315 TxHeader     c Server: Apache/1.3.27 (Unix)
  2315 TxHeader     c X-VG-WebServer: leonora, leonora
  2315 TxHeader     c Cache-Control: max-age=3600
  2315 TxHeader     c Expires: Mon, 21 Jul 2008 14:49:42 GMT
  2315 TxHeader     c Content-Type: text/html
  2315 TxHeader     c Content-Length: 158261
  2315 TxHeader     c X-VG-WebCache: maddie
  2315 TxHeader     c Date: Mon, 21 Jul 2008 14:03:24 GMT
  2315 TxHeader     c X-Varnish: 512297753 510694686
  2315 TxHeader     c Age: 822
  2315 TxHeader     c Via: 1.1 varnish
  2315 TxHeader     c Connection: close
  2315 ReqEnd       c 512297753 1216649004.307805061 1216649004.308098078
 0.00003
 0994 0.000028849 0.000264168

 The non working

 38070 SessionOpen  c 127.0.0.1 56364 :80
 38070 ReqStart     c 127.0.0.1 56364 3818273786
 38070 RxRequest    c GET
 38070 RxURL        c /sport/fotball/
 38070 RxProtocol   c HTTP/1.0
 38070 RxHeader     c Host:www.vg.no
 38070 VCL_call     c recv lookup
 38070 VCL_call     c hash hash

 Then nothing happens. No miss no hit

 Purge working version (hit)

  3461 RxRequest    c PURGE
  3461 RxURL        c /sport/fotball/
  3461 RxProtocol   c HTTP/1.0
  3461 RxHeader     c Host:www.vg.no
  3461 VCL_call     c recv
  3461 VCL_acl      c MATCH purge "localhost"
  3461 VCL_return   c lookup
  3461 VCL_call     c hash hash
  3461 Hit          c 510694686
  3461 VCL_call     c hit
  3461 TTL          c 510694686 VCL 0 1216649372
  3461 VCL_return   c error
  3461 SessionClose c error returned
  3461 TxProtocol   c HTTP/1.0
  3461 TxStatus     c 200
  3461 TxResponse   c OK
  3461 TxHeader     c Date: Mon, 21 Jul 2008 14:09:32 GMT
  3461 TxHeader     c Server: Varnish
  3461 TxHeader     c Retry-After: 0
  3461 TxHeader     c Content-Type: text/html; charset=utf-8
  3461 TxHeader     c X-Varnish: 513000671
  3461 TxHeader     c Connection: close
  3461 ReqEnd       c 513000671 1216649372.271184921 1216649372.271277905
 0.00005
 1975 nan nan

 Pruge Working version (miss)
  5750 RxRequest    c PURGE
  5750 RxURL        c /sport/fotball/
  5750 RxProtocol   c HTTP/1.0
  5750 RxHeader     c Host:www.vg.no
  5750 VCL_call     c recv
  5750 VCL_acl      c MATCH purge "localhost"
  5750 VCL_return   c lookup
  5750 VCL_call     c hash hash
  5750 VCL_call     c miss error
  5750 SessionClose c error returned
  5750 TxProtocol   c HTTP/1.0
  5750 TxStatus     c 404
  5750 TxResponse   c Not Found
  5750 TxHeader     c Date: Mon, 21 Jul 2008 14:10:49 GMT
  5750 TxHeader     c Server: Varnish
  5750 TxHeader     c Retry-After: 0
  5750 TxHeader     c Content-Type: text/html; charset=utf-8
  5750 TxHeader     c X-Varnish: 513145422
  5750 TxHeader     c Connection: close
  5750 ReqEnd       c 513145422 1216649449.873359919 1216649449.873445988
 0.00004
 6968 nan nan




 Purge non working version:

 36848 RxRequest    c PURGE
 36848 RxURL        c /sport/fotball/
 36848 RxProtocol   c HTTP/1.0
 36848 RxHeader     c Host:www.vg.no
 36848 VCL_call     c recv
 36848 VCL_acl      c MATCH purge "localhost"
 36848 VCL_return   c lookup
 36848 VCL_call     c hash hash

 varnish-2.0-trunk2914 on redhat 5.2

-- 
Ticket URL: <http://varnish.projects.linpro.no/ticket/278>
Varnish <http://varnish.projects.linpro.no/>
The Varnish HTTP Accelerator


More information about the varnish-bugs mailing list