On Sun, Nov 11, 2012 at 8:25 PM, Matt Welland <estifo...@gmail.com> wrote:

> Comparison of your fix vs. my hack below. I suspect that blindly clearing
> out the buffer of any line noise before sending anything to the remote end
> will work better but I have no logic or solid arguments to back up that
> assertion.
>

Both versions send two "echo" commands to the remote side, ignore the
return from the first echo and check the return from the second.  The only
difference that I see between your patch and mine (unless I'm missing
something) is that I'm sending different "echo" text.  What do you see that
is different from this?



>
> =============================================
> matt@xena:~/data/fossil/junk$ fsl info
> project-name: Fossil
> repository:   /home/matt/fossils/fossil.fossil
> local-root:   /home/matt/data/fossil/
> project-code: CE59BB9F186226D80E49D1FA2DB29F935CCA0333
> checkout:     4473a27f3b6e049e3c162e440e0e4c87daf9570c 2012-11-11 22:42:50
> UTC
> parent:       8c7faee6c5fac25b8456e96070ce068400d1d7e1 2012-11-11 17:59:42
> UTC
> tags:         trunk
> comment:      Further attempts to help the "ssh" sync protocol move past
> noisy
>               motd comments and other extraneous login text, synchronize
> with
>               the remote end, and start exchanging messages successfully.
>               (user: drh)
> matt@xena:~/data/fossil/junk$ rm -f fossil*;(cd ..;make) && ../fossil
> clone ssh://matt@xena//home/matt/fossils/fossil.fossil fossil.fossil
>
> make: Nothing to be done for `all'.
> ssh matt@xena
> Pseudo-terminal will not be allocated because stdin is not a terminal.
> ../fossil: ssh connection failed: [test1]
> =============================================
>
> matt@xena:~/data/fossil/junk$ rm -f fossil*;(cd ..;make > make.log) &&
> ../fossil clone ssh://matt@xena//home/matt/fossils/fossil.fossil
> fossil.fossil
>
> ssh matt@xena
> Pseudo-terminal will not be allocated because stdin is not a terminal.
>                 Bytes      Cards  Artifacts     Deltas
> Sent:              53          1          0          0
> Received:     5004225      13950       1751       5238
> Sent:              71          2          0          0
> Received:     5032480       9827       1742       3132
> Sent:              57         93          0          0
> Received:     5012028       9872       1137       3806
> Sent:              57          1          0          0
>  Received:     4422156       3069        367       1169
> Total network traffic: 1035 bytes sent, 19471761 bytes received
>
> Rebuilding repository meta-data...
>   100.0% complete...
> project-id: CE59BB9F186226D80E49D1FA2DB29F935CCA0333
>  server-id:  3e5f8ed7b0eed8a144fa4b07b4b34cc6c374d20c
> admin-user: matt (password is "40faae")
>
>
>
>
>
>
> On Sun, Nov 11, 2012 at 6:09 PM, Richard Hipp <d...@sqlite.org> wrote:
>
>>
>>
>> On Sun, Nov 11, 2012 at 7:10 PM, Matt Welland <estifo...@gmail.com>wrote:
>>
>>>
>>> On Sun, Nov 11, 2012 at 3:44 PM, Richard Hipp <d...@sqlite.org> wrote:
>>>
>>>>
>>>>
>>>> On Sun, Nov 11, 2012 at 5:11 PM, Matt Welland <estifo...@gmail.com>wrote:
>>>>
>>>>> I'll top-post an answer to this one as this thread has wandered and
>>>>> gotten very long, so who knows who is still following :)
>>>>>
>>>>> I made a simple tweak to the ssh code that gets ssh working for me on
>>>>> Ubuntu and may solve some of the login shell related problems that have
>>>>> been reported with respect to ssh:
>>>>>
>>>>>
>>>>> http://www.kiatoa.com/cgi-bin/fossils/fossil/fdiff?v1=935bc0a983135b26&v2=61f9ddf1e2c8bbb0
>>>>>
>>>>
>>>> Not exactly the same patch, but something quite similar has been
>>>> checked in at http://www.fossil-scm.org/fossil/info/4473a27f3b -
>>>> please try it out and let me know if it clears any outstanding problems, or
>>>> if I missed some obvious benefit of Matt's patch in my refactoring.
>>>>
>>>
>>> It seems not to work in my situation with the sending of test1. I'm not
>>> sure why.
>>>
>>
>> The trunk changes works here.  And I don't see how it is materially
>> different from your patch.  Am I overlooking something?
>>
>>
>>>
>>> ============= I get the following ================
>>> fossil/junk$ ../fossil clone 
>>> ssh://matt@xena//home/matt/fossils/fossil.fossil
>>> fossil.fossil
>>>
>>> ssh matt@xena
>>> Pseudo-terminal will not be allocated because stdin is not a terminal.
>>> ../fossil: ssh connection failed: [test1]
>>>
>>>
>>>
>>>
>>>>
>>>>
>>>>
>>>>>
>>>>> Joerg iasked if this will make it into a future release. Can Richard
>>>>> or one of the developers take a look at the change and comment?
>>>>>
>>>>> Note that unfortunately this does not fix the issues I'm having with
>>>>> fsecure ssh but I hope it gets us one step closer.
>>>>>
>>>>> Thanks,
>>>>>
>>>>> Matt
>>>>> -=-
>>>>>
>>>>>
>>>>>
>>>>> On Sun, Nov 11, 2012 at 1:53 PM, j. v. d. hoff <
>>>>> veedeeh...@googlemail.com> wrote:
>>>>>
>>>>>> On Sun, 11 Nov 2012 19:35:25 +0100, Matt Welland <estifo...@gmail.com>
>>>>>> wrote:
>>>>>>
>>>>>>  On Sun, Nov 11, 2012 at 2:56 AM, j. van den hoff
>>>>>>> <veedeeh...@googlemail.com>**wrote:
>>>>>>>
>>>>>>>  On Sun, 11 Nov 2012 10:39:27 +0100, Matt Welland <
>>>>>>>> estifo...@gmail.com>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>  sshfs is cool but in a corporate environment it can't always be
>>>>>>>> used. For
>>>>>>>>
>>>>>>>>> example fuse is not installed for end users on the servers I have
>>>>>>>>> access
>>>>>>>>> to.
>>>>>>>>>
>>>>>>>>> I would also be very wary of sshfs and multi-user access. Sqlite3
>>>>>>>>> locking
>>>>>>>>> on NFS doesn't always work well, I imagine that locking issues on
>>>>>>>>> sshfs
>>>>>>>>>
>>>>>>>>>
>>>>>>>> it doesn't? in which way? and are the mentioned problems restricted
>>>>>>>> to NFS
>>>>>>>> or other file systems (zfs, qfs, ...) as well?
>>>>>>>> do you mean that a 'central' repository could be harmed if two
>>>>>>>> users try
>>>>>>>> to push at the same time (and would corruption propagate to the
>>>>>>>> users'
>>>>>>>> "local" repositories later on)? I do hope not so...
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> I should have qualified that with the detail that historically NFS
>>>>>>> locking
>>>>>>> has been reported as an issue by others but I myself have not seen
>>>>>>> it. What
>>>>>>> I have seen in using sqlite3 and fossil very heavily on NFS is users
>>>>>>> using
>>>>>>> kill -9 right off the bat rather than first trying with just kill.
>>>>>>> The lock
>>>>>>> gets stuck "set" and only dumping the sqlite db to text and
>>>>>>> recreating it
>>>>>>> seems to clear the lock (not sure but maybe sometimes copying to a
>>>>>>> new file
>>>>>>> and moving back will clear the lock).
>>>>>>>
>>>>>>> I've seen a corrupted db once or maybe twice but never been clear
>>>>>>> that it
>>>>>>> was caused by concurrent access on NFS or not. Thankfully it is
>>>>>>> fossil and
>>>>>>> recovery is a "cp" away.
>>>>>>>
>>>>>>> Quite some time ago I did limited testing of concurrent access to an
>>>>>>> sqlite3 db on AFS and GFS and it seemed to work fine. The AFS test
>>>>>>> was very
>>>>>>> slow but that could well be due to my being clueless on how to
>>>>>>> correctly
>>>>>>> tune AFS itself.
>>>>>>>
>>>>>>> When you say zfs do you mean using the NFS export functionality of
>>>>>>> zfs?
>>>>>>>
>>>>>> yes
>>>>>>
>>>>>>  I've never tested that and it would be very interesting to know how
>>>>>>> well it
>>>>>>> works.
>>>>>>>
>>>>>>
>>>>>> not yet possible here, but we'll probably migrate to zfs in the not
>>>>>> too far future.
>>>>>>
>>>>>>
>>>>>>
>>>>>>> My personal opinion is that fossil works great over NFS but would
>>>>>>> caution
>>>>>>> anyone trying it to test thoroughly before trusting it.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>  could well be worse.
>>>>>>>>
>>>>>>>>>
>>>>>>>>> sshfs is an excellent work-around for an expert user but not a
>>>>>>>>> replacement
>>>>>>>>> for the feature of ssh transport.
>>>>>>>>>
>>>>>>>>>
>>>>>>>> yes I would love to see a stable solution not suffering from
>>>>>>>> interference
>>>>>>>> of terminal output (there are people out there loving the good old
>>>>>>>> `fortune' as part of their login script...).
>>>>>>>>
>>>>>>>> btw: why could fossil not simply(?) filter a reasonable amount of
>>>>>>>> terminal
>>>>>>>> output for the occurrence of a sufficiently strong magic pattern
>>>>>>>> indicating
>>>>>>>> that the "noise" has passed by and fossil can go to work? right now
>>>>>>>> putting
>>>>>>>> `echo " "' (sending a single blank) suffices to let the transfer
>>>>>>>> fail. my
>>>>>>>> understanding is that fossil _does_ send something like `echo test'
>>>>>>>> (is
>>>>>>>> this true). all unexpected output to tty from the login scripts
>>>>>>>>  would come
>>>>>>>> _before_ that so why not test for receiving the expected text
>>>>>>>> ('test' just
>>>>>>>> being not unique/strong enough) at the end of whatever is send (up
>>>>>>>> to a
>>>>>>>> reasonable length)? is this a stupid idea?
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> I thought of trying that some time ago but never got around to it.
>>>>>>> Inspired
>>>>>>> by your comment I gave a similar approach a quick try and for the
>>>>>>> first
>>>>>>> time I saw ssh work on my home linux box!!!
>>>>>>>
>>>>>>> All I did was read and discard any junk on the line before sending
>>>>>>> the echo
>>>>>>> test:
>>>>>>>
>>>>>>> http://www.kiatoa.com/cgi-bin/**fossils/fossil/fdiff?v1=**
>>>>>>> 935bc0a983135b26&v2=**61f9ddf1e2c8bbb0<http://www.kiatoa.com/cgi-bin/fossils/fossil/fdiff?v1=935bc0a983135b26&v2=61f9ddf1e2c8bbb0>
>>>>>>>
>>>>>>> ===========without==========
>>>>>>> rm: cannot remove `*': No such file or directory
>>>>>>> make: Nothing to be done for `all'.
>>>>>>> ssh matt@xena
>>>>>>> Pseudo-terminal will not be allocated because stdin is not a
>>>>>>> terminal.
>>>>>>> ../fossil: ssh connection failed: [Welcome to Ubuntu 12.04.1 LTS
>>>>>>> (GNU/Linux
>>>>>>> 3.2.0-32-generic-pae i686)
>>>>>>>
>>>>>>>  * Documentation:  https://help.ubuntu.com/
>>>>>>>
>>>>>>> 0 packages can be updated.
>>>>>>> 0 updates are security updates.
>>>>>>>
>>>>>>> test]
>>>>>>>
>>>>>>> ==============with============**===
>>>>>>> fossil/junk$ rm *;(cd ..;make) && ../fossil clone
>>>>>>> ssh://matt@xena//home/matt/**fossils/fossil.fossil
>>>>>>> fossil.fossil
>>>>>>> make: Nothing to be done for `all'.
>>>>>>> ssh matt@xena
>>>>>>> Pseudo-terminal will not be allocated because stdin is not a
>>>>>>> terminal.
>>>>>>>                 Bytes      Cards  Artifacts     Deltas
>>>>>>> Sent:              53          1          0          0
>>>>>>> Received:     5004225      13950       1751       5238
>>>>>>> Sent:              71          2          0          0
>>>>>>> Received:     5032480       9827       1742       3132
>>>>>>> Sent:              57         93          0          0
>>>>>>> Received:     5012028       9872       1137       3806
>>>>>>> Sent:              57          1          0          0
>>>>>>> Received:     4388872       3053        360       1168
>>>>>>> Total network traffic: 1037 bytes sent, 19438477 bytes received
>>>>>>> Rebuilding repository meta-data...
>>>>>>>   100.0% complete...
>>>>>>> project-id: CE59BB9F186226D80E49D1FA2DB29F**935CCA0333
>>>>>>> server-id:  3029a8494152737798f2768c799192**1f2342a84b
>>>>>>> admin-user: matt (password is "7db8e5")
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>> great. that's essentially what I had in mind (but your approach  of
>>>>>> sending two commands while flushing
>>>>>> the first response completely probably is better, AFAICS). will
>>>>>> something like this make it into a future release?
>>>>>>
>>>>>> joerg
>>>>>>
>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Sun, Nov 11, 2012 at 2:01 AM, Ramon Ribó <ram...@compassis.com>
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>  > Sshfs didn't fix the problems that I was having with
>>>>>>>>>> fossil+ssh, or at
>>>>>>>>>> least
>>>>>>>>>> > only did so partially.
>>>>>>>>>>
>>>>>>>>>> Why not? In what sshfs failed to give you the equivalent
>>>>>>>>>> functionality
>>>>>>>>>> than a remote access to a fossil database through ssh?
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> 2012/11/11 Timothy Beyer <bey...@fastmail.net>
>>>>>>>>>>
>>>>>>>>>>  At Sat, 10 Nov 2012 22:31:57 +0100,
>>>>>>>>>>
>>>>>>>>>>> j. van den hoff wrote:
>>>>>>>>>>> >
>>>>>>>>>>> > thanks for responding.
>>>>>>>>>>> > I managed to solve my problem in the meantime (see my previous
>>>>>>>>>>> mail in
>>>>>>>>>>> > this thread), but I'll make a memo of sshfs and have a look at
>>>>>>>>>>> it.
>>>>>>>>>>> >
>>>>>>>>>>> > joerg
>>>>>>>>>>> >
>>>>>>>>>>>
>>>>>>>>>>> Sshfs didn't fix the problems that I was having with fossil+ssh,
>>>>>>>>>>> or at
>>>>>>>>>>> least only did so partially.  Though, the problems that I was
>>>>>>>>>>> having
>>>>>>>>>>> with
>>>>>>>>>>> ssh were different.
>>>>>>>>>>>
>>>>>>>>>>> What I'd recommend doing is tunneling http or https through ssh,
>>>>>>>>>>> and
>>>>>>>>>>> host
>>>>>>>>>>> all of your fossil repositories on the host computer on your web
>>>>>>>>>>> server
>>>>>>>>>>> of
>>>>>>>>>>> choice via cgi.  I do that with lighttpd, and it works
>>>>>>>>>>> flawlessly.
>>>>>>>>>>>
>>>>>>>>>>> Tim
>>>>>>>>>>> ______________________________****_________________
>>>>>>>>>>> fossil-users mailing list
>>>>>>>>>>> fossil-users@lists.fossil-scm.****org <
>>>>>>>>>>> fossil-users@lists.fossil-**scm.org<fossil-users@lists.fossil-scm.org>
>>>>>>>>>>> >
>>>>>>>>>>> http://lists.fossil-scm.org:****8080/cgi-bin/mailman/listinfo/**
>>>>>>>>>>> **
>>>>>>>>>>> fossil-users<http://lists.**fossil-scm.org:8080/cgi-bin/**
>>>>>>>>>>> mailman/listinfo/fossil-users<http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users>
>>>>>>>>>>> >
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>> ______________________________****_________________
>>>>>>>>>> fossil-users mailing list
>>>>>>>>>> fossil-users@lists.fossil-scm.****org <fossil-users@lists.fossil-
>>>>>>>>>> **scm.org <fossil-users@lists.fossil-scm.org>>
>>>>>>>>>> http://lists.fossil-scm.org:****8080/cgi-bin/mailman/listinfo/**
>>>>>>>>>> **
>>>>>>>>>> fossil-users<http://lists.**fossil-scm.org:8080/cgi-bin/**
>>>>>>>>>> mailman/listinfo/fossil-users<http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users>
>>>>>>>>>> >
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>> --
>>>>>>>> Using Opera's revolutionary email client:
>>>>>>>> http://www.opera.com/mail/
>>>>>>>> ______________________________****_________________
>>>>>>>> fossil-users mailing list
>>>>>>>> fossil-users@lists.fossil-scm.****org <fossil-users@lists.fossil-**
>>>>>>>> scm.org <fossil-users@lists.fossil-scm.org>>
>>>>>>>> http://lists.fossil-scm.org:****8080/cgi-bin/mailman/listinfo/**
>>>>>>>> **fossil-users<http://lists.**fossil-scm.org:8080/cgi-bin/**
>>>>>>>> mailman/listinfo/fossil-users<http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users>
>>>>>>>> >
>>>>>>>>
>>>>>>>>
>>>>>>
>>>>>> --
>>>>>> Using Opera's revolutionary email client: http://www.opera.com/mail/
>>>>>> ______________________________**_________________
>>>>>> fossil-users mailing list
>>>>>> fossil-users@lists.fossil-scm.**org<fossil-users@lists.fossil-scm.org>
>>>>>> http://lists.fossil-scm.org:**8080/cgi-bin/mailman/listinfo/**
>>>>>> fossil-users<http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users>
>>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> fossil-users mailing list
>>>>> fossil-users@lists.fossil-scm.org
>>>>> http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> D. Richard Hipp
>>>> d...@sqlite.org
>>>>
>>>> _______________________________________________
>>>> fossil-users mailing list
>>>> fossil-users@lists.fossil-scm.org
>>>> http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users
>>>>
>>>>
>>>
>>> _______________________________________________
>>> fossil-users mailing list
>>> fossil-users@lists.fossil-scm.org
>>> http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users
>>>
>>>
>>
>>
>> --
>> D. Richard Hipp
>> d...@sqlite.org
>>
>> _______________________________________________
>> fossil-users mailing list
>> fossil-users@lists.fossil-scm.org
>> http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users
>>
>>
>
> _______________________________________________
> fossil-users mailing list
> fossil-users@lists.fossil-scm.org
> http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users
>
>


-- 
D. Richard Hipp
d...@sqlite.org
_______________________________________________
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users

Reply via email to