perlundq/yajsync

protocol mismatch: rsync sender sends trailing data on nonexisting path

Closed this issue · 0 comments

rsync sender sends trailing data when specifying a recursive remote file transfer from yajsync -> rsync daemon and a nonexisting path on the sender side. E.g.

yajsync -rvvv rsync://rsync.kernel.org/pub/no_such_path
FINER: deferring exception raised by task 1/2: java.util.concurrent.ExecutionException: com.github.perlundq.yajsync.session.RsyncProtocolException: Unexpectedly got 2 bytes from peer during connection tear down: [0xff, 0x01]
Mar 23, 2016 11:44:57 PM com.github.perlundq.yajsync.session.RsyncTaskExecutor exec
FINER: waiting for result from task 2/2
Mar 23, 2016 11:44:57 PM com.github.perlundq.yajsync.session.RsyncTaskExecutor exec
FINER: task 2/2 finished OK
Mar 23, 2016 11:44:57 PM com.github.perlundq.yajsync.RsyncClient$FileListing$2 call
FINE: shutting down java.util.concurrent.ThreadPoolExecutor@1c80acf[Running, pool size = 3, active threads = 1, queued tasks = 0, completed tasks = 2]
Exception in thread "main" com.github.perlundq.yajsync.session.RsyncProtocolException: Unexpectedly got 2 bytes from peer during connection tear down: [0xff, 0x01]
at com.github.perlundq.yajsync.session.Receiver.readAllMessagesUntilEOF(Receiver.java:1913)
at com.github.perlundq.yajsync.session.Receiver.call(Receiver.java:368)
at com.github.perlundq.yajsync.session.Receiver.call(Receiver.java:68)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)