Comment 6 for bug 294560

Revision history for this message
dmuir (dmuir) wrote :

Trying to see if I can fix this issue myself by using a .htaccess file elsewhere and applying rewrite rules.

I've added a folder called repos/ which has the following .htaccess file:

RewriteEngine on

RewriteCond %{DOCUMENT_ROOT}/$1 -d
RewriteRule ^(.+[^/])$ /$1/ [L]

RewriteRule ^(.*)$ /$1

in short:
rewrites everything to point to a webdav folder, but automatically adds the trailing slash to directories.
http://<host>/repos/project/.bzr => http://<host>/project/.bzr/

Everything seems to work up until it tries to acquire a lock.
At this point, It seems to lose the connection and then instead of checking to see if the previous command was completed, it attempts to run the previous command. A timeout issue? Is there a way to increase the timeout?

Tried to sanitize as much as possible...

....

2.493 > MKCOL /repos/project/.bzr/branch-lock/l3nm0wabky.tmp
2.493 > Host: bzr.tekika.com
> Accept: */*
> User-Agent: bzr/1.9 (urllib)
> Connection: Keep-Alive
> Pragma: no-cache
> Cache-Control: max-age=0
> Authorization: Basic

2.658 < HTTP/1.1 201 Created
2.658 < Date: Tue, 11 Nov 2008 06:59:25 GMT
< Server: Apache/2.0.61 (Unix) PHP/4.4.7 mod_ssl/2.0.61 OpenSSL/0.9.7e mod_fastcgi/2.4.2 Phusion_Passenger/2.0.3 DAV/2
< Location: http://bzr.tekika.com/project/.bzr/branch-lock/l3nm0wabky.tmp
< MS-Author-Via: DAV
< Vary: Accept-Encoding
< Content-Length: 212
< Keep-Alive: timeout=2, max=94
< Connection: Keep-Alive
< Content-Type: text/html

2.661 > PUT /repos/project/.bzr/branch-lock/l3nm0wabky.tmp/info
2.661 > Content-Length: 112
> Connection: Keep-Alive
> Accept: */*
> User-Agent: bzr/1.9 (urllib)
> Host: bzr.tekika.com
> Pragma: no-cache
> Cache-Control: max-age=0
> Content-Type: application/octet-stream
> Authorization: Basic

3.071 < HTTP/1.1 201 Created
3.071 < Date: Tue, 11 Nov 2008 06:59:25 GMT
< Server: Apache/2.0.61 (Unix) PHP/4.4.7 mod_ssl/2.0.61 OpenSSL/0.9.7e mod_fastcgi/2.4.2 Phusion_Passenger/2.0.3 DAV/2
< Location: http://bzr.tekika.com/project/.bzr/branch-lock/l3nm0wabky.tmp/info
< MS-Author-Via: DAV
< Vary: Accept-Encoding
< Content-Length: 215
< Keep-Alive: timeout=2, max=93
< Connection: Keep-Alive
< Content-Type: text/html

3.072 > MOVE /repos/project/.bzr/branch-lock/l3nm0wabky.tmp
3.072 > Destination: http://bzr.tekika.com/repos/project/.bzr/branch-lock/held
> Connection: Keep-Alive
> Accept: */*
> User-Agent: bzr/1.9 (urllib)
> Host: bzr.tekika.com
> Overwrite: F
> Pragma: no-cache
> Cache-Control: max-age=0
> Authorization: Basic

3.323 * About to connect() to bzr.tekika.com:80
3.665 > MOVE /repos/project/.bzr/branch-lock/l3nm0wabky.tmp
3.665 > Destination: http://bzr.tekika.com/repos/project/.bzr/branch-lock/held
> Connection: Keep-Alive
> Accept: */*
> User-Agent: bzr/1.9 (urllib)
> Host: bzr.tekika.com
> Overwrite: F
> Pragma: no-cache
> Cache-Control: max-age=0
> Authorization: Basic

4.199 > DELETE /repos/project/.bzr/branch-lock/l3nm0wabky.tmp/info
4.199 > Host: bzr.tekika.com
> Accept: */*
> User-Agent: bzr/1.9 (urllib)
> Connection: Keep-Alive
> Pragma: no-cache
> Cache-Control: max-age=0
> Authorization: Basic

4.199 * About to connect() to bzr.tekika.com:80
4.569 > DELETE /repos/project/.bzr/branch-lock/l3nm0wabky.tmp/info
4.569 > Host: bzr.tekika.com
> Accept: */*
> User-Agent: bzr/1.9 (urllib)
> Connection: Keep-Alive
> Pragma: no-cache
> Cache-Control: max-age=0
> Authorization: Basic

5.217 < HTTP/1.1 204 No Content
5.217 < Date: Tue, 11 Nov 2008 06:59:27 GMT
< Server: Apache/2.0.61 (Unix) PHP/4.4.7 mod_ssl/2.0.61 OpenSSL/0.9.7e mod_fastcgi/2.4.2 Phusion_Passenger/2.0.3 DAV/2
< Content-Length: 0
< Keep-Alive: timeout=2, max=100
< Connection: Keep-Alive
< Content-Type: text/plain

....

repeats this process for a few minutes, then finally gives up.