faker-ruby/faker · error · RetryLimitExceeded
Retry limit exceeded for #{name}
Error message
Retry limit exceeded for #{name} What it means
Error "Retry limit exceeded for #{name}" thrown in faker-ruby/faker.
Source
Thrown at lib/helpers/unique_generator.rb:22
class UniqueGenerator
def initialize(generator, max_retries)
@generator = generator
@max_retries = max_retries
end
def method_missing(name, *arguments)
self.class.marked_unique.add(self)
@max_retries.times do
result = @generator.public_send(name, *arguments)
next if previous_results[[name, arguments]].include?(result)
previous_results[[name, arguments]] << result
return result
end
raise RetryLimitExceeded, "Retry limit exceeded for #{name}"
end
# Have method_missing use ruby 2.x keywords if the method exists.
# This is necessary because the syntax for passing arguments (`...`)
# is invalid on versions before Ruby 2.7, so it can't be used.
ruby2_keywords(:method_missing) if respond_to?(:ruby2_keywords, true)
def respond_to_missing?(method_name, include_private = false)
method_name.to_s.start_with?('faker_') || super
end
class RetryLimitExceeded < StandardError; end
def previous_results
Thread.current[:faker_unique_generator_previous_results] ||= {}
Thread.current[:faker_unique_generator_previous_results][@generator] ||= Hash.new { |hash, key| hash[key] = Set.new }
end
def clearView on GitHub (pinned to cca4184947)
When it happens
Trigger: Thrown at lib/helpers/unique_generator.rb:22 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of faker-ruby/faker@cca4184947 (2026-08-21).
Data as JSON: /api/errors/f64fecab58a6e276.
Report an issue: GitHub.