Re: Why does createrepo -C use ctime, not mtime?

Seth Vidal <[email protected]>
Newsgroups gmane.linux.rpm.metadata
Message-ID <[email protected]>

On Wed, 7 Apr 2010, Robert Vogelgesang wrote:

> 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?

You have to search pretty far back.

here is where the original -C behavior comes from:

http://lists.baseurl.org/pipermail/rpm-metadata/2006-July/000663.html

-sv
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.