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