data_fabric 1.2.3 → 1.2.4
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +8 -2
- data/Manifest +1 -0
- data/Rakefile +2 -2
- data/data_fabric.gemspec +5 -5
- data/lib/data_fabric/ar22.rb +2 -2
- data/lib/data_fabric/dash.rb +20 -0
- data/lib/data_fabric/version.rb +1 -1
- data/test/connection_test.rb +3 -1
- metadata +5 -3
data/CHANGELOG
CHANGED
@@ -1,6 +1,12 @@
|
|
1
1
|
DataFabric changelog
|
2
2
|
|
3
|
-
v1.2.
|
3
|
+
v1.2.4 - 2009-03-09
|
4
|
+
|
5
|
+
- Add FiveRuns Dash recipe for data_fabric. See http://dash.fiveruns.com for details.
|
6
|
+
- Fixed incorrect remove_connection method signature.
|
7
|
+
- The official data_fabric repository is now http://github.com/mperham/data_fabric.
|
8
|
+
|
9
|
+
v1.2.3 - 2009-02-05
|
4
10
|
|
5
11
|
- Release connections at the end of each Rails action. If you see 5 second
|
6
12
|
pauses in your application, it's because the connection pool is timing out
|
@@ -32,4 +38,4 @@ v1.1.0 - 2008-11-22
|
|
32
38
|
|
33
39
|
Detailed commit history:
|
34
40
|
|
35
|
-
http://github.com/
|
41
|
+
http://github.com/mperham/data_fabric/commits/master
|
data/Manifest
CHANGED
data/Rakefile
CHANGED
@@ -9,7 +9,7 @@ Echoe.new 'data_fabric' do |p|
|
|
9
9
|
p.email = 'mperham@gmail.com'
|
10
10
|
p.project = 'fiveruns'
|
11
11
|
p.summary = 'Sharding and replication support for ActiveRecord 2.x'
|
12
|
-
p.url = "http://github.com/
|
12
|
+
p.url = "http://github.com/mperham/data_fabric"
|
13
13
|
p.development_dependencies = []
|
14
14
|
p.rubygems_version = nil
|
15
15
|
p.include_rakefile = true
|
@@ -90,8 +90,8 @@ def create_mysql(create, db_name)
|
|
90
90
|
end
|
91
91
|
|
92
92
|
# Test coverage
|
93
|
-
gem 'spicycode-rcov' rescue nil
|
94
93
|
begin
|
94
|
+
gem 'spicycode-rcov' rescue nil
|
95
95
|
require 'rcov/rcovtask'
|
96
96
|
|
97
97
|
desc "Generate coverage numbers for all locally installed versions of ActiveRecord"
|
data/data_fabric.gemspec
CHANGED
@@ -2,17 +2,17 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = %q{data_fabric}
|
5
|
-
s.version = "1.2.
|
5
|
+
s.version = "1.2.4"
|
6
6
|
|
7
7
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
8
8
|
s.authors = ["Mike Perham"]
|
9
|
-
s.date = %q{2009-
|
9
|
+
s.date = %q{2009-03-09}
|
10
10
|
s.description = %q{Sharding and replication support for ActiveRecord 2.x}
|
11
11
|
s.email = %q{mperham@gmail.com}
|
12
|
-
s.extra_rdoc_files = ["CHANGELOG", "lib/data_fabric/ar20.rb", "lib/data_fabric/ar22.rb", "lib/data_fabric/version.rb", "lib/data_fabric.rb", "README.rdoc"]
|
13
|
-
s.files = ["CHANGELOG", "example/app/controllers/accounts_controller.rb", "example/app/controllers/application.rb", "example/app/controllers/figments_controller.rb", "example/app/helpers/accounts_helper.rb", "example/app/helpers/application_helper.rb", "example/app/helpers/figments_helper.rb", "example/app/models/account.rb", "example/app/models/figment.rb", "example/app/views/accounts/index.html.erb", "example/app/views/layouts/application.html.erb", "example/config/boot.rb", "example/config/database.yml", "example/config/environment.rb", "example/config/environments/development.rb", "example/config/environments/production.rb", "example/config/environments/test.rb", "example/config/initializers/inflections.rb", "example/config/initializers/mime_types.rb", "example/config/initializers/new_rails_defaults.rb", "example/config/routes.rb", "example/db/migrate/20080702154628_create_accounts.rb", "example/db/migrate/20080702154820_create_figments.rb", "example/db/schema.rb", "example/public/404.html", "example/public/422.html", "example/public/500.html", "example/public/dispatch.cgi", "example/public/dispatch.fcgi", "example/public/dispatch.rb", "example/public/favicon.ico", "example/public/images/rails.png", "example/public/robots.txt", "example/Rakefile", "example/script/about", "example/script/console", "example/script/dbconsole", "example/script/destroy", "example/script/generate", "example/script/performance/benchmarker", "example/script/performance/profiler", "example/script/performance/request", "example/script/plugin", "example/script/process/inspector", "example/script/process/reaper", "example/script/process/spawner", "example/script/runner", "example/script/server", "example/test/fixtures/accounts.yml", "example/test/functional/accounts_controller_test.rb", "example/test/integration/account_figments_test.rb", "example/test/test_helper.rb", "example22/app/controllers/accounts_controller.rb", "example22/app/controllers/application.rb", "example22/app/controllers/figments_controller.rb", "example22/app/helpers/application_helper.rb", "example22/app/models/account.rb", "example22/app/models/figment.rb", "example22/app/views/accounts/index.html.erb", "example22/app/views/layouts/application.html.erb", "example22/config/boot.rb", "example22/config/database.yml", "example22/config/environment.rb", "example22/config/environments/development.rb", "example22/config/environments/production.rb", "example22/config/environments/test.rb", "example22/config/initializers/inflections.rb", "example22/config/initializers/mime_types.rb", "example22/config/initializers/new_rails_defaults.rb", "example22/config/locales/en.yml", "example22/config/routes.rb", "example22/db/migrate/20080702154628_create_accounts.rb", "example22/db/migrate/20080702154820_create_figments.rb", "example22/public/404.html", "example22/public/422.html", "example22/public/500.html", "example22/public/dispatch.cgi", "example22/public/dispatch.fcgi", "example22/public/dispatch.rb", "example22/public/favicon.ico", "example22/public/images/rails.png", "example22/public/index.html", "example22/public/robots.txt", "example22/Rakefile", "example22/script/about", "example22/script/console", "example22/script/dbconsole", "example22/script/destroy", "example22/script/generate", "example22/script/performance/benchmarker", "example22/script/performance/profiler", "example22/script/performance/request", "example22/script/plugin", "example22/script/process/inspector", "example22/script/process/reaper", "example22/script/process/spawner", "example22/script/runner", "example22/script/server", "example22/test/fixtures/accounts.yml", "example22/test/functional/accounts_controller_test.rb", "example22/test/integration/account_figments_test.rb", "example22/test/performance/browsing_test.rb", "example22/test/test_helper.rb", "init.rb", "lib/data_fabric/ar20.rb", "lib/data_fabric/ar22.rb", "lib/data_fabric/version.rb", "lib/data_fabric.rb", "Manifest", "Rakefile", "README.rdoc", "test/connection_test.rb", "test/database.yml", "test/database.yml.mysql", "test/database_test.rb", "test/shard_test.rb", "test/test_helper.rb", "test/thread_test.rb", "TESTING.rdoc", "data_fabric.gemspec"]
|
12
|
+
s.extra_rdoc_files = ["CHANGELOG", "lib/data_fabric/ar20.rb", "lib/data_fabric/ar22.rb", "lib/data_fabric/version.rb", "lib/data_fabric/dash.rb", "lib/data_fabric.rb", "README.rdoc"]
|
13
|
+
s.files = ["CHANGELOG", "example/app/controllers/accounts_controller.rb", "example/app/controllers/application.rb", "example/app/controllers/figments_controller.rb", "example/app/helpers/accounts_helper.rb", "example/app/helpers/application_helper.rb", "example/app/helpers/figments_helper.rb", "example/app/models/account.rb", "example/app/models/figment.rb", "example/app/views/accounts/index.html.erb", "example/app/views/layouts/application.html.erb", "example/config/boot.rb", "example/config/database.yml", "example/config/environment.rb", "example/config/environments/development.rb", "example/config/environments/production.rb", "example/config/environments/test.rb", "example/config/initializers/inflections.rb", "example/config/initializers/mime_types.rb", "example/config/initializers/new_rails_defaults.rb", "example/config/routes.rb", "example/db/migrate/20080702154628_create_accounts.rb", "example/db/migrate/20080702154820_create_figments.rb", "example/db/schema.rb", "example/public/404.html", "example/public/422.html", "example/public/500.html", "example/public/dispatch.cgi", "example/public/dispatch.fcgi", "example/public/dispatch.rb", "example/public/favicon.ico", "example/public/images/rails.png", "example/public/robots.txt", "example/Rakefile", "example/script/about", "example/script/console", "example/script/dbconsole", "example/script/destroy", "example/script/generate", "example/script/performance/benchmarker", "example/script/performance/profiler", "example/script/performance/request", "example/script/plugin", "example/script/process/inspector", "example/script/process/reaper", "example/script/process/spawner", "example/script/runner", "example/script/server", "example/test/fixtures/accounts.yml", "example/test/functional/accounts_controller_test.rb", "example/test/integration/account_figments_test.rb", "example/test/test_helper.rb", "example22/app/controllers/accounts_controller.rb", "example22/app/controllers/application.rb", "example22/app/controllers/figments_controller.rb", "example22/app/helpers/application_helper.rb", "example22/app/models/account.rb", "example22/app/models/figment.rb", "example22/app/views/accounts/index.html.erb", "example22/app/views/layouts/application.html.erb", "example22/config/boot.rb", "example22/config/database.yml", "example22/config/environment.rb", "example22/config/environments/development.rb", "example22/config/environments/production.rb", "example22/config/environments/test.rb", "example22/config/initializers/inflections.rb", "example22/config/initializers/mime_types.rb", "example22/config/initializers/new_rails_defaults.rb", "example22/config/locales/en.yml", "example22/config/routes.rb", "example22/db/migrate/20080702154628_create_accounts.rb", "example22/db/migrate/20080702154820_create_figments.rb", "example22/public/404.html", "example22/public/422.html", "example22/public/500.html", "example22/public/dispatch.cgi", "example22/public/dispatch.fcgi", "example22/public/dispatch.rb", "example22/public/favicon.ico", "example22/public/images/rails.png", "example22/public/index.html", "example22/public/robots.txt", "example22/Rakefile", "example22/script/about", "example22/script/console", "example22/script/dbconsole", "example22/script/destroy", "example22/script/generate", "example22/script/performance/benchmarker", "example22/script/performance/profiler", "example22/script/performance/request", "example22/script/plugin", "example22/script/process/inspector", "example22/script/process/reaper", "example22/script/process/spawner", "example22/script/runner", "example22/script/server", "example22/test/fixtures/accounts.yml", "example22/test/functional/accounts_controller_test.rb", "example22/test/integration/account_figments_test.rb", "example22/test/performance/browsing_test.rb", "example22/test/test_helper.rb", "init.rb", "lib/data_fabric/ar20.rb", "lib/data_fabric/ar22.rb", "lib/data_fabric/version.rb", "lib/data_fabric/dash.rb", "lib/data_fabric.rb", "Manifest", "Rakefile", "README.rdoc", "test/connection_test.rb", "test/database.yml", "test/database.yml.mysql", "test/database_test.rb", "test/shard_test.rb", "test/test_helper.rb", "test/thread_test.rb", "TESTING.rdoc", "data_fabric.gemspec"]
|
14
14
|
s.has_rdoc = true
|
15
|
-
s.homepage = %q{http://github.com/
|
15
|
+
s.homepage = %q{http://github.com/mperham/data_fabric}
|
16
16
|
s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Data_fabric", "--main", "README.rdoc"]
|
17
17
|
s.require_paths = ["lib"]
|
18
18
|
s.rubyforge_project = %q{fiveruns}
|
data/lib/data_fabric/ar22.rb
CHANGED
@@ -30,8 +30,8 @@ module DataFabric
|
|
30
30
|
@proxy.connected?
|
31
31
|
end
|
32
32
|
|
33
|
-
def remove_connection(klass)
|
34
|
-
DataFabric.log(Logger::
|
33
|
+
def remove_connection(klass=self)
|
34
|
+
DataFabric.log(Logger::WARN) { "remove_connection not implemented by data_fabric" }
|
35
35
|
end
|
36
36
|
|
37
37
|
def connection_pool
|
@@ -0,0 +1,20 @@
|
|
1
|
+
# A data_fabric recipe for use with the FiveRuns Dash metrics service at
|
2
|
+
# http://dash.fiveruns.com.
|
3
|
+
#
|
4
|
+
# Hook into your Rails application by adding the recipe in your
|
5
|
+
# config/initializers/dash.rb, like so:
|
6
|
+
#
|
7
|
+
# require 'data_fabric/dash'
|
8
|
+
# Fiveruns::Dash::Rails.start :production => 'your-token' do |config|
|
9
|
+
# config.add_recipe :data_fabric, :url => 'http://mikeperham.com'
|
10
|
+
# end
|
11
|
+
#
|
12
|
+
raise ArgumentError, "The Dash recipe for DataFabric is only supported on ActiveRecord 2.2 and greater" if ActiveRecord::VERSION::STRING < '2.2.0'
|
13
|
+
|
14
|
+
Fiveruns::Dash.register_recipe :data_fabric, :url => 'http://mikeperham.com' do |recipe|
|
15
|
+
recipe.absolute :open_connections, 'Open Connections' do
|
16
|
+
DataFabric::ConnectionProxy.shard_pools.values.map do |pool|
|
17
|
+
(pool.instance_variable_get(:@checked_out) || []).size
|
18
|
+
end.sum
|
19
|
+
end
|
20
|
+
end
|
data/lib/data_fabric/version.rb
CHANGED
data/test/connection_test.rb
CHANGED
@@ -43,7 +43,9 @@ end
|
|
43
43
|
class ConnectionTest < Test::Unit::TestCase
|
44
44
|
|
45
45
|
def test_should_install_into_arbase
|
46
|
-
|
46
|
+
# Ruby 1.8 vs 1.9 difference
|
47
|
+
meth = PrefixModel.methods.first.is_a?(Symbol) ? :data_fabric : 'data_fabric'
|
48
|
+
assert PrefixModel.methods.include?(meth)
|
47
49
|
end
|
48
50
|
|
49
51
|
def test_prefix_connection_name
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: data_fabric
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mike Perham
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-
|
12
|
+
date: 2009-03-09 00:00:00 -05:00
|
13
13
|
default_executable:
|
14
14
|
dependencies: []
|
15
15
|
|
@@ -24,6 +24,7 @@ extra_rdoc_files:
|
|
24
24
|
- lib/data_fabric/ar20.rb
|
25
25
|
- lib/data_fabric/ar22.rb
|
26
26
|
- lib/data_fabric/version.rb
|
27
|
+
- lib/data_fabric/dash.rb
|
27
28
|
- lib/data_fabric.rb
|
28
29
|
- README.rdoc
|
29
30
|
files:
|
@@ -134,6 +135,7 @@ files:
|
|
134
135
|
- lib/data_fabric/ar20.rb
|
135
136
|
- lib/data_fabric/ar22.rb
|
136
137
|
- lib/data_fabric/version.rb
|
138
|
+
- lib/data_fabric/dash.rb
|
137
139
|
- lib/data_fabric.rb
|
138
140
|
- Manifest
|
139
141
|
- Rakefile
|
@@ -148,7 +150,7 @@ files:
|
|
148
150
|
- TESTING.rdoc
|
149
151
|
- data_fabric.gemspec
|
150
152
|
has_rdoc: true
|
151
|
-
homepage: http://github.com/
|
153
|
+
homepage: http://github.com/mperham/data_fabric
|
152
154
|
post_install_message:
|
153
155
|
rdoc_options:
|
154
156
|
- --line-numbers
|