Bug 683037 - fqdn_rand() produces "bignum too big to convert into `unsigned long'" error
Summary: fqdn_rand() produces "bignum too big to convert into `unsigned long'" error
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Red Hat Enterprise Linux 4
Classification: Red Hat
Component: ruby
Version: 4.8
Hardware: i386
OS: Linux
unspecified
low
Target Milestone: ---
: ---
Assignee: Vít Ondruch
QA Contact: BaseOS QE Security Team
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-03-08 12:16 UTC by Ade Rixon
Modified: 2012-06-20 13:27 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2012-06-20 13:27:58 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Ade Rixon 2011-03-08 12:16:31 UTC
Description of problem:

Under EL4, calling fqdn_rand in a Puppet class consistently produces the following error:
bignum too big to convert into `unsigned long'
Typically, this error occurs during compilation on the Puppet master, which makes it very difficult to work around in the policy as any conditional test on $operatingsystemrelease runs against the agent host. It also means that even EL5 agents running against an EL4 Puppet master cannot call fqdn_rand.

Version-Release number of selected component (if applicable):

puppet-0.25.5-1.el4
puppet-server-0.25.5-1.el4
ruby-1.8.1-7.el4_8.4

How reproducible:

Use fqdn_rand() in any Puppet policy and either retrieve the policy from an EL4 Puppet master or run locally on an EL4 agent.

Steps to Reproduce:
1. Create test.pp containing:
alert(fqdn_rand("60"))
2. Run:
$ puppet test.pp
3.
  
Actual results:

bignum too big to convert into `unsigned long' at /home/me/test.pp:1 on node testnode.example.com

Expected results:

alert: Scope(Class[main]): 48

Additional info:

Underlying problem may be in RHEL 4 ruby. Same EPEL version works fine under EL5 with ruby-1.8.5.

Comment 1 Todd Zullinger 2011-03-08 14:18:18 UTC
This is definitely a ruby ruby bug.  I'm not sure if there's any way to work around it in puppet's code or not.  EL4 is nearing it's EOL and will not serve well as a puppetmaster for much longer.  Other EL and Fedora releases will soon move to puppet 2.6.x and I am doubtful that we will push that to EL-4.

I'll reassign this to ruby and see if the maintainers there have suggestions or can backport the fixes from newer ruby releases.

Comment 2 Ade Rixon 2011-03-08 21:03:13 UTC
Thanks for the response, Todd. 'Tis as I feared but thought it was worth raising anyway in case there was a simple fix.

Comment 3 Jiri Pallich 2012-06-20 13:27:58 UTC
Thank you for submitting this issue for consideration in Red Hat Enterprise Linux. The release for which you requested us to review is now End of Life. 
Please See https://access.redhat.com/support/policy/updates/errata/

If you would like Red Hat to re-consider your feature request for an active release, please re-open the request via appropriate support channels and provide additional supporting details about the importance of this issue.


Note You need to log in before you can comment on or make changes to this bug.