Ticket #1395 (closed defect: fixed)

Opened 10 years ago

Last modified 10 years ago

Fish broken in recent versions

Reported by: Hubbitus Owned by: slavazanko
Priority: major Milestone: 4.7.0-pre1
Component: mc-vfs Version: master
Keywords: Cc: pahan@…
Blocked By: Blocking:
Branch state: Votes for changeset: merged-master

Description

Just on copy file over fish to remote server nothing happened.

Absolutely nothing - nor error, nor copy, nor any message. All seemed as copy done, but file absent on remote side.

mc-4.6.99.3-9-g1448fb9

Change History

comment:1 Changed 10 years ago by Hubbitus

  • Component changed from mc-core to mc-vfs

comment:2 Changed 10 years ago by Hubbitus

  • Cc pahan@… added

comment:3 Changed 10 years ago by slavazanko

  • Milestone changed from 4.7 to 4.7.0-pre1

comment:4 Changed 10 years ago by slavazanko

  • Status changed from new to accepted
  • Owner set to slavazanko

Yes, error raised when I'm try to copy on fish (not from fish).

Bug need to close before 4.7.0-pre1

comment:5 Changed 10 years ago by slavazanko

  • Version changed from 4.6.2 to master

comment:6 Changed 10 years ago by slavazanko

  • severity changed from no branch to on review

Created branch 1395_copy_to_fish_broken (parent: master)

Initial changeset:5c2ef00cf68a85ef2e58b61067c328a6cdcdb74a

Review, please

comment:7 Changed 10 years ago by iNode

  • severity changed from on review to on rework

situation with

errno == EEXIST

can be more than in one case (just fish), but also on local FS in case of condition race
(file created after your check for existance).

I think you should also handle properly that case.

Also

open_flags &= ~O_EXCL;

can be replaced by more trivial

open_flags ^= O_EXCL;

comment:8 Changed 10 years ago by iNode

It seems to be fish stat problem, because another remote fs like sshfs/nfs works correctly, i.e:

dd if=~/.profile of=./sshfs/.profile conv=excl

comment:9 Changed 10 years ago by slavazanko

  • severity changed from on rework to on review

comment:11 Changed 10 years ago by iNode

  • Votes for changeset set to iNode

Can you place here TODO or FIXME keywords or open ticket to refactoring in VFS Standardisation milestone?

comment:12 Changed 10 years ago by slavazanko

I think, after fixing this bug (as hack) to this ticket will added one of 'FIXME' or 'TODO' keywords and this ticket (in 'open' or 'reopen' state) will be moved into 'VFS Standartization' milestone.

Is this good way?

comment:13 Changed 10 years ago by iNode

  • Votes for changeset iNode deleted
  • severity changed from on review to on rework

Yes. But I'm check that branch with as much ssh servers as possible and it broken.

It still don't copy file and segfault on copy directory with (empty) file in it.
I can reproduce it on different hosts with opennssh-server 5.1p1-5 (Debian 5) in my
network, but can't reproduced with 5.1p1-5 on m-c.o host (I think host RTT does matter here).

Just for check of mc version correctness:

$ git branch | grep '*'
* 1395_copy_to_fish_broken
$ git describe
4.6.99.3-21-gf7c5372
$ mc -V
GNU Midnight Commander 4.6.99.3-21-gf7c5372

comment:14 Changed 10 years ago by slavazanko

  • severity changed from on rework to on review

comment:15 Changed 10 years ago by slavazanko

comment:16 Changed 10 years ago by iNode

  • Votes for changeset set to iNode

Good work. Thanks!

comment:17 Changed 10 years ago by angel_il

  • Votes for changeset changed from iNode to iNode angel_il
  • severity changed from on review to approved

comment:18 Changed 10 years ago by slavazanko

  • Status changed from accepted to testing
  • Votes for changeset changed from iNode angel_il to merged-master
  • Resolution set to fixed
  • severity changed from approved to merged

comment:19 Changed 10 years ago by slavazanko

  • Status changed from testing to closed
Note: See TracTickets for help on using tickets.