assertnode1.query("CHECK TABLE non_replicated_mt",settings={"check_query_single_value_result":0}).strip()=="201902_1_1_0_1\t1\tChecksums recounted and written to disk."
assertnode1.query("CHECK TABLE non_replicated_mt",settings={"check_query_single_value_result":0}).strip()=="201902_1_1_0\t1\tChecksums recounted and written to disk."
assertnode1.query("SELECT COUNT() FROM non_replicated_mt")=="2\n"
assertnode1.query("CHECK TABLE non_replicated_mt PARTITION 201902",settings={"check_query_single_value_result":0}).strip()=="201902_1_1_0_1\t1\tChecksums recounted and written to disk."
assertnode1.query("CHECK TABLE non_replicated_mt PARTITION 201902",settings={"check_query_single_value_result":0}).strip()=="201902_1_1_0\t1\tChecksums recounted and written to disk."
assertnode1.query("SELECT COUNT() FROM non_replicated_mt")=="2\n"
assertnode1.query("CHECK TABLE non_replicated_mt PARTITION 201901",settings={"check_query_single_value_result":0})=="201901_2_2_0_2\t0\tCheck of part finished with error: \\'Cannot read all data. Bytes read: 2. Bytes expected: 16.\\'\n"
assertnode1.query("CHECK TABLE non_replicated_mt PARTITION 201901",settings={"check_query_single_value_result":0})=="201901_2_2_0\t0\tCheck of part finished with error: \\'Cannot read all data. Bytes read: 2. Bytes expected: 16.\\'\n"
assertnode5.query("SELECT name FROM system.databases WHERE name = 'db1'")=="db1\n"
assertnode5.query("SELECT name FROM system.tables WHERE database = 'db1' AND name = 'test_table' ")=="test_table\n"
assertnode5.query("SELECT name FROM system.columns WHERE database = 'db1' AND table = 'test_table'")=="date\nk1\nv1\n"
assertnode5.query("SELECT name FROM system.parts WHERE database = 'db1' AND table = 'test_table'")=="20000101_20000101_1_1_0_1\n"
assertnode5.query("SELECT name FROM system.parts_columns WHERE database = 'db1' AND table = 'test_table'")=="20000101_20000101_1_1_0_1\n20000101_20000101_1_1_0_1\n20000101_20000101_1_1_0_1\n"
assertnode5.query("SELECT name FROM system.parts WHERE database = 'db1' AND table = 'test_table'")=="20000101_20000101_1_1_0\n"
assertnode5.query("SELECT name FROM system.parts_columns WHERE database = 'db1' AND table = 'test_table'")=="20000101_20000101_1_1_0\n20000101_20000101_1_1_0\n20000101_20000101_1_1_0\n"
assertnode5.query("SELECT name FROM system.databases WHERE name = 'db1'",user="test_allow").strip()==""
assertnode5.query("SELECT name FROM system.tables WHERE database = 'db1' AND name = 'test_table'",user="test_allow").strip()==""
node.query("insert into table function file('some/path/to/data.CSV', CSV, 'n UInt8, s String') select number, concat('str_', toString(number)) from numbers(100000)")
assertnode.query("select count() from file('some/path/to/data.CSV', CSV, 'n UInt8, s String')").rstrip()=='100000'
node.query("insert into table function file('nonexist.csv', 'CSV', 'val1 UInt32') values (1)")
assertnode.query("select * from file('nonexist.csv', 'CSV', 'val1 UInt32')").rstrip()=='1'
${CLICKHOUSE_CLIENT}--query="SELECT sum(v1) FROM table_for_mutations"
${CLICKHOUSE_CLIENT}--query="SELECT is_done, parts_to_do_names, parts_to_do FROM system.mutations where table = 'table_for_mutations'"
${CLICKHOUSE_CLIENT}--query="DROP TABLE IF EXISTS table_for_mutations"
${CLICKHOUSE_CLIENT}--query="DROP TABLE IF EXISTS replicated_table_for_mutations"
${CLICKHOUSE_CLIENT}--query="CREATE TABLE replicated_table_for_mutations(k UInt32, v1 UInt64) ENGINE ReplicatedMergeTree('/clickhouse/tables/replicated_table_for_mutations', '1') ORDER BY k PARTITION BY modulo(k, 2)"
${CLICKHOUSE_CLIENT}--query="SYSTEM STOP MERGES"
${CLICKHOUSE_CLIENT}--query="INSERT INTO replicated_table_for_mutations select number, number from numbers(100000)"
${CLICKHOUSE_CLIENT}--query="SELECT sum(v1) FROM replicated_table_for_mutations"
[Looker](https://looker.com) is a data platform and business intelligence tool with support for 50+ database dialects including ClickHouse. Looker is available as a SaaS platform and self-hosted. Users
can use Looker via the browser to explore data, build visualizations and dashboards, schedule reports, and share their
insights with colleagues. Looker provides a rich set of tools to embed these features in other applications, and an API
to integrate data with other applications.
Features:
- Designed around ease of use and self-service for end users.
- Easy and agile development using LookML, a language which supports currated
[Data Modeling](https://looker.com/platform/data-modeling) to support report writers and end users.
- Powerful workflow integration via Looker's [Data Actions](https://looker.com/platform/actions).
@@ -310,9 +310,8 @@ ClickHouse использует небольшое подмножество фу
## 7. Сопровождение разработки.
### 7.1. ICU в submodules.
### 7.1. + ICU в submodules.
[Иван Лежанкин](https://github.com/abyss7).
Добавление в submodules также нужно для Аркадии (7.26).
### 7.2. LLVM в submodules.
...
...
@@ -396,7 +395,7 @@ Wolf Kreuzerkrieg. Возможно, его уже не интересует э
Вместо этого предлагается в качестве примера изучить прототип текстового редактора Kilo: https://viewsourcecode.org/snaptoken/kilo/ и реализовать всю необходимую функциональность.
### 7.15. Замена libressl обратно на openssl.
### 7.15. + Замена libressl обратно на openssl.
Поводом использования libressl послужило желание нашего хорошего друга из известной компании несколько лет назад. Но сейчас ситуация состоит в том, что openssl продолжает развиваться, а libressl не особо, и можно спокойно менять обратно.
...
...
@@ -421,10 +420,12 @@ Wolf Kreuzerkrieg. Возможно, его уже не интересует э
Сейчас людям приходится делать несколько кликов, чтобы их скачать.
[Иван Лежанкин](https://github.com/abyss7) или [Александр Сапин](https://github.com/alesapin).
### 7.19. Доделать (проверить) автосборку под AArch64.
### 7.19. + Доделать (проверить) автосборку под AArch64.