[issue2439] Status does not see changes if only ctime increases

Justas Butkus bugs at mercurial.selenic.com
Fri Oct 15 14:09:16 UTC 2010


New submission from Justas Butkus <butkus.justas at gmail.com>:

A problem is related to file changing via SFTP (ssh) protocol.

When a client changes file swapping two symbols (i.e. 'hello' -> 'helol') 
and ctime is increased change is not observed.
Only later if someone changes file more, to change file size (and/or inode) 
BOTH changes (in hg diff) are observed.

How to reproduce:
1) Create new repository in a "server".
2) Create file in working copy (i.e. 'test.txt' with single line 'Hello 
World!').
3) Set up sshd.
4) Connect to server via ssh.
5) Change file (i.e. write 'Helol World!').
6) Run 'hg status'.
There is no output.

Tested with 'subversion' and 'git' - change is observed.

Bellow is output of 'stat' command for debugging purposes.

# Before change
jb at jb-x61s:/home/test# stat file.txt 
  File: `file.txt'
  Size: 76        	Blocks: 8          IO Block: 4096   regular file
Device: 806h/2054d	Inode: 268594      Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1001/ user1)   Gid: ( 1001/ user1)
Access: 2010-10-15 16:54:29.493935444 +0300
Modify: 2010-10-15 16:52:33.183937035 +0300
Change: 2010-10-15 16:53:29.603941396 +0300

# After change
jb at jb-x61s:/home/test# stat file.txt 
  File: `file.txt'
  Size: 76        	Blocks: 8          IO Block: 4096   regular file
Device: 806h/2054d	Inode: 268594      Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1001/ user1)   Gid: ( 1001/ user1)
Access: 1970-01-01 03:00:00.000000000 +0300
Modify: 2010-10-15 16:52:33.000000000 +0300
Change: 2010-10-15 16:55:10.133934872 +0300


Client is under MacOSX using ForkLift as ssh client and TextMate as editor.

Server information follows:

jb at jb-x61s:~$ uname -a
Linux jb-x61s 2.6.32-25-generic #44-Ubuntu SMP Fri Sep 17 20:05:27 UTC 2010 
x86_64 GNU/Linux

jb at jb-x61s:~$ cat /etc/debian_version 
squeeze/sid

# Ubuntu 10.04

jb at jb-x61s:~$ hg --version
Mercurial Distributed SCM (version 1.4.3)

Copyright (C) 2005-2010 Matt Mackall <mpm at selenic.com> and others
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

----------
messages: 14046
nosy: jbutkus
priority: bug
status: unread
title: Status does not see changes if only ctime increases

____________________________________________________
Mercurial issue tracker <bugs at mercurial.selenic.com>
<http://mercurial.selenic.com/bts/issue2439>
____________________________________________________


More information about the Mercurial-devel mailing list