bigrecord 0.0.9 → 0.0.10
Sign up to get free protection for your applications and to get access to all the features.
- data/README.rdoc +2 -3
- data/VERSION +1 -1
- data/lib/big_record/abstract_base.rb +14 -21
- data/lib/big_record/base.rb +30 -38
- data/lib/big_record/connection_adapters/abstract_adapter.rb +17 -1
- data/lib/big_record/connection_adapters/column.rb +0 -1
- data/lib/big_record/dynamic_schema.rb +0 -14
- data/lib/big_record/timestamp.rb +2 -28
- data/lib/bigrecord.rb +1 -1
- data/spec/unit/find_spec.rb +0 -10
- data/spec/unit/scanner_spec.rb +5 -9
- metadata +2 -4
- data/spec/debug.log +0 -232
- data/spec/unit/callback_spec.rb +0 -1
data/README.rdoc
CHANGED
@@ -3,10 +3,10 @@
|
|
3
3
|
A Ruby Object/Data Mapper for distributed column-oriented data stores (inspired by BigTable) such as HBase. Intended to work as a drop-in for Rails applications.
|
4
4
|
|
5
5
|
== Features
|
6
|
-
*
|
6
|
+
* Dynamic schemas (due to the schema-less design of BigTable).
|
7
7
|
* Support for column-oriented data stores.
|
8
8
|
* Similar usage to Active Record.
|
9
|
-
*
|
9
|
+
* Embedded records that store within a single table row.
|
10
10
|
* Automatic versioning.
|
11
11
|
* Scalability (depending on the data store used).
|
12
12
|
|
@@ -48,6 +48,5 @@ Big Record is released under the MIT license.
|
|
48
48
|
== Links
|
49
49
|
|
50
50
|
* Contact Us
|
51
|
-
* Google Group - http://groups.google.com/group/bigrecord
|
52
51
|
* Website - http://www.bigrecord.org
|
53
52
|
* IRC Channel - <tt>#bigrecord</tt> on irc.freenode.net
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.10
|
@@ -367,14 +367,14 @@ module BigRecord
|
|
367
367
|
write_attribute(self.class.primary_key, value)
|
368
368
|
end
|
369
369
|
|
370
|
-
# Returns true if this object hasn't been saved yet -- that is, a record for the object doesn't
|
370
|
+
# Returns true if this object hasn't been saved yet -- that is, a record for the object doesn't
|
371
|
+
# yet exist in the data store.
|
371
372
|
def new_record?
|
372
373
|
false
|
373
374
|
end
|
374
375
|
|
375
|
-
#
|
376
|
-
# *
|
377
|
-
# * If a record already exist: Updates the record with values matching those of the object attributes.
|
376
|
+
# * No record exists: Creates a new record with values matching those of the object attributes.
|
377
|
+
# * A record does exist: Updates the record with values matching those of the object attributes.
|
378
378
|
def save
|
379
379
|
raise NotImplemented
|
380
380
|
end
|
@@ -435,7 +435,6 @@ module BigRecord
|
|
435
435
|
end
|
436
436
|
|
437
437
|
protected
|
438
|
-
|
439
438
|
def clone_in_persistence_format
|
440
439
|
validate_attributes_schema
|
441
440
|
|
@@ -683,7 +682,6 @@ module BigRecord
|
|
683
682
|
end
|
684
683
|
|
685
684
|
protected
|
686
|
-
|
687
685
|
# Returns the value of the attribute identified by <tt>attr_name</tt> after it has been typecast (for example,
|
688
686
|
# "2004-12-12" in a data column is cast to a date object, like Date.new(2004, 12, 12)).
|
689
687
|
def read_attribute(attr_name)
|
@@ -703,8 +701,7 @@ module BigRecord
|
|
703
701
|
@attributes[attr_name.to_s]
|
704
702
|
end
|
705
703
|
|
706
|
-
|
707
|
-
|
704
|
+
private
|
708
705
|
# Called on first read access to any given column and generates reader
|
709
706
|
# methods for all columns in the columns_hash if
|
710
707
|
# BigRecord::Base.generate_read_methods is set to true.
|
@@ -781,7 +778,6 @@ module BigRecord
|
|
781
778
|
end
|
782
779
|
|
783
780
|
public
|
784
|
-
|
785
781
|
class << self
|
786
782
|
|
787
783
|
# Evaluate the name of the column of the primary key only once
|
@@ -888,8 +884,7 @@ module BigRecord
|
|
888
884
|
# adds the new column into the model's column hash.
|
889
885
|
#
|
890
886
|
# @param type [Symbol, String] Column type as defined in the source of {ConnectionAdapters::Column#klass}
|
891
|
-
# @
|
892
|
-
# @option options [TrueClass,FalseClass] :collection Whether this column is a collection.
|
887
|
+
# @option options [true,false] :collection Whether this column is a collection.
|
893
888
|
# @option options [String] :alias Define an alias for the column that cannot be inferred. By default, 'attribute:name' will be aliased to 'name'.
|
894
889
|
# @option options [String] :default Default value to set for this column.
|
895
890
|
#
|
@@ -923,7 +918,7 @@ module BigRecord
|
|
923
918
|
end
|
924
919
|
|
925
920
|
# Contains the names of the generated reader methods.
|
926
|
-
def read_methods
|
921
|
+
def read_methods #:nodoc:
|
927
922
|
@read_methods ||= Set.new
|
928
923
|
end
|
929
924
|
|
@@ -1050,15 +1045,7 @@ module BigRecord
|
|
1050
1045
|
read_inheritable_attribute(:attr_create_accessible)
|
1051
1046
|
end
|
1052
1047
|
|
1053
|
-
# Guesses the table name, but does not decorate it with prefix and suffix information.
|
1054
|
-
def undecorated_table_name(class_name = base_class.name)
|
1055
|
-
table_name = Inflector.underscore(Inflector.demodulize(class_name))
|
1056
|
-
table_name = Inflector.pluralize(table_name) if pluralize_table_names
|
1057
|
-
table_name
|
1058
|
-
end
|
1059
|
-
|
1060
1048
|
protected
|
1061
|
-
|
1062
1049
|
def invalidate_views
|
1063
1050
|
@views = nil
|
1064
1051
|
@view_names = nil
|
@@ -1094,10 +1081,16 @@ module BigRecord
|
|
1094
1081
|
type_name.constantize
|
1095
1082
|
end
|
1096
1083
|
|
1084
|
+
public
|
1085
|
+
# Guesses the table name, but does not decorate it with prefix and suffix information.
|
1086
|
+
def undecorated_table_name(class_name = base_class.name)
|
1087
|
+
table_name = Inflector.underscore(Inflector.demodulize(class_name))
|
1088
|
+
table_name = Inflector.pluralize(table_name) if pluralize_table_names
|
1089
|
+
table_name
|
1090
|
+
end
|
1097
1091
|
end
|
1098
1092
|
|
1099
1093
|
protected
|
1100
|
-
|
1101
1094
|
# Handle *? for method_missing.
|
1102
1095
|
def attribute?(attribute_name)
|
1103
1096
|
query_attribute(attribute_name)
|
data/lib/big_record/base.rb
CHANGED
@@ -12,10 +12,8 @@ module BigRecord
|
|
12
12
|
super
|
13
13
|
end
|
14
14
|
|
15
|
-
public
|
16
|
-
|
17
15
|
# New objects can be instantiated as either empty (pass no construction parameter) or pre-set with
|
18
|
-
# attributes but not yet saved (pass a hash with key names matching the associated column names).
|
16
|
+
# attributes but not yet saved (pass a hash with key names matching the associated table column names).
|
19
17
|
# In both instances, valid attribute keys are determined by the column names of the associated table --
|
20
18
|
# hence you can't have attributes that aren't part of the table columns.
|
21
19
|
def initialize(attrs = nil)
|
@@ -26,6 +24,7 @@ module BigRecord
|
|
26
24
|
|
27
25
|
# Returns the value of the attribute identified by <tt>attr_name</tt> after it has been typecast (for example,
|
28
26
|
# "2004-12-12" in a data column is cast to a date object, like Date.new(2004, 12, 12)).
|
27
|
+
# (Alias for the protected read_attribute method).
|
29
28
|
def [](attr_name)
|
30
29
|
if attr_name.ends_with?(":")
|
31
30
|
read_family_attributes(attr_name)
|
@@ -81,7 +80,7 @@ module BigRecord
|
|
81
80
|
end
|
82
81
|
end
|
83
82
|
|
84
|
-
# Read an attribute that defines a column family
|
83
|
+
# Read an attribute that defines a column family.
|
85
84
|
def read_family_attributes(attr_name)
|
86
85
|
attr_name = attr_name.to_s
|
87
86
|
column = column_for_attribute(attr_name)
|
@@ -131,14 +130,24 @@ module BigRecord
|
|
131
130
|
end
|
132
131
|
end
|
133
132
|
|
133
|
+
def set_loaded(name)
|
134
|
+
@loaded_columns ||= []
|
135
|
+
@loaded_columns << name
|
136
|
+
end
|
137
|
+
|
138
|
+
def is_loaded?(name)
|
139
|
+
@loaded_columns ||= []
|
140
|
+
@loaded_columns.include?(name)
|
141
|
+
end
|
142
|
+
|
143
|
+
public
|
134
144
|
# Returns true if this object hasn't been saved yet -- that is, a record for the object doesn't exist yet.
|
135
145
|
def new_record?
|
136
146
|
@new_record
|
137
147
|
end
|
138
148
|
|
139
|
-
#
|
140
|
-
# *
|
141
|
-
# * If a record already exist: Updates the record with values matching those of the object attributes.
|
149
|
+
# * No record exists: Creates a new record with values matching those of the object attributes.
|
150
|
+
# * A record does exist: Updates the record with values matching those of the object attributes.
|
142
151
|
def save
|
143
152
|
create_or_update
|
144
153
|
end
|
@@ -149,7 +158,8 @@ module BigRecord
|
|
149
158
|
create_or_update || raise(RecordNotSaved)
|
150
159
|
end
|
151
160
|
|
152
|
-
# Deletes the record in the database
|
161
|
+
# Deletes the record in the database and freezes this instance to reflect that no changes should
|
162
|
+
# be made (since they can't be persisted).
|
153
163
|
def destroy
|
154
164
|
unless new_record?
|
155
165
|
connection.delete(self.class.table_name, self.id)
|
@@ -187,16 +197,6 @@ module BigRecord
|
|
187
197
|
|
188
198
|
protected
|
189
199
|
|
190
|
-
def set_loaded(name)
|
191
|
-
@loaded_columns ||= []
|
192
|
-
@loaded_columns << name
|
193
|
-
end
|
194
|
-
|
195
|
-
def is_loaded?(name)
|
196
|
-
@loaded_columns ||= []
|
197
|
-
@loaded_columns.include?(name)
|
198
|
-
end
|
199
|
-
|
200
200
|
# Invoke {#create} if {#new_record} returns true, otherwise it's an {#update}
|
201
201
|
def create_or_update
|
202
202
|
raise ReadOnlyRecord if readonly?
|
@@ -218,8 +218,8 @@ module BigRecord
|
|
218
218
|
update_bigrecord
|
219
219
|
end
|
220
220
|
|
221
|
-
# Update this record in
|
222
|
-
# therefore weird
|
221
|
+
# Update this record in hbase. Cannot be directly in the method 'update' because it would trigger callbacks and
|
222
|
+
# therefore weird behaviors.
|
223
223
|
def update_bigrecord
|
224
224
|
timestamp = self.respond_to?(:updated_at) ? self.updated_at.to_bigrecord_timestamp : Time.now.to_bigrecord_timestamp
|
225
225
|
|
@@ -229,7 +229,6 @@ module BigRecord
|
|
229
229
|
end
|
230
230
|
|
231
231
|
public
|
232
|
-
|
233
232
|
class << self
|
234
233
|
|
235
234
|
# Return the name of the primary key. Defaults to "id".
|
@@ -300,16 +299,6 @@ module BigRecord
|
|
300
299
|
end
|
301
300
|
end
|
302
301
|
|
303
|
-
# Returns all records for the model by invoking find(:all)
|
304
|
-
def all
|
305
|
-
find(:all)
|
306
|
-
end
|
307
|
-
|
308
|
-
# Returns the first record for the model by invoke find(:first)
|
309
|
-
def first
|
310
|
-
find(:first)
|
311
|
-
end
|
312
|
-
|
313
302
|
# Returns true if the given +id+ represents the primary key of a record in the database, false otherwise.
|
314
303
|
def exists?(id)
|
315
304
|
!find(id).nil?
|
@@ -398,16 +387,10 @@ module BigRecord
|
|
398
387
|
connection.truncate_table(table_name)
|
399
388
|
end
|
400
389
|
|
401
|
-
# Returns the inflected table name as it's called in your database.
|
402
390
|
def table_name
|
403
391
|
(superclass == BigRecord::Base) ? @table_name : superclass.table_name
|
404
392
|
end
|
405
393
|
|
406
|
-
# If you want to avoid the table name inflection, you can define the name
|
407
|
-
# explicitly with this method.
|
408
|
-
#
|
409
|
-
# @example
|
410
|
-
# set_table_name :table_xyz
|
411
394
|
def set_table_name(name)
|
412
395
|
@table_name = name.to_s
|
413
396
|
end
|
@@ -536,7 +519,6 @@ module BigRecord
|
|
536
519
|
end
|
537
520
|
|
538
521
|
protected
|
539
|
-
|
540
522
|
def invalidate_views
|
541
523
|
@views = nil
|
542
524
|
@view_names = nil
|
@@ -632,6 +614,16 @@ module BigRecord
|
|
632
614
|
end
|
633
615
|
end
|
634
616
|
|
617
|
+
def find_all_by_id(ids, options={})
|
618
|
+
ids.inject([]) do |result, id|
|
619
|
+
begin
|
620
|
+
result << find_one(id, options)
|
621
|
+
rescue BigRecord::RecordNotFound => e
|
622
|
+
end
|
623
|
+
result
|
624
|
+
end
|
625
|
+
end
|
626
|
+
|
635
627
|
# Add the missing cells to the raw record and set them to nil. We know that it's
|
636
628
|
# nil because else we would have received those cells. That way, when the value of
|
637
629
|
# one of these cells will be requested by the client we won't try to lazy load it.
|
@@ -7,7 +7,7 @@ module BigRecord
|
|
7
7
|
module ConnectionAdapters # :nodoc:
|
8
8
|
# All the concrete database adapters follow the interface laid down in this class.
|
9
9
|
# You can use this interface directly by borrowing the database connection from the Base with
|
10
|
-
#
|
10
|
+
# Base.connection.
|
11
11
|
#
|
12
12
|
# Most of the methods in the adapter are useful during migrations. Most
|
13
13
|
# notably, SchemaStatements#create_table, SchemaStatements#drop_table,
|
@@ -172,3 +172,19 @@ module BigRecord
|
|
172
172
|
end # class AbstractAdapter
|
173
173
|
end # module ConnectionAdapters
|
174
174
|
end # module BigRecord
|
175
|
+
|
176
|
+
|
177
|
+
# Open the time class to add logic for the hbase timestamp
|
178
|
+
class Time
|
179
|
+
# Return this time is the hbase timestamp format, i.e. a 'long'. The 4 high bytes contain
|
180
|
+
# the number of seconds since epoch and the 4 low bytes contain the microseconds. That
|
181
|
+
# format is an arbitrary one and could have been something else.
|
182
|
+
def to_bigrecord_timestamp
|
183
|
+
(self.to_i << 32) + self.usec
|
184
|
+
end
|
185
|
+
|
186
|
+
def self.from_bigrecord_timestamp(timestamp)
|
187
|
+
Time.at(timestamp >> 32, timestamp & 0xFFFFFFFF)
|
188
|
+
end
|
189
|
+
|
190
|
+
end
|
@@ -1,18 +1,4 @@
|
|
1
1
|
module BigRecord
|
2
|
-
|
3
|
-
# = Dynamic Schema
|
4
|
-
#
|
5
|
-
# The dynamic schema functionality of Bigrecord refers to the ability to
|
6
|
-
# modify the attributes of a model within the class itself, rather than being
|
7
|
-
# bounded by the database. This is an inherit property of using the BigTable
|
8
|
-
# database model, and Bigrecord leverages its use.
|
9
|
-
#
|
10
|
-
# New attributes defined will simply return nil for records that existed
|
11
|
-
# before their addition into the model, while attributes that are removed
|
12
|
-
# from the model will just be ignored when accessing existing records.
|
13
|
-
#
|
14
|
-
# Refer to {BigRecord::ConnectionAdapters::Column} for more information.
|
15
|
-
#
|
16
2
|
module DynamicSchema
|
17
3
|
|
18
4
|
def self.included(base) #:nodoc:
|
data/lib/big_record/timestamp.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
module BigRecord
|
2
|
-
#
|
2
|
+
# Big Record automatically timestamps create and update if the table has fields
|
3
3
|
# created_at/created_on or updated_at/updated_on.
|
4
4
|
#
|
5
5
|
# Timestamping can be turned off by setting
|
@@ -15,7 +15,7 @@ module BigRecord
|
|
15
15
|
# end
|
16
16
|
#
|
17
17
|
# Timestamps are in the local timezone by default but can use UTC by setting
|
18
|
-
# <tt>
|
18
|
+
# <tt>ActiveRecord::Base.default_timezone = :utc</tt>
|
19
19
|
module Timestamp
|
20
20
|
def self.included(base) #:nodoc:
|
21
21
|
super
|
@@ -49,29 +49,3 @@ module BigRecord
|
|
49
49
|
end
|
50
50
|
end
|
51
51
|
end
|
52
|
-
|
53
|
-
# Open the Time class to add methods which convert the time into the Bigrecord
|
54
|
-
# timestamp format.
|
55
|
-
class Time
|
56
|
-
|
57
|
-
# Return the time in the Bigrecord timestamp format, i.e. a 'long' where the
|
58
|
-
# 4 high bytes contain the number of seconds since epoch and the 4 low bytes
|
59
|
-
# contain the microseconds.
|
60
|
-
#
|
61
|
-
# @example
|
62
|
-
# > Time.now.to_bigrecord_timestamp
|
63
|
-
# => 5410405886576175030
|
64
|
-
def to_bigrecord_timestamp
|
65
|
-
(self.to_i << 32) + self.usec
|
66
|
-
end
|
67
|
-
|
68
|
-
# Converts a timestamp in Bigrecord format into a regular Time object.
|
69
|
-
#
|
70
|
-
# @example
|
71
|
-
# > Time.from_bigrecord_timestamp(5410405886576175030)
|
72
|
-
# => Tue Dec 01 17:58:05 -0500 2009
|
73
|
-
def self.from_bigrecord_timestamp(timestamp)
|
74
|
-
Time.at(timestamp >> 32, timestamp & 0xFFFFFFFF)
|
75
|
-
end
|
76
|
-
|
77
|
-
end
|
data/lib/bigrecord.rb
CHANGED
@@ -1 +1 @@
|
|
1
|
-
require
|
1
|
+
require 'big_record'
|
data/spec/unit/find_spec.rb
CHANGED
@@ -29,16 +29,6 @@ describe BigRecord::Base do
|
|
29
29
|
Zoo.find(id).should == [zoo]
|
30
30
|
end
|
31
31
|
|
32
|
-
it "should be invoked when #all and #first are called" do
|
33
|
-
zoo = Zoo.new
|
34
|
-
|
35
|
-
Zoo.should_receive(:find).with(:all).and_return([zoo])
|
36
|
-
Zoo.all.should == [zoo]
|
37
|
-
|
38
|
-
Zoo.should_receive(:find).with(:first).and_return(zoo)
|
39
|
-
Zoo.first.should == zoo
|
40
|
-
end
|
41
|
-
|
42
32
|
end
|
43
33
|
|
44
34
|
end
|
data/spec/unit/scanner_spec.rb
CHANGED
@@ -5,10 +5,9 @@ describe BigRecord::Base do
|
|
5
5
|
before(:all) do
|
6
6
|
Book.delete_all
|
7
7
|
@titles = ["I Am Legend", "The Beach", "Neuromancer"]
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
@ids = [id1, id2, id3]
|
8
|
+
Book.create(:title => @titles[0], :author => "Richard Matheson")
|
9
|
+
Book.create(:title => @titles[1], :author => "Alex Garland")
|
10
|
+
Book.create(:title => @titles[2], :author => "William Gibson")
|
12
11
|
end
|
13
12
|
|
14
13
|
after(:all) do
|
@@ -20,13 +19,10 @@ describe BigRecord::Base do
|
|
20
19
|
it "should retrieve all records with find" do
|
21
20
|
books = Book.find(:all)
|
22
21
|
books.size.should == 3
|
22
|
+
book_titles = books.map(&:title)
|
23
23
|
|
24
24
|
@titles.each do |title|
|
25
|
-
|
26
|
-
end
|
27
|
-
|
28
|
-
@ids.each do |id|
|
29
|
-
books.map(&:id).should include(id)
|
25
|
+
book_titles.should include(title)
|
30
26
|
end
|
31
27
|
end
|
32
28
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bigrecord
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- openplaces.org
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-12-
|
12
|
+
date: 2009-12-02 00:00:00 -05:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -131,7 +131,6 @@ files:
|
|
131
131
|
- spec/connections/bigrecord.yml
|
132
132
|
- spec/connections/cassandra/connection.rb
|
133
133
|
- spec/connections/hbase/connection.rb
|
134
|
-
- spec/debug.log
|
135
134
|
- spec/integration/br_associations_spec.rb
|
136
135
|
- spec/lib/animal.rb
|
137
136
|
- spec/lib/book.rb
|
@@ -157,7 +156,6 @@ files:
|
|
157
156
|
- spec/unit/ar_associations_spec.rb
|
158
157
|
- spec/unit/attributes_spec.rb
|
159
158
|
- spec/unit/br_associations_spec.rb
|
160
|
-
- spec/unit/callback_spec.rb
|
161
159
|
- spec/unit/columns_spec.rb
|
162
160
|
- spec/unit/embedded_spec.rb
|
163
161
|
- spec/unit/find_spec.rb
|
data/spec/debug.log
DELETED
@@ -1,232 +0,0 @@
|
|
1
|
-
# Logfile created on Tue Dec 01 18:42:59 -0500 2009 by /
|
2
|
-
Connecting to Hbase data store ({"hbase"=>{"drb_host"=>"localhost", "zookeeper_quorum"=>"localhost", "drb_port"=>50001, "zookeeper_client_port"=>2181, "adapter"=>"hbase"}, "hbase_rest"=>{"adapter"=>"hbase_rest", "api_address"=>"http://localhost:8080"}, "cassandra"=>{"address"=>"localhost", "drb_host"=>"localhost", "drb_port"=>50002, "port"=>9160, "adapter"=>"cassandra"}})
|
3
|
-
[4;36;1mHBASE (0.006705)[0m [0;1mSCAN (attribute:) FROM animals WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
4
|
-
[4;35;1mHBASE (0.002881)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
5
|
-
[4;36;1mHBASE (0.003021)[0m [0;1mUPDATE zoos SET {"attr:name"=>"\001Some Zoo", "attr:address"=>"\001123 Address St.", "attr:readonly"=>"\000", "attr:employees"=>"\000", "attr:weblink"=>"\000", "attr:description"=>"\001This is Some Zoo located at 123 Address St.", "attr:animal_ids"=>"--- []\n\n"} WHERE ROW=c72f4ba7-9c71-4655-8665-32379e17ef49;[0m
|
6
|
-
[4;35;1mHBASE (0.001753)[0m [0mUPDATE animals SET {"attribute:zoo_id"=>"\001c72f4ba7-9c71-4655-8665-32379e17ef49", "attribute:book_ids"=>"--- []\n\n", "attribute:type"=>"--- 0\n", "attribute:description"=>"\000", "attribute:name"=>"\001Stampy"} WHERE ROW=13bca708-4493-4efa-a08a-50e4eb8894b7;[0m
|
7
|
-
[4;36;1mHBASE (0.001128)[0m [0;1mSELECT (attribute:zoo_id, attribute:book_ids, attribute:type, attribute:description, attribute:name) FROM animals WHERE ROW=13bca708-4493-4efa-a08a-50e4eb8894b7;[0m
|
8
|
-
[4;35;1mHBASE (0.002785)[0m [0mSELECT (attribute:zoo_id, attribute:book_ids, attribute:type, attribute:description, attribute:name) FROM animals WHERE ROW=13bca708-4493-4efa-a08a-50e4eb8894b7;[0m
|
9
|
-
[4;36;1mHBASE (0.001165)[0m [0;1mSELECT (attr:name, attr:address, attr:readonly, attr:employees, attr:weblink, attr:description, attr:animal_ids) FROM zoos WHERE ROW=c72f4ba7-9c71-4655-8665-32379e17ef49;[0m
|
10
|
-
[4;35;1mHBASE (0.001894)[0m [0mSCAN (attribute:) FROM animals WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
11
|
-
[4;36;1mHBASE (0.000945)[0m [0;1mDELETE FROM animals WHERE ROW=13bca708-4493-4efa-a08a-50e4eb8894b7;[0m
|
12
|
-
[4;35;1mHBASE (0.001822)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
13
|
-
[4;36;1mHBASE (0.000873)[0m [0;1mDELETE FROM zoos WHERE ROW=c72f4ba7-9c71-4655-8665-32379e17ef49;[0m
|
14
|
-
[4;35;1mHBASE (0.001578)[0m [0mSCAN (attribute:) FROM animals WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
15
|
-
[4;36;1mHBASE (0.001256)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
16
|
-
[4;35;1mHBASE (0.003739)[0m [0mUPDATE zoos SET {"attr:name"=>"\001Some Zoo", "attr:address"=>"\001123 Address St.", "attr:readonly"=>"\000", "attr:employees"=>"\000", "attr:weblink"=>"\000", "attr:description"=>"\001This is Some Zoo located at 123 Address St.", "attr:animal_ids"=>"--- []\n\n"} WHERE ROW=5687bb96-5eff-4a65-b6e6-29c007bbc87a;[0m
|
17
|
-
[4;36;1mHBASE (0.001763)[0m [0;1mUPDATE animals SET {"attribute:zoo_id"=>"\0015687bb96-5eff-4a65-b6e6-29c007bbc87a", "attribute:book_ids"=>"--- []\n\n", "attribute:type"=>"--- 0\n", "attribute:description"=>"\000", "attribute:name"=>"\001Stampy"} WHERE ROW=c8dd7675-b9ab-4741-9b9a-4464abc45213;[0m
|
18
|
-
[4;35;1mHBASE (0.001654)[0m [0mUPDATE animals SET {"attribute:zoo_id"=>"\0015687bb96-5eff-4a65-b6e6-29c007bbc87a", "attribute:book_ids"=>"--- []\n\n", "attribute:type"=>"--- 0\n", "attribute:description"=>"\000", "attribute:name"=>"\001Dumbo"} WHERE ROW=3a910158-941a-4c9e-9817-b31c5586978d;[0m
|
19
|
-
[4;36;1mHBASE (0.002022)[0m [0;1mUPDATE zoos SET {"attr:name"=>"\001Some Zoo", "attr:address"=>"\001123 Address St.", "attr:readonly"=>"\000", "attr:employees"=>"\000", "attr:weblink"=>"\000", "attr:description"=>"\001This is Some Zoo located at 123 Address St.", "attr:animal_ids"=>"--- \n- c8dd7675-b9ab-4741-9b9a-4464abc45213\n- 3a910158-941a-4c9e-9817-b31c5586978d\n"} WHERE ROW=5687bb96-5eff-4a65-b6e6-29c007bbc87a;[0m
|
20
|
-
[4;35;1mHBASE (0.001131)[0m [0mSELECT (attr:name, attr:address, attr:readonly, attr:employees, attr:weblink, attr:description, attr:animal_ids) FROM zoos WHERE ROW=5687bb96-5eff-4a65-b6e6-29c007bbc87a;[0m
|
21
|
-
[4;36;1mHBASE (0.001042)[0m [0;1mSELECT (attr:name, attr:address, attr:readonly, attr:employees, attr:weblink, attr:description, attr:animal_ids) FROM zoos WHERE ROW=5687bb96-5eff-4a65-b6e6-29c007bbc87a;[0m
|
22
|
-
[4;35;1mHBASE (0.001074)[0m [0mSELECT (attribute:zoo_id, attribute:book_ids, attribute:type, attribute:description, attribute:name) FROM animals WHERE ROW=c8dd7675-b9ab-4741-9b9a-4464abc45213;[0m
|
23
|
-
[4;36;1mHBASE (0.000969)[0m [0;1mSELECT (attribute:zoo_id, attribute:book_ids, attribute:type, attribute:description, attribute:name) FROM animals WHERE ROW=3a910158-941a-4c9e-9817-b31c5586978d;[0m
|
24
|
-
[4;35;1mHBASE (0.002399)[0m [0mSCAN (attribute:) FROM animals WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
25
|
-
[4;36;1mHBASE (0.000879)[0m [0;1mDELETE FROM animals WHERE ROW=3a910158-941a-4c9e-9817-b31c5586978d;[0m
|
26
|
-
[4;35;1mHBASE (0.000694)[0m [0mDELETE FROM animals WHERE ROW=c8dd7675-b9ab-4741-9b9a-4464abc45213;[0m
|
27
|
-
[4;36;1mHBASE (0.001729)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
28
|
-
[4;35;1mHBASE (0.000834)[0m [0mDELETE FROM zoos WHERE ROW=5687bb96-5eff-4a65-b6e6-29c007bbc87a;[0m
|
29
|
-
Migrating to AddAnimalsTable (20090706182535)
|
30
|
-
Migrating to AddBooksTable (20090706190623)
|
31
|
-
Migrating to AddCompaniesTable (20090706193019)
|
32
|
-
Migrating to AddEmployeesTable (20090706194512)
|
33
|
-
Migrating to AddZoosTable (20090706195741)
|
34
|
-
Migrating to AddAnimalsTable (20090706182535)
|
35
|
-
Migrating to AddAnimalsTable (20090706182535)
|
36
|
-
[4;36;1mHBASE (0.005164)[0m [0;1mSCAN (attribute:) FROM animals WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
37
|
-
[4;35;1mHBASE (0.002597)[0m [0mSCAN (attribute:) FROM employees WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
38
|
-
[4;36;1mHBASE (0.002756)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
39
|
-
[4;35;1mHBASE (0.002202)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
40
|
-
[4;36;1mHBASE (0.004104)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
41
|
-
[4;35;1mHBASE (0.002625)[0m [0mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
42
|
-
[4;36;1mHBASE (0.001323)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
43
|
-
[4;35;1mHBASE (0.001937)[0m [0mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
44
|
-
[4;36;1mHBASE (0.001096)[0m [0;1mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
45
|
-
[4;35;1mHBASE (0.001217)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
46
|
-
[4;36;1mHBASE (0.001280)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
47
|
-
[4;35;1mHBASE (0.001266)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
48
|
-
[4;36;1mHBASE (0.001914)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
49
|
-
[4;35;1mHBASE (0.001134)[0m [0mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
50
|
-
[4;36;1mHBASE (0.003971)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
51
|
-
[4;35;1mHBASE (0.002225)[0m [0mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
52
|
-
[4;36;1mHBASE (0.002752)[0m [0;1mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
53
|
-
[4;35;1mHBASE (0.001547)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
54
|
-
[4;36;1mHBASE (0.001295)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
55
|
-
[4;35;1mHBASE (0.001257)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
56
|
-
[4;36;1mHBASE (0.001751)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
57
|
-
[4;35;1mHBASE (0.001042)[0m [0mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
58
|
-
[4;36;1mHBASE (0.001206)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
59
|
-
[4;35;1mHBASE (0.001959)[0m [0mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
60
|
-
[4;36;1mHBASE (0.001055)[0m [0;1mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
61
|
-
[4;35;1mHBASE (0.001181)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
62
|
-
[4;36;1mHBASE (0.001327)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
63
|
-
[4;35;1mHBASE (0.001286)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
64
|
-
[4;36;1mHBASE (0.001774)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
65
|
-
[4;35;1mHBASE (0.001038)[0m [0mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
66
|
-
[4;36;1mHBASE (0.001177)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
67
|
-
WARNING: Can't mass-assign these protected attributes: employees
|
68
|
-
WARNING: Can't mass-assign these protected attributes: employees
|
69
|
-
[4;35;1mHBASE (0.001992)[0m [0mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
70
|
-
[4;36;1mHBASE (0.001123)[0m [0;1mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
71
|
-
[4;35;1mHBASE (0.002007)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
72
|
-
[4;36;1mHBASE (0.001432)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
73
|
-
[4;35;1mHBASE (0.001249)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
74
|
-
[4;36;1mHBASE (0.001730)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
75
|
-
[4;35;1mHBASE (0.001007)[0m [0mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
76
|
-
[4;36;1mHBASE (0.001166)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
77
|
-
WARNING: Can't mass-assign these protected attributes: readonly, employees
|
78
|
-
WARNING: Can't mass-assign these protected attributes: employees
|
79
|
-
[4;35;1mHBASE (0.002038)[0m [0mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
80
|
-
[4;36;1mHBASE (0.001144)[0m [0;1mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
81
|
-
[4;35;1mHBASE (0.001234)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
82
|
-
[4;36;1mHBASE (0.001213)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
83
|
-
[4;35;1mHBASE (0.001245)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
84
|
-
[4;36;1mHBASE (0.001754)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
85
|
-
[4;35;1mHBASE (0.001021)[0m [0mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
86
|
-
[4;36;1mHBASE (0.001161)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
87
|
-
[4;35;1mHBASE (0.001904)[0m [0mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
88
|
-
[4;36;1mHBASE (0.001104)[0m [0;1mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
89
|
-
[4;35;1mHBASE (0.001276)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
90
|
-
[4;36;1mHBASE (0.002049)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
91
|
-
[4;35;1mHBASE (0.001406)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
92
|
-
[4;36;1mHBASE (0.001799)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
93
|
-
[4;35;1mHBASE (0.001026)[0m [0mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
94
|
-
[4;36;1mHBASE (0.001179)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
95
|
-
WARNING: Can't mass-assign these protected attributes: name
|
96
|
-
[4;35;1mHBASE (0.002127)[0m [0mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
97
|
-
[4;36;1mHBASE (0.001071)[0m [0;1mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
98
|
-
[4;35;1mHBASE (0.001214)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
99
|
-
[4;36;1mHBASE (0.001221)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
100
|
-
[4;35;1mHBASE (0.001250)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
101
|
-
[4;36;1mHBASE (0.001773)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
102
|
-
[4;35;1mHBASE (0.001009)[0m [0mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
103
|
-
[4;36;1mHBASE (0.002783)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
104
|
-
[4;35;1mHBASE (0.002132)[0m [0mUPDATE zoos SET {"attr:name"=>"\001African Lion Safari", "attr:address"=>"\001RR #1 Cambridge, Ontario Canada\nN1R 5S2", "attr:readonly"=>"\000", "attr:employees"=>"\000", "attr:weblink"=>"--- \ntitle: African Lion Safari - Wikipedia\nurl: http://en.wikipedia.org/wiki/African_Lion_Safari\nid: 31e9d53d-576a-4d3d-b106-d14ca66507e2\n", "attr:description"=>"\001Canada's Original Safari Adventure", "attr:animal_ids"=>"--- []\n\n"} WHERE ROW=2ca9d093-8ace-4cda-9b60-b991b2e4a57e;[0m
|
105
|
-
[4;36;1mHBASE (0.002455)[0m [0;1mSELECT (attr:name, attr:address, attr:readonly, attr:employees, attr:weblink, attr:description, attr:animal_ids) FROM zoos WHERE ROW=2ca9d093-8ace-4cda-9b60-b991b2e4a57e;[0m
|
106
|
-
[4;35;1mHBASE (0.002049)[0m [0mUPDATE zoos SET {"attr:name"=>"\001African Lion Safari", "attr:address"=>"\001RR #1 Cambridge, Ontario Canada\nN1R 5S2", "attr:readonly"=>"\000", "attr:employees"=>"\000", "attr:weblink"=>"--- \ntitle: African Lion Safari\nurl: http://www.lionsafari.com/\nid: 93cab2ac-7e05-4642-9c83-1c1f6b3fd8e7\n", "attr:description"=>"\001Canada's Original Safari Adventure", "attr:animal_ids"=>"--- []\n\n"} WHERE ROW=2ca9d093-8ace-4cda-9b60-b991b2e4a57e;[0m
|
107
|
-
[4;36;1mHBASE (0.001335)[0m [0;1mSELECT (attr:name, attr:address, attr:readonly, attr:employees, attr:weblink, attr:description, attr:animal_ids) FROM zoos WHERE ROW=2ca9d093-8ace-4cda-9b60-b991b2e4a57e;[0m
|
108
|
-
[4;35;1mHBASE (0.002115)[0m [0mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
109
|
-
[4;36;1mHBASE (0.001088)[0m [0;1mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
110
|
-
[4;35;1mHBASE (0.001661)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
111
|
-
[4;36;1mHBASE (0.000830)[0m [0;1mDELETE FROM zoos WHERE ROW=2ca9d093-8ace-4cda-9b60-b991b2e4a57e;[0m
|
112
|
-
[4;35;1mHBASE (0.001308)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
113
|
-
[4;36;1mHBASE (0.001811)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
114
|
-
[4;35;1mHBASE (0.001017)[0m [0mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
115
|
-
[4;36;1mHBASE (0.001286)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
116
|
-
[4;35;1mHBASE (0.001820)[0m [0mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
117
|
-
[4;36;1mHBASE (0.001031)[0m [0;1mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
118
|
-
[4;35;1mHBASE (0.001203)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
119
|
-
[4;36;1mHBASE (0.001800)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
120
|
-
[4;35;1mHBASE (0.000994)[0m [0mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
121
|
-
[4;36;1mHBASE (0.002455)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
122
|
-
[4;35;1mHBASE (0.002062)[0m [0mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
123
|
-
[4;36;1mHBASE (0.001093)[0m [0;1mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
124
|
-
[4;35;1mHBASE (0.001229)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
125
|
-
[4;36;1mHBASE (0.001841)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
126
|
-
[4;35;1mHBASE (0.000991)[0m [0mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
127
|
-
[4;36;1mHBASE (0.001182)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
128
|
-
[4;35;1mHBASE (0.001906)[0m [0mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
129
|
-
[4;36;1mHBASE (0.001091)[0m [0;1mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
130
|
-
[4;35;1mHBASE (0.001218)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
131
|
-
[4;36;1mHBASE (0.001813)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
132
|
-
[4;35;1mHBASE (0.001031)[0m [0mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
133
|
-
[4;36;1mHBASE (0.001181)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
134
|
-
WARNING: Can't mass-assign these protected attributes: employees
|
135
|
-
WARNING: Can't mass-assign these protected attributes: employees
|
136
|
-
[4;35;1mHBASE (0.001971)[0m [0mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
137
|
-
[4;36;1mHBASE (0.001084)[0m [0;1mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
138
|
-
[4;35;1mHBASE (0.001187)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
139
|
-
[4;36;1mHBASE (0.002831)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
140
|
-
[4;35;1mHBASE (0.001135)[0m [0mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
141
|
-
[4;36;1mHBASE (0.001227)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
142
|
-
WARNING: Can't mass-assign these protected attributes: readonly, employees
|
143
|
-
WARNING: Can't mass-assign these protected attributes: employees
|
144
|
-
[4;35;1mHBASE (0.001976)[0m [0mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
145
|
-
[4;36;1mHBASE (0.001047)[0m [0;1mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
146
|
-
[4;35;1mHBASE (0.001241)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
147
|
-
[4;36;1mHBASE (0.001789)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
148
|
-
[4;35;1mHBASE (0.001110)[0m [0mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
149
|
-
[4;36;1mHBASE (0.001258)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
150
|
-
[4;35;1mHBASE (0.002300)[0m [0mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
151
|
-
[4;36;1mHBASE (0.002634)[0m [0;1mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
152
|
-
[4;35;1mHBASE (0.003699)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
153
|
-
[4;36;1mHBASE (0.002018)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
154
|
-
[4;35;1mHBASE (0.001066)[0m [0mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
155
|
-
[4;36;1mHBASE (0.002484)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
156
|
-
WARNING: Can't mass-assign these protected attributes: name
|
157
|
-
[4;35;1mHBASE (0.002158)[0m [0mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
158
|
-
[4;36;1mHBASE (0.001136)[0m [0;1mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
159
|
-
[4;35;1mHBASE (0.001229)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
160
|
-
[4;36;1mHBASE (0.001769)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
161
|
-
[4;35;1mHBASE (0.000993)[0m [0mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
162
|
-
[4;36;1mHBASE (0.001216)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
163
|
-
[4;35;1mHBASE (0.002008)[0m [0mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
164
|
-
[4;36;1mHBASE (0.001097)[0m [0;1mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
165
|
-
[4;35;1mHBASE (0.001203)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
166
|
-
[4;36;1mHBASE (0.001764)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
167
|
-
[4;35;1mHBASE (0.001047)[0m [0mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
168
|
-
[4;36;1mHBASE (0.001197)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
169
|
-
[4;35;1mHBASE (0.002182)[0m [0mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
170
|
-
[4;36;1mHBASE (0.001180)[0m [0;1mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
171
|
-
[4;35;1mHBASE (0.001239)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
172
|
-
[4;36;1mHBASE (0.001802)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
173
|
-
[4;35;1mHBASE (0.001047)[0m [0mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
174
|
-
[4;36;1mHBASE (0.001175)[0m [0;1mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
175
|
-
[4;35;1mHBASE (0.001875)[0m [0mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
176
|
-
[4;36;1mHBASE (0.001055)[0m [0;1mSCAN (attribute:) FROM companies WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
177
|
-
[4;35;1mHBASE (0.001205)[0m [0mSCAN (attr:) FROM zoos WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
178
|
-
[4;36;1mHBASE (0.001740)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
179
|
-
[4;35;1mHBASE (0.001845)[0m [0mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
180
|
-
[4;36;1mHBASE (0.001764)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
181
|
-
[4;35;1mHBASE (0.001672)[0m [0mUPDATE books SET {"log:change"=>"--- []\n\n", "attribute:description"=>"\000", "attribute:title"=>"\001I Am Legend", "attribute:author"=>"\001Richard Matheson", "attribute:links"=>"--- []\n\n"} WHERE ROW=004f8743-7237-44f9-bd2a-14214b2e7591;[0m
|
182
|
-
[4;36;1mHBASE (0.001154)[0m [0;1mSELECT (family2:, log:change, attribute:description, attribute:title, attribute:author, attribute:links) FROM books WHERE ROW=004f8743-7237-44f9-bd2a-14214b2e7591;[0m
|
183
|
-
[4;35;1mHBASE (0.002579)[0m [0mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
184
|
-
[4;36;1mHBASE (0.000926)[0m [0;1mDELETE FROM books WHERE ROW=004f8743-7237-44f9-bd2a-14214b2e7591;[0m
|
185
|
-
[4;35;1mHBASE (0.001913)[0m [0mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
186
|
-
[4;36;1mHBASE (0.001586)[0m [0;1mUPDATE books SET {"log:change"=>"--- []\n\n", "attribute:description"=>"\001The most clever and riveting vampire novel since Dracula.", "attribute:title"=>"\001I Am Legend", "attribute:author"=>"\001Richard Matheson", "attribute:links"=>"--- []\n\n"} WHERE ROW=dd2c12d9-61db-43cd-815c-495bb8450e9b;[0m
|
187
|
-
[4;35;1mHBASE (0.001228)[0m [0mSELECT (family2:, log:change, attribute:description, attribute:title, attribute:author, attribute:links) FROM books WHERE ROW=dd2c12d9-61db-43cd-815c-495bb8450e9b;[0m
|
188
|
-
[4;36;1mHBASE (0.000960)[0m [0;1mDELETE FROM books WHERE ROW=dd2c12d9-61db-43cd-815c-495bb8450e9b;[0m
|
189
|
-
[4;35;1mHBASE (0.000888)[0m [0mSELECT (family2:, log:change, attribute:description, attribute:title, attribute:author, attribute:links) FROM books WHERE ROW=dd2c12d9-61db-43cd-815c-495bb8450e9b;[0m
|
190
|
-
[4;36;1mHBASE (0.002046)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
191
|
-
[4;35;1mHBASE (0.001827)[0m [0mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
192
|
-
[4;36;1mHBASE (0.001586)[0m [0;1mUPDATE books SET {"log:change"=>"--- []\n\n", "attribute:description"=>"\001The most clever and riveting vampire novel since Dracula.", "attribute:title"=>"\001I Am Legend", "attribute:author"=>"\001Richard Matheson", "attribute:links"=>"--- []\n\n"} WHERE ROW=c864b364-8d0d-45d6-bc4f-fb33b4d68ce4;[0m
|
193
|
-
[4;35;1mHBASE (0.001103)[0m [0mSELECT (family2:, log:change, attribute:description, attribute:title, attribute:author, attribute:links) FROM books WHERE ROW=c864b364-8d0d-45d6-bc4f-fb33b4d68ce4;[0m
|
194
|
-
[4;36;1mHBASE (0.001492)[0m [0;1mUPDATE books SET {"log:change"=>"--- []\n\n", "attribute:description"=>"\001One of the Ten All-Time Best Novels of Vampirism.", "attribute:title"=>"\001I Am Legend", "attribute:links"=>"--- []\n\n", "attribute:author"=>"\001Richard Matheson"} WHERE ROW=c864b364-8d0d-45d6-bc4f-fb33b4d68ce4;[0m
|
195
|
-
[4;35;1mHBASE (0.001379)[0m [0mSELECT (family2:, log:change, attribute:description, attribute:title, attribute:author, attribute:links) FROM books WHERE ROW=c864b364-8d0d-45d6-bc4f-fb33b4d68ce4;[0m
|
196
|
-
[4;36;1mHBASE (0.004924)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
197
|
-
[4;35;1mHBASE (0.001127)[0m [0mDELETE FROM books WHERE ROW=c864b364-8d0d-45d6-bc4f-fb33b4d68ce4;[0m
|
198
|
-
[4;36;1mHBASE (0.002827)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
199
|
-
[4;35;1mHBASE (0.002067)[0m [0mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
200
|
-
[4;36;1mHBASE (0.001933)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
201
|
-
[4;35;1mHBASE (0.004246)[0m [0mUPDATE books SET {"log:change"=>"--- []\n\n", "attribute:description"=>"\001The most clever and riveting vampire novel since Dracula.", "attribute:title"=>"\001I Am Legend", "attribute:author"=>"\001Richard Matheson", "attribute:links"=>"--- []\n\n"} WHERE ROW=081ad946-c8c0-40b6-9452-5b4156df31e7;[0m
|
202
|
-
[4;36;1mHBASE (0.004064)[0m [0;1mUPDATE books SET {"log:change"=>"--- []\n\n", "attribute:description"=>"\001The most clever and riveting vampire novel since Dracula.", "attribute:title"=>"\001I Am Legend", "attribute:author"=>"\001Richard Matheson", "attribute:links"=>"--- []\n\n"} WHERE ROW=45d641c9-7045-43cb-88dd-3964b2446440;[0m
|
203
|
-
[4;35;1mHBASE (0.001785)[0m [0mUPDATE books SET {"log:change"=>"--- []\n\n", "attribute:description"=>"\001One of the Ten All-Time Best Novels of Vampirism.", "attribute:title"=>"\001I Am Legend", "attribute:author"=>"\001Richard Matheson", "attribute:links"=>"--- []\n\n"} WHERE ROW=45d641c9-7045-43cb-88dd-3964b2446440;[0m
|
204
|
-
[4;36;1mHBASE (0.001398)[0m [0;1mSELECT (family2:, log:change, attribute:description, attribute:title, attribute:author, attribute:links) FROM books WHERE ROW=45d641c9-7045-43cb-88dd-3964b2446440;[0m
|
205
|
-
[4;35;1mHBASE (0.005032)[0m [0mUPDATE books SET {"log:change"=>"--- []\n\n", "attribute:description"=>"\001The most clever and riveting vampire novel since Dracula.", "attribute:title"=>"\001I Am Legend", "attribute:author"=>"\001Richard Matheson", "attribute:links"=>"--- []\n\n"} WHERE ROW=b6ca21e6-d66b-4de7-bcbd-c54098e683e7;[0m
|
206
|
-
[4;36;1mHBASE (0.003372)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
207
|
-
[4;35;1mHBASE (0.001348)[0m [0mDELETE FROM books WHERE ROW=081ad946-c8c0-40b6-9452-5b4156df31e7;[0m
|
208
|
-
[4;36;1mHBASE (0.003556)[0m [0;1mDELETE FROM books WHERE ROW=45d641c9-7045-43cb-88dd-3964b2446440;[0m
|
209
|
-
[4;35;1mHBASE (0.001021)[0m [0mDELETE FROM books WHERE ROW=b6ca21e6-d66b-4de7-bcbd-c54098e683e7;[0m
|
210
|
-
[4;36;1mHBASE (0.001990)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
211
|
-
[4;35;1mHBASE (0.001664)[0m [0mUPDATE books SET {"log:change"=>"--- []\n\n", "attribute:description"=>"\001The most clever and riveting vampire novel since Dracula.", "attribute:title"=>"\001I Am Legend", "attribute:author"=>"\001Richard Matheson", "attribute:links"=>"--- []\n\n"} WHERE ROW=a3cffcc4-977a-4216-adb6-d2b26326fccf;[0m
|
212
|
-
[4;36;1mHBASE (0.003125)[0m [0;1mUPDATE books SET {"log:change"=>"--- []\n\n", "attribute:description"=>"\001One of the most important writers of the twentieth century.", "attribute:title"=>"\001A Stir of Echoes", "attribute:author"=>"\001Richard Matheson", "attribute:links"=>"--- []\n\n"} WHERE ROW=a3cffcc4-977a-4216-adb6-d2b26326fccf;[0m
|
213
|
-
[4;35;1mHBASE (0.001644)[0m [0mUPDATE books SET {"log:change"=>"--- []\n\n", "attribute:description"=>"\001The most clever and riveting vampire novel since Dracula.", "attribute:title"=>"\001I Am Legend", "attribute:author"=>"\001Richard Matheson", "attribute:links"=>"--- []\n\n"} WHERE ROW=f8c690c7-7a6a-4f16-9d75-52ac16200fa8;[0m
|
214
|
-
[4;36;1mHBASE (0.001557)[0m [0;1mUPDATE books SET {"log:change"=>"--- []\n\n", "attribute:description"=>"\001The most clever and riveting vampire novel since Dracula.", "attribute:title"=>"\001I Am Legend", "attribute:author"=>"\001Richard Matheson", "attribute:links"=>"--- []\n\n"} WHERE ROW=6e2ad9c8-8a39-4397-bcfd-7abe4c97fe24;[0m
|
215
|
-
[4;35;1mHBASE (0.001716)[0m [0mUPDATE books SET {"log:change"=>"--- []\n\n", "attribute:description"=>"\001One of the most important writers of the twentieth century.", "attribute:title"=>"\001A Stir of Echoes", "attribute:author"=>"\001Richard Matheson", "attribute:links"=>"--- []\n\n"} WHERE ROW=6e2ad9c8-8a39-4397-bcfd-7abe4c97fe24;[0m
|
216
|
-
[4;36;1mHBASE (0.001543)[0m [0;1mUPDATE books SET {"log:change"=>"--- []\n\n", "attribute:description"=>"\001The most clever and riveting vampire novel since Dracula.", "attribute:title"=>"\001I Am Legend", "attribute:author"=>"\001Richard Matheson", "attribute:links"=>"--- []\n\n"} WHERE ROW=8a6dea21-8ae6-40e9-8d3c-7eea53a17bc1;[0m
|
217
|
-
[4;35;1mHBASE (0.003266)[0m [0mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
218
|
-
[4;36;1mHBASE (0.000956)[0m [0;1mDELETE FROM books WHERE ROW=6e2ad9c8-8a39-4397-bcfd-7abe4c97fe24;[0m
|
219
|
-
[4;35;1mHBASE (0.000790)[0m [0mDELETE FROM books WHERE ROW=8a6dea21-8ae6-40e9-8d3c-7eea53a17bc1;[0m
|
220
|
-
[4;36;1mHBASE (0.000739)[0m [0;1mDELETE FROM books WHERE ROW=a3cffcc4-977a-4216-adb6-d2b26326fccf;[0m
|
221
|
-
[4;35;1mHBASE (0.000717)[0m [0mDELETE FROM books WHERE ROW=f8c690c7-7a6a-4f16-9d75-52ac16200fa8;[0m
|
222
|
-
[4;36;1mHBASE (0.001923)[0m [0;1mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
223
|
-
[4;35;1mHBASE (0.001804)[0m [0mUPDATE books SET {"log:change"=>"--- []\n\n", "attribute:description"=>"\000", "attribute:title"=>"\001I Am Legend", "attribute:author"=>"\001Richard Matheson", "attribute:links"=>"--- []\n\n"} WHERE ROW=720c13d1-7eb1-4395-8695-b96a0aa92211;[0m
|
224
|
-
[4;36;1mHBASE (0.001713)[0m [0;1mUPDATE books SET {"log:change"=>"--- []\n\n", "attribute:description"=>"\000", "attribute:title"=>"\001The Beach", "attribute:author"=>"\001Alex Garland", "attribute:links"=>"--- []\n\n"} WHERE ROW=e8a2b3ef-c201-43a9-be7a-6125792c3b20;[0m
|
225
|
-
[4;35;1mHBASE (0.001673)[0m [0mUPDATE books SET {"log:change"=>"--- []\n\n", "attribute:description"=>"\000", "attribute:title"=>"\001Neuromancer", "attribute:author"=>"\001William Gibson", "attribute:links"=>"--- []\n\n"} WHERE ROW=67835777-39cb-4aa7-98fc-899377f16277;[0m
|
226
|
-
[4;36;1mHBASE (0.004712)[0m [0;1mSCAN (family2:, log:change, attribute:description, attribute:title, attribute:author, attribute:links) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
227
|
-
[4;35;1mHBASE (0.004874)[0m [0mSCAN (family2:, log:change, attribute:description, attribute:title, attribute:author, attribute:links) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=101;[0m
|
228
|
-
[4;36;1mHBASE (0.001980)[0m [0;1mSCAN (family2:, log:change, attribute:description, attribute:title, attribute:author, attribute:links) FROM books WHERE START_ROW=e8a2b3ef-c201-43a9-be7a-6125792c3b20 AND STOP_ROW= LIMIT=101;[0m
|
229
|
-
[4;35;1mHBASE (0.002804)[0m [0mSCAN (attribute:) FROM books WHERE START_ROW= AND STOP_ROW= LIMIT=;[0m
|
230
|
-
[4;36;1mHBASE (0.000847)[0m [0;1mDELETE FROM books WHERE ROW=67835777-39cb-4aa7-98fc-899377f16277;[0m
|
231
|
-
[4;35;1mHBASE (0.000991)[0m [0mDELETE FROM books WHERE ROW=720c13d1-7eb1-4395-8695-b96a0aa92211;[0m
|
232
|
-
[4;36;1mHBASE (0.000921)[0m [0;1mDELETE FROM books WHERE ROW=e8a2b3ef-c201-43a9-be7a-6125792c3b20;[0m
|
data/spec/unit/callback_spec.rb
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
require File.expand_path(File.join(File.dirname(__FILE__), '..', 'spec_helper'))
|