[Rpm-maint] [rpm-software-management/rpm] Adding high precision event time stamps to RPM (#197)

Jeff Johnson notifications at github.com
Tue Apr 11 05:44:38 UTC 2017

Attached is patch to extend RPMTAG_{BUILDTIME,INSTALLTIME,INSTALLTID} to add a 2nd element that contains a struct timespec tspec.tv_nsec 2nd element.

There are 2 new getters/setters added to the rpmts API: rpm{Get,Set}Tid2().

About the only subtlety (so far) is the need (for rpmdb "legacy compatibility") to index only tspec.tv_secs in RPMDBI_INSTALLTID. A better index could be attempted, but the value of the Installed index w/o --rollback is questionable. Using a UUIDv1 timestamp would be one possible choice for a more precise RPMDBI_INSTALLTID key.

These are the reasons (that I know of) to increase the precision of time stamps:

0) time(2) is very last century (but still doing the job).

1) INSTALLTIME can be inaccurate these days: fast processors can install multiple packages/second.

2) INSTALLTID was designed to be unique: adding microsecs/nanosecs helps ensure the uniqueness.

3) UUIDv1 time stamps are likelier to be unique if generated with a high precision time stamp.


You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20170410/d69ab14f/attachment-0001.html>

More information about the Rpm-maint mailing list