The Puppet Labs Issue Tracker has Moved:

This issue tracker is now in read-only archive mode and automatic ticket export has been disabled. Redmine users will need to create a new JIRA account to file tickets using See the following page for information on filing tickets with JIRA:

Bug #3926

Rename uniqueid hostid

Added by Greg Maples almost 6 years ago. Updated over 2 years ago.

Status:AcceptedStart date:06/01/2010
Priority:NormalDue date:
Assignee:-% Done:


Target version:-
Keywords: Affected Facter version:

We've Moved!

Ticket tracking is now hosted in JIRA:

This ticket is now tracked at:


basing it on hostid is not nearly unique enough especially in a xen environment with duplicated machines and multiple instances of IPs and MACs. I’d suggest something like serial number from BIOS (works for dell, hp, ibm, etc – significant portion of all x86 machines) modified by the system time when facter was initially installed.

Related issues

Related to Facter - Bug #3762: Implement UUID fact Tests Insufficient 05/13/2010


#1 Updated by James Turnbull almost 6 years ago

  • Project changed from Puppet to Facter

#2 Updated by James Turnbull almost 6 years ago

  • Category set to library
  • Status changed from Unreviewed to Needs Decision

Hmmm this probably won’t help with all OSes. Think this needs more thought.

#3 Updated by Greg Maples almost 6 years ago

A variation of bios based serial number is available in all sun/solaris machines, all linux based dell, hp, aix/ibm, etc. It’s available on the mac, etc. I would think that covering 90% of your target user base with something virtually guaranteed to be unique, and using some other sequence for the 10% would be a fast and very useful approach.

#4 Updated by Luke Kanies over 5 years ago

Is uniqueid really a universal concept? I originally pulled it from Solaris, where it always worked, but I don’t think any other OS really has a consistently unique ID.

I’m comfortable renaming the fact to reflect that, since the label only really applies on Solaris.

Any comments?

#5 Updated by Greg Maples over 5 years ago

I think there’s a lot of value to be found in a uniquely computed identifier. even if it’s something like an sshkey, something with some random entropy. without it, temporarily spun up virtual machine instances will all look identical, even host name and IP can be similar or the same.

#6 Updated by Alan Barrett over 5 years ago

Luke Kanies wrote:

Is uniqueid really a universal concept? […] I’m comfortable renaming the fact to reflect that

I’d suggest renaming the fact to “hostid”, to better match the underlying operating system’s name for that identifier. If the OS doesn’t provide a gethostid() library function or a hostid command, then facter can simply omit the fact. If the hostid is not really unique, then it’s not facter’s fault; you can tell users to blame the OS vendor.

In other words, if the fact is called “uniqueid” then users will expect it to be unique, and will blame facter when it’s not unique; but if the fact is called “hostid” then users will be receptive to the idea that facter merely copies what the OS reports, and facter is not responsible for making it unique.

#7 Updated by Paul Nasrat over 5 years ago

We probably want to do the implement, deprecate old, delete dance with this. Adding uuid and hostid and deprecate uniqueid.

#8 Updated by Paul Nasrat over 5 years ago

  • Subject changed from uniqueid not unique enough to Rename uniqueid hostid
  • Status changed from Needs Decision to Accepted

I agree with the rename – splitting the two bugs along this (this one for rename which is where the discussion is and Issue #3762 for UUID which has more links for that).

#9 Updated by Adrien Thebo over 4 years ago

  • Target version set to 14

Since this will break backwards compatibility, this needs to be associated with a major point release.

#10 Updated by Ken Barber about 4 years ago

  • Target version changed from 14 to 186

#11 Updated by Anonymous about 4 years ago

  • Target version deleted (186)

#12 Updated by Jason Antman over 2 years ago

Redmine Issue #3926 has been migrated to JIRA:

Also available in: Atom PDF