Skip to content
This repository has been archived by the owner on Nov 23, 2024. It is now read-only.

Commit

Permalink
Merge pull request #68 from zendesk/mriddle-remove-unused-options
Browse files Browse the repository at this point in the history
Remove unused and often misleading `options`
  • Loading branch information
bquorning authored Apr 2, 2020
2 parents 5e40fb8 + a56b312 commit abf02d3
Show file tree
Hide file tree
Showing 4 changed files with 20 additions and 20 deletions.
1 change: 1 addition & 0 deletions Changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
### Removed
- Removed the `dry_run` option (https://github.com/zendesk/global_uid/pull/64)
- Removed `GlobalUid::ServerVariables` module (https://github.com/zendesk/global_uid/pull/66)
- Removed `options` parameter from `generate_uid` & `generate_many_uids` (https://github.com/zendesk/global_uid/pull/68)

## [3.7.1] - 2020-02-06
### Added
Expand Down
8 changes: 4 additions & 4 deletions lib/global_uid/active_record_extension.rb
Original file line number Diff line number Diff line change
Expand Up @@ -27,12 +27,12 @@ def global_uid_disabled
@global_uid_disabled
end

def generate_uid(options = {})
GlobalUid::Base.get_uid_for_class(self, options)
def generate_uid
GlobalUid::Base.get_uid_for_class(self)
end

def generate_many_uids(count, options = {})
GlobalUid::Base.get_many_uids_for_class(self, count, options)
def generate_many_uids(count)
GlobalUid::Base.get_many_uids_for_class(self, count)
end

def disable_global_uid
Expand Down
29 changes: 14 additions & 15 deletions lib/global_uid/base.rb
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ def self.create_uid_tables(id_table_name, options={})
end
end

def self.drop_uid_tables(id_table_name, options={})
def self.drop_uid_tables(id_table_name)
with_connections do |connection|
connection.execute("DROP TABLE IF EXISTS `#{id_table_name}`")
end
Expand All @@ -70,11 +70,12 @@ def self.new_connection(name, connection_timeout)
end
end

def self.init_server_info(options)
def self.init_server_info
id_servers = self.global_uid_servers
increment_by = self.global_uid_options[:increment_by]

raise "You haven't configured any id servers" if id_servers.nil? or id_servers.empty?
raise "More servers configured than increment_by: #{id_servers.size} > #{options[:increment_by]} -- this will create duplicate IDs." if id_servers.size > options[:increment_by]
raise "More servers configured than increment_by: #{id_servers.size} > #{increment_by} -- this will create duplicate IDs." if id_servers.size > increment_by

id_servers.map do |name, i|
info = {}
Expand All @@ -91,12 +92,11 @@ def self.disconnect!
self.servers = nil
end

def self.setup_connections!(options)
connection_timeout = options[:connection_timeout]
increment_by = options[:increment_by]
def self.setup_connections!
connection_timeout = self.global_uid_options[:connection_timeout]

if self.servers.nil?
self.servers = init_server_info(options)
self.servers = init_server_info
# sorting here sets up each process to have affinity to a particular server.
self.servers = self.servers.sort_by { |s| s[:rand] }
end
Expand All @@ -109,18 +109,17 @@ def self.setup_connections!(options)

connection = new_connection(info[:name], connection_timeout)
info[:cx] = connection
info[:retry_at] = Time.now + options[:connection_retry] if connection.nil?
info[:retry_at] = Time.now + self.global_uid_options[:connection_retry] if connection.nil?
end
end

self.servers
end

def self.with_connections(options = {})
options = self.global_uid_options.merge(options)
servers = setup_connections!(options)
def self.with_connections
servers = setup_connections!

if !options[:per_process_affinity]
if !self.global_uid_options[:per_process_affinity]
servers = servers.sort_by { rand } #yes, I know it's not true random.
end

Expand Down Expand Up @@ -155,11 +154,11 @@ def self.notify(exception, message)
end
end

def self.get_connections(options = {})
def self.get_connections
with_connections {}
end

def self.get_uid_for_class(klass, options = {})
def self.get_uid_for_class(klass)
with_connections do |connection|
Timeout.timeout(self.global_uid_options[:query_timeout], TimeoutException) do
id = connection.insert("REPLACE INTO #{klass.global_uid_table} (stub) VALUES ('a')")
Expand All @@ -169,7 +168,7 @@ def self.get_uid_for_class(klass, options = {})
raise NoServersAvailableException, "All global UID servers are gone!"
end

def self.get_many_uids_for_class(klass, count, options = {})
def self.get_many_uids_for_class(klass, count)
return [] unless count > 0
with_connections do |connection|
Timeout.timeout(self.global_uid_options[:query_timeout], TimeoutException) do
Expand Down
2 changes: 1 addition & 1 deletion lib/global_uid/migration_extension.rb
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ def create_table(name, options = {}, &blk)
def drop_table(name, options = {})
if !GlobalUid::Base.global_uid_options[:disabled] && options[:use_global_uid] == true
id_table_name = options[:global_uid_table] || GlobalUid::Base.id_table_from_name(name)
GlobalUid::Base.drop_uid_tables(id_table_name,options)
GlobalUid::Base.drop_uid_tables(id_table_name)
end
super(name, options)
end
Expand Down

0 comments on commit abf02d3

Please sign in to comment.