yay, i was finally able to post this :) i had to replace all instances of replication to r.e.p.l.i.c.a.t.i.o.n to by pass apache's spam filter :(
On Thu, Oct 7, 2010 at 5:54 PM, sgoto <[email protected]> wrote: > hey everyone, > > i'm stuck at a r.e.p.l.i.c.a.t.i.o.n problem and i thought i should > ask before debugging more. > > context: i have a couchdb instance that i would like to put behind a > proxy. the couchdb instance runs on the default port :5984 and i have a > Jetty proxy on front of it on another port 9093. My servlet container > proxies all requests coming from http://localhost:9093/replicate/* to > http://localhost:5984/*. Hitting http://localhost:9093/replicate responds > to most commands but i'm having problems replicating dbs with the proxy. > > problem: i have to trigger a r.e.p.l.i.c.a.t.i.o.n between a local db > and a db that is proxied. i use this: > > g...@goto-laptop:~/Workspace/couchdb/kumbaya$ curl -X POST --header > "Content-Type: application/json" -d > '{"source":"test","target":"http://admin:mypassw...@localhost:9093/replicate/test2","continuous":true}' > http://localhost:5984/_replicate > > where test is my local db and test2 is a db on the same couchdb > instance but proxied. couchdb kindly replies: > > *{"ok":true,"_local_id":"900f0e46186175a5a31314ea5ad24857"}* > > however, r.e.p.l.i.c.a.t.i.o.n doesn't really work (saving docs in one > db doesn't replicate to the other). > > after replication starts, my proxy keeps getting these requests (which > are forwarded to the couchdb instance) ... > > POST /replicate/test2/_missing_revs HTTP/1.1 > Accept-Encoding: gzip > Accept: application/json > User-Agent: CouchDB/1.0.1 > Authorization: Basic YWRtaW46bXlwYXNzd29yZA== > Host: localhost:9093 > Content-Length: 75 > > ... which the couchdb instance fails to respond as you can see at the > ends of this log ... > > [Thu, 07 Oct 2010 07:22:34 GMT] [debug] [<0.447.0>] 'POST' > /test2/_missing_revs {1,1} > Headers: [{'Accept',"application/json"}, > {'Accept-Encoding',"gzip"}, > {'Authorization',"Basic YWRtaW46bXlwYXNzd29yZA=="}, > {'Connection',"keep-alive"}, > {'Content-Length',"75"}, > {'Host',"localhost:9093"}, > {'User-Agent',"CouchDB/1.0.1"}, > {'Via',"1.1 (jetty)"}, > {'X-Forwarded-For',"127.0.0.1"}] > > [Thu, 07 Oct 2010 07:22:34 GMT] [debug] [<0.447.0>] OAuth Params: [] > > this is the full log from the couchdb instance's perspective. it all > starts with a /_r.e.p.l.i.c.a.t.e and it gets stuck at a sending > /test2/_missing_revs requests. > > [Thu, 07 Oct 2010 07:18:47 GMT] [debug] [<0.219.0>] 'POST' /_replicate > {1,1} > Headers: [{'Accept',"*/*"}, > {'Content-Length',"101"}, > {'Content-Type',"application/json"}, > {'Host',"localhost:5984"}, > {'User-Agent',"curl/7.19.7 (x86_64-pc-linux-gnu) libcurl/7.19.7 > OpenSSL/0.9.8k zlib/1.2.3.3 libidn/1.15"}] > > [Thu, 07 Oct 2010 07:18:47 GMT] [debug] [<0.219.0>] OAuth Params: [] > > [Thu, 07 Oct 2010 07:18:59 GMT] [debug] [<0.229.0>] 'HEAD' /test2/ {1,1} > Headers: [{'Accept',"application/json"}, > {'Accept-Encoding',"gzip"}, > {'Authorization',"Basic YWRtaW46bXlwYXNzd29yZA=="}, > {'Connection',"keep-alive"}, > {'Host',"localhost:9093"}, > {'User-Agent',"CouchDB/1.0.1"}, > {'Via',"1.1 (jetty)"}, > {'X-Forwarded-For',"127.0.0.1"}] > > [Thu, 07 Oct 2010 07:18:59 GMT] [debug] [<0.229.0>] OAuth Params: [] > > [Thu, 07 Oct 2010 07:18:59 GMT] [info] [<0.229.0>] 127.0.0.1 - - 'HEAD' > /test2/ 200 > > [Thu, 07 Oct 2010 07:18:59 GMT] [debug] [<0.229.0>] 'GET' /test2/ {1,1} > Headers: [{'Accept',"application/json"}, > {'Accept-Encoding',"gzip"}, > {'Authorization',"Basic YWRtaW46bXlwYXNzd29yZA=="}, > {'Connection',"keep-alive"}, > {'Host',"localhost:9093"}, > {'User-Agent',"CouchDB/1.0.1"}, > {'Via',"1.1 (jetty)"}, > {'X-Forwarded-For',"127.0.0.1"}] > > [Thu, 07 Oct 2010 07:18:59 GMT] [debug] [<0.229.0>] OAuth Params: [] > > [Thu, 07 Oct 2010 07:18:59 GMT] [info] [<0.229.0>] 127.0.0.1 - - 'GET' > /test2/ 200 > > [Thu, 07 Oct 2010 07:18:59 GMT] [debug] [<0.230.0>] didn't find a > r.e.p.l.i.c.a.t.i.o.n log for test > > [Thu, 07 Oct 2010 07:18:59 GMT] [debug] [<0.229.0>] 'GET' > /test2/_local%2F900f0e46186175a5a31314ea5ad24857 {1,1} > Headers: [{'Accept',"application/json"}, > {'Accept-Encoding',"gzip"}, > {'Authorization',"Basic YWRtaW46bXlwYXNzd29yZA=="}, > {'Connection',"keep-alive"}, > {'Host',"localhost:9093"}, > {'User-Agent',"CouchDB/1.0.1"}, > {'Via',"1.1 (jetty)"}, > {'X-Forwarded-For',"127.0.0.1"}] > > [Thu, 07 Oct 2010 07:18:59 GMT] [debug] [<0.229.0>] OAuth Params: [] > > [Thu, 07 Oct 2010 07:18:59 GMT] [debug] [<0.229.0>] Minor error in HTTP > request: {not_found,missing} > > [Thu, 07 Oct 2010 07:18:59 GMT] [debug] [<0.229.0>] Stacktrace: > [{couch_httpd_db,couch_doc_open,4}, > {couch_httpd_db,db_doc_req,3}, > {couch_httpd_db,do_db_req,2}, > {couch_httpd,handle_request_int,5}, > {mochiweb_http,headers,5}, > {proc_lib,init_p_do_apply,3}] > > [Thu, 07 Oct 2010 07:18:59 GMT] [info] [<0.229.0>] 127.0.0.1 - - 'GET' > /test2/_local%2F900f0e46186175a5a31314ea5ad24857 404 > > [Thu, 07 Oct 2010 07:18:59 GMT] [debug] [<0.229.0>] httpd 404 error > response: > {"error":"not_found","reason":"missing"} > > > [Thu, 07 Oct 2010 07:18:59 GMT] [debug] [<0.230.0>] didn't find a > r.e.p.l.i.c.a..t.i.o.n log for http://admin:mypassw...@localhost > :9093/replicate/test2/ > > [Thu, 07 Oct 2010 07:18:59 GMT] [info] [<0.219.0>] starting new replication > "900f0e46186175a5a31314ea5ad24857+continuous" at <0.230.0> > > [Thu, 07 Oct 2010 07:18:59 GMT] [info] [<0.219.0>] 127.0.0.1 - - 'POST' > /_replicate 202 > > ideas ? > > sam > > > -- > f u cn rd ths u cn b a gd prgmr ! > -- f u cn rd ths u cn b a gd prgmr !
