clickhouse-activerecord 1.0.7 → 1.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 77b149946e335300ac60c931d1318dd2d3a460127b27f3af8722397177e6153e
|
4
|
+
data.tar.gz: cd77dd40f7b9edf5e052d2f87c918e25d882616b48a69558dfb4f92761009edb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: af2eee6764e9c6de36c96cf1d830ddbb6c263f86e3a0e28bb79cb5a7e786c476fd100c8be38cc9226f6c7e6f9f8c4c0d5c73c039411096ddaddd160f72146b5f
|
7
|
+
data.tar.gz: 39c38cf9dbd66f4b7bb27447ebded7a54d999299ab5688bba51fbc6ac8a3ef5a4af29d0f0ec4c44461f300a19d7dde6d3bb5ca890453d42485758cc5740c9389
|
data/CHANGELOG.md
CHANGED
@@ -1,10 +1,11 @@
|
|
1
|
-
### Version 1.0.
|
1
|
+
### Version 1.0.7 (Apr 27, 2024)
|
2
2
|
|
3
3
|
* Support table indexes
|
4
4
|
* Fix non-canonical UUID by [@PauloMiranda98](https://github.com/PauloMiranda98) in (#117)
|
5
5
|
* Fix precision loss due to JSON float parsing by [@jenskdsgn](https://github.com/jenskdsgn) in (#129)
|
6
6
|
* Support functions by [@felix-dumit](https://github.com/felix-dumit) in (#120)
|
7
7
|
* Hotfix/rails71 change column by [@trumenov](https://github.com/trumenov) in (#132)
|
8
|
+
* Fix DB tasks
|
8
9
|
|
9
10
|
### Version 1.0.5 (Mar 14, 2024)
|
10
11
|
|
data/README.md
CHANGED
@@ -202,7 +202,7 @@ false`. The default integer is `UInt32`
|
|
202
202
|
|
203
203
|
Example:
|
204
204
|
|
205
|
-
```
|
205
|
+
```ruby
|
206
206
|
class CreateDataItems < ActiveRecord::Migration[7.1]
|
207
207
|
def change
|
208
208
|
create_table "data_items", id: false, options: "VersionedCollapsingMergeTree(sign, version) PARTITION BY toYYYYMM(day) ORDER BY category", force: :cascade do |t|
|
@@ -230,8 +230,8 @@ end
|
|
230
230
|
|
231
231
|
Create table with custom column structure:
|
232
232
|
|
233
|
-
```
|
234
|
-
class CreateDataItems < ActiveRecord::Migration
|
233
|
+
```ruby
|
234
|
+
class CreateDataItems < ActiveRecord::Migration[7.1]
|
235
235
|
def change
|
236
236
|
create_table "data_items", id: false, options: "MergeTree PARTITION BY toYYYYMM(timestamp) ORDER BY timestamp", force: :cascade do |t|
|
237
237
|
t.column "timestamp", "DateTime('UTC') CODEC(DoubleDelta, LZ4)"
|
@@ -240,6 +240,16 @@ class CreateDataItems < ActiveRecord::Migration
|
|
240
240
|
end
|
241
241
|
```
|
242
242
|
|
243
|
+
Create Buffer table with connection database name:
|
244
|
+
|
245
|
+
```ruby
|
246
|
+
class CreateDataItems < ActiveRecord::Migration[7.1]
|
247
|
+
def change
|
248
|
+
create_table :some_buffers, as: :some, options: "Buffer(#{connection.database}, some, 1, 10, 60, 100, 10000, 10000000, 100000000)"
|
249
|
+
end
|
250
|
+
end
|
251
|
+
```
|
252
|
+
|
243
253
|
|
244
254
|
### Using replica and cluster params in connection parameters
|
245
255
|
|
@@ -88,6 +88,7 @@ module ActiveRecord
|
|
88
88
|
create_sql = +"CREATE#{table_modifier_in_create(o)} #{o.view ? "VIEW" : "TABLE"} "
|
89
89
|
create_sql << "IF NOT EXISTS " if o.if_not_exists
|
90
90
|
create_sql << "#{quote_table_name(o.name)} "
|
91
|
+
add_as_clause!(create_sql, o) if o.as && !o.view
|
91
92
|
add_to_clause!(create_sql, o) if o.materialized
|
92
93
|
|
93
94
|
statements = o.columns.map { |c| accept c }
|
@@ -103,7 +104,7 @@ module ActiveRecord
|
|
103
104
|
create_sql << "(#{statements.join(', ')})" if statements.present?
|
104
105
|
# Attach options for only table or materialized view without TO section
|
105
106
|
add_table_options!(create_sql, o) if !o.view || o.view && o.materialized && !o.to
|
106
|
-
add_as_clause!(create_sql, o)
|
107
|
+
add_as_clause!(create_sql, o) if o.as && o.view
|
107
108
|
create_sql
|
108
109
|
end
|
109
110
|
|
@@ -293,7 +293,7 @@ module ActiveRecord
|
|
293
293
|
options = apply_replica(table_name, options)
|
294
294
|
td = create_table_definition(apply_cluster(table_name), **options)
|
295
295
|
block.call td if block_given?
|
296
|
-
td.column(:id, options[:id], null: false) if options[:id].present? && td[:id].blank?
|
296
|
+
td.column(:id, options[:id], null: false) if options[:id].present? && td[:id].blank? && options[:as].blank?
|
297
297
|
|
298
298
|
if options[:force]
|
299
299
|
drop_table(table_name, options.merge(if_exists: true))
|
@@ -431,6 +431,10 @@ module ActiveRecord
|
|
431
431
|
@config[:replica_name]
|
432
432
|
end
|
433
433
|
|
434
|
+
def database
|
435
|
+
@config[:database]
|
436
|
+
end
|
437
|
+
|
434
438
|
def use_default_replicated_merge_tree_params?
|
435
439
|
database_engine_atomic? && @config[:use_default_replicated_merge_tree_params]
|
436
440
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: clickhouse-activerecord
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sergey Odintsov
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-05-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -154,7 +154,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
154
154
|
- !ruby/object:Gem::Version
|
155
155
|
version: '0'
|
156
156
|
requirements: []
|
157
|
-
rubygems_version: 3.
|
157
|
+
rubygems_version: 3.5.9
|
158
158
|
signing_key:
|
159
159
|
specification_version: 4
|
160
160
|
summary: ClickHouse ActiveRecord
|