I am testing attachment sync between SyncGateway(1.1) and CBL(1.1) on 
Android(5.0.1) emulator using REST API, I can sync attachment from CBL to 
SG, but when I try to sync attachment  from SyncGateway  to CBL, I found 
the completed_change_count of ActiveTasks really  add 1,but I can not find 
the attachment that should be sync to CBL.
    I found the following logs:

V/ChangeTracker(20024): 
com.couchbase.lite.replicator.ChangeTracker@19153841: /readValue. 
 fullBody: {results=[{seq=80, id=MSG:64598a8e-b613-4026-8b68-4471d65d0bcd, 
changes=[{rev=4-d1da30c8ac590e7875df9823475e3074}]}], last_seq=80}
D/ChangeTracker(20024): 
com.couchbase.lite.replicator.ChangeTracker@19153841: 
changeTrackerReceivedChange: {seq=80, 
id=MSG:64598a8e-b613-4026-8b68-4471d65d0bcd, 
changes=[{rev=4-d1da30c8ac590e7875df9823475e3074}]}
D/Sync    (20024): changeTrackerReceivedChange: {seq=80, 
id=MSG:64598a8e-b613-4026-8b68-4471d65d0bcd, 
changes=[{rev=4-d1da30c8ac590e7875df9823475e3074}]}
D/Sync    (20024): com.couchbase.lite.replicator.PullerInternal@39200f0e: 
adding rev to inbox {MSG:64598a8e-b613-4026-8b68-4471d65d0bcd 
#4-d1da30c8ac590e7875df9823475e3074}
V/Sync    (20024): com.couchbase.lite.replicator.PullerInternal@39200f0e: 
changeTrackerReceivedChange() incrementing changesCount by 1
V/Sync    (20024): com.couchbase.lite.replicator.PullerInternal@39200f0e: 
Incrementing changesCount count from 37 by adding 1 -> 38
V/Sync    (20024): com.couchbase.lite.replicator.PullerInternal@39200f0e: 
addToInbox() called, rev: {MSG:64598a8e-b613-4026-8b68-4471d65d0bcd 
#4-d1da30c8ac590e7875df9823475e3074}.  Thread: 
Thread[ChangeTracker-http://X.X.X.X/sgdb/,5,TJWS threads]
V/CBLite  (20024): setPaused: false
D/ChangeTracker(20024): 
com.couchbase.lite.replicator.ChangeTracker@19153841: 
/changeTrackerReceivedChange: {seq=80, 
id=MSG:64598a8e-b613-4026-8b68-4471d65d0bcd, 
changes=[{rev=4-d1da30c8ac590e7875df9823475e3074}]}
V/ChangeTracker(20024): 
com.couchbase.lite.replicator.ChangeTracker@19153841: responseOK: true
D/Sync    (20024): changeTrackerCaughtUp
V/ChangeTracker(20024): 
com.couchbase.lite.replicator.ChangeTracker@19153841: Starting new longpoll
V/ChangeTracker(20024): 
com.couchbase.lite.replicator.ChangeTracker@19153841: Making request to 
http://X.X.X.X/sgdb/_changes
V/Sync    (20024): *** 
com.couchbase.lite.replicator.ReplicationInternal$2@b649f0f: BEGIN 
processInbox (1 sequences)
D/Sync    (20024): processInbox called
V/Sync    (20024): com.couchbase.lite.replicator.PullerInternal@39200f0e: 
fetching 1 remote revisions...
D/Sync    (20024): com.couchbase.lite.replicator.PullerInternal@39200f0e: 
pullRemoteRevision with rev: {MSG:64598a8e-b613-4026-8b68-4471d65d0bcd 
#4-d1da30c8ac590e7875df9823475e3074}
V/Sync    (20024): com.couchbase.lite.support.RemoteRequestRetry@5885628: 
RemoteRequestRetry created, url: 
http://X.X.X.X/sgdb/MSG%3A64598a8e-b613-4026-8b68-4471d65d0bcd?rev=4-d1da30c8ac590e7875df9823475e3074&revs=true&attachments=true
V/Sync    (20024): 
com.couchbase.lite.support.RemoteMultipartDownloaderRequest@303d0f41: 
RemoteRequest created, url: 
http://X.X.X.X/sgdb/MSG%3A64598a8e-b613-4026-8b68-4471d65d0bcd?rev=4-d1da30c8ac590e7875df9823475e3074&revs=true&attachments=true
D/Sync    (20024): [fireTrigger()] => RESUME
V/CBLite  (20024): setPaused: false
V/Sync    (20024): *** 
com.couchbase.lite.replicator.ReplicationInternal$2@b649f0f: END 
processInbox (lastSequence=77)
D/Sync    (20024): firing trigger: RESUME
V/Sync    (20024): [onExit()] IDLE => RUNNING
D/Sync    (20024): State transition: IDLE -> RUNNING (via RESUME).  this: 
com.couchbase.lite.replicator.PullerInternal@39200f0e
D/Sync    (20024): [PullerInternal.waitForPendingFutures()] STARTED - 
thread id: 383
E/RemoteRequest(20024): 
com.couchbase.lite.support.RemoteMultipartDownloaderRequest@303d0f41: 
executeRequest() Exception:
E/RemoteRequest(20024): java.lang.NullPointerException: Attempt to invoke 
virtual method 'boolean java.lang.String.startsWith(java.lang.String)' on a 
null object reference
E/RemoteRequest(20024): at 
com.couchbase.lite.support.MultipartDocumentReader.setHeaders(MultipartDocumentReader.java:70)
E/RemoteRequest(20024): at 
com.couchbase.lite.support.RemoteMultipartDownloaderRequest.executeRequest(RemoteMultipartDownloaderRequest.java:95)
E/RemoteRequest(20024): at 
com.couchbase.lite.support.RemoteMultipartDownloaderRequest.run(RemoteMultipartDownloaderRequest.java:48)
E/RemoteRequest(20024): at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:422)
E/RemoteRequest(20024): at 
java.util.concurrent.FutureTask.run(FutureTask.java:237)
E/RemoteRequest(20024): at 
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:152)
E/RemoteRequest(20024): at 
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:265)
E/RemoteRequest(20024): at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
E/RemoteRequest(20024): at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
E/RemoteRequest(20024): at java.lang.Thread.run(Thread.java:818)
D/Sync    (20024): com.couchbase.lite.support.RemoteRequestRetry$1@c20acd4: 
RemoteRequestRetry inner request finished, url: 
http://X.X.X.X/sgdb/MSG%3A64598a8e-b613-4026-8b68-4471d65d0bcd?rev=4-d1da30c8ac590e7875df9823475e3074&revs=true&attachments=true
D/Sync    (20024): com.couchbase.lite.support.RemoteRequestRetry@5885628: 
isTransientError called, httpResponse: 
org.apache.http.message.BasicHttpResponse@1e8a5e7d e: 
java.lang.NullPointerException: Attempt to invoke virtual method 'boolean 
java.lang.String.startsWith(java.lang.String)' on a null object reference
D/Sync    (20024): %s: return false
D/Sync    (20024): com.couchbase.lite.support.RemoteRequestRetry$1@c20acd4: 
RemoteRequestRetry failed, non-transient error.  NOT retrying. url: 
http://X.X.X.X/sgdb/MSG%3A64598a8e-b613-4026-8b68-4471d65d0bcd?rev=4-d1da30c8ac590e7875df9823475e3074&revs=true&attachments=true
E/Sync    (20024): Error pulling remote revision
E/Sync    (20024): java.lang.NullPointerException: Attempt to invoke 
virtual method 'boolean java.lang.String.startsWith(java.lang.String)' on a 
null object reference
E/Sync    (20024): at 
com.couchbase.lite.support.MultipartDocumentReader.setHeaders(MultipartDocumentReader.java:70)
E/Sync    (20024): at 
com.couchbase.lite.support.RemoteMultipartDownloaderRequest.executeRequest(RemoteMultipartDownloaderRequest.java:95)
E/Sync    (20024): at 
com.couchbase.lite.support.RemoteMultipartDownloaderRequest.run(RemoteMultipartDownloaderRequest.java:48)
E/Sync    (20024): at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:422)
E/Sync    (20024): at 
java.util.concurrent.FutureTask.run(FutureTask.java:237)
E/Sync    (20024): at 
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:152)
E/Sync    (20024): at 
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:265)
E/Sync    (20024): at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
E/Sync    (20024): at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
E/Sync    (20024): at java.lang.Thread.run(Thread.java:818)
V/Sync    (20024): com.couchbase.lite.replicator.PullerInternal@39200f0e: 
giving up on {MSG:64598a8e-b613-4026-8b68-4471d65d0bcd 
#4-d1da30c8ac590e7875df9823475e3074}: java.lang.NullPointerException: 
Attempt to invoke virtual method 'boolean 
java.lang.String.startsWith(java.lang.String)' on a null object reference
V/CBLite  (20024): setPaused: false
D/RemoteRequest(20024): 
com.couchbase.lite.support.RemoteMultipartDownloaderRequest@303d0f41: 
executeRequest() finally
V/ChangeTracker(20024): 
com.couchbase.lite.replicator.ChangeTracker@19153841: got response. status: 
HTTP/1.1 200 OK mode: LongPoll
V/ChangeTracker(20024): 
com.couchbase.lite.replicator.ChangeTracker@19153841: /entity.getContent(). 
 mode: LongPoll
V/ChangeTracker(20024): 
com.couchbase.lite.replicator.ChangeTracker@19153841: readValue

Note: I have replace the address and bucket name of sync gateway.
id=MSG:64598a8e-b613-4026-8b68-4471d65d0bcd, 
changes=[{rev=4-d1da30c8ac590e7875df9823475e3074 this doc and rev is 
the attachment doc added from SG.

-- 
You received this message because you are subscribed to the Google Groups 
"Couchbase Mobile" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/mobile-couchbase/eecadf6e-e3de-4081-a726-d3e7972eccd7%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to