[execnet-dev] RSync Issue

Charles Solar charlessolar at gmail.com
Tue Jul 13 00:16:30 CEST 2010


I'll make up a small test case but just so I do not forgot I found
another bug dealing with symlinks.
I think that all relative symlinks are broken, or else I do not
understand how they could have worked before.
I saw it be having a structure like this rsync:

lib/
   libnet.so -> libnet.so.1.0.0
   libnet.so.1.0.0

What it created on the remote side was

lib/
  libnet.so -> /tmp/rsynctemp/libnet.so.1.0.0
  libnet.so.1.0.0

The link on the remote side did not include the lib subdir in the
link.  After looking at the code I fixed it up but I do not think they
should be working at all since the code atm only works if the symlink
is in the root dest directory.

Ill send in a patch for you to look at.

Charles

On Sun, Jul 11, 2010 at 5:36 AM, holger krekel <holger at merlinux.eu> wrote:
> Hi Charles,
>
> On Fri, Jul 09, 2010 at 10:03 -0500, Charles Solar wrote:
>> It would appear that RSync will only work with brand new gateways that
>> have not had any other operations run on them.  Is this intentional?
>
> No.  Sounds like a bug.
>
>> For example, I do something like
>>
>> gw = execnet.makegateway( "ssh=foobar" )
>> gw.remote_exec( mybootstrapper )
>>
>> ... then later I want to rsync ...
>>
>> rsync = execnet.RSync( "/tmp/foobar" )
>> rsync.add_target( gw, "/tmp/barfoo" )
>> rsync.send()
>>
>> I get remote EOFErrors
>>
>> File "execnet-1.0.6-py2.7.egg/execnet/rsync.py", line 126, in send
>>     self._end_of_channel(channel)
>>   File "execnet-1.0.6-py2.7.egg/execnet/rsync.py", line 44, in _end_of_channel
>>     channel.waitclose()
>>   File "execnet-1.0.6-py2.7.egg/execnet/gateway_base.py", line 377, in waitclose
>>     raise error
>> exceptions.EOFError: expected 1 bytes, got 0
>>
>> If I however create a brand new gateway to give to rsync it works fine.
>>
>> I would think that since rsync just creates a new channel on the
>> gateway that it should work on existing 'old' gateways.
>
> yip. Myself i only used it for doing things at the beginning, it seems.
> Do you have or could you try to find an repeatable minimal example?
>
> best,
>
> holger
>



More information about the execnet-dev mailing list