Why does createrepo -C use ctime, not mtime?

Robert Vogelgesang <[email protected]>
Newsgroups gmane.linux.rpm.metadata
Message-ID <[email protected]>
Hello developers,

currently, I'm investigating an issue with "createrepo --update -C"
when run by "cobbler reposync", and found in createrepo's source
that the -C option is based on Python's os.path.getctime(), i. e. the
time of the last status change on *nix hosts (ctime).

As of version 2.0.3.1, "cobbler reposync" chown's and chmod's all
files in a repo on each run, changing the ctime of all files in the
repo; I think this is a bug in itself, but nonetheless I'd expect
that mtime is used by createrepo when checking for changed files.

createrepo's variable which holds the reference timestamp,
self.mdtimestamp in class MetaDataConfig, seems to indicate that mtime
should be, or even was historically used.  So, is there any special
reason why this is based on ctime and not mtime?  I've searched
createrepo's source, and http://createrepo.baseurl.org/, but found
no answer.

Can you shed some light on this, please?

	Robert
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.