22
22
#define DBMS_NAME " ClickHouse"
23
23
#define DBMS_VERSION_MAJOR 1
24
24
#define DBMS_VERSION_MINOR 1
25
- #define REVISION 54126
25
+ #define REVISION 54405
26
26
27
27
#define DBMS_MIN_REVISION_WITH_TEMPORARY_TABLES 50264
28
28
#define DBMS_MIN_REVISION_WITH_TOTAL_ROWS_IN_PROGRESS 51554
29
29
#define DBMS_MIN_REVISION_WITH_BLOCK_INFO 51903
30
30
#define DBMS_MIN_REVISION_WITH_CLIENT_INFO 54032
31
31
#define DBMS_MIN_REVISION_WITH_SERVER_TIMEZONE 54058
32
32
#define DBMS_MIN_REVISION_WITH_QUOTA_KEY_IN_CLIENT_INFO 54060
33
+ // #define DBMS_MIN_REVISION_WITH_TABLES_STATUS 54226
34
+ // #define DBMS_MIN_REVISION_WITH_TIME_ZONE_PARAMETER_IN_DATETIME_DATA_TYPE 54337
35
+ #define DBMS_MIN_REVISION_WITH_SERVER_DISPLAY_NAME 54372
36
+ #define DBMS_MIN_REVISION_WITH_VERSION_PATCH 54401
37
+ #define DBMS_MIN_REVISION_WITH_LOW_CARDINALITY_TYPE 54405
33
38
34
39
namespace clickhouse {
35
40
@@ -45,14 +50,17 @@ struct ClientInfo {
45
50
std::string initial_address = " [::ffff:127.0.0.1]:0" ;
46
51
uint64_t client_version_major = 0 ;
47
52
uint64_t client_version_minor = 0 ;
53
+ uint64_t client_version_patch = 0 ;
48
54
uint32_t client_revision = 0 ;
49
55
};
50
56
51
57
struct ServerInfo {
52
58
std::string name;
53
59
std::string timezone;
60
+ std::string display_name;
54
61
uint64_t version_major;
55
62
uint64_t version_minor;
63
+ uint64_t version_patch;
56
64
uint64_t revision;
57
65
};
58
66
@@ -563,6 +571,9 @@ void Client::Impl::SendQuery(const std::string& query) {
563
571
564
572
if (server_info_.revision >= DBMS_MIN_REVISION_WITH_QUOTA_KEY_IN_CLIENT_INFO)
565
573
WireFormat::WriteString (&output_, info.quota_key );
574
+ if (server_info_.revision >= DBMS_MIN_REVISION_WITH_VERSION_PATCH) {
575
+ WireFormat::WriteUInt64 (&output_, info.client_version_patch );
576
+ }
566
577
}
567
578
568
579
// / Per query settings.
@@ -697,6 +708,18 @@ bool Client::Impl::ReceiveHello() {
697
708
}
698
709
}
699
710
711
+ if (server_info_.revision >= DBMS_MIN_REVISION_WITH_SERVER_DISPLAY_NAME) {
712
+ if (!WireFormat::ReadString (&input_, &server_info_.display_name )) {
713
+ return false ;
714
+ }
715
+ }
716
+
717
+ if (server_info_.revision >= DBMS_MIN_REVISION_WITH_VERSION_PATCH) {
718
+ if (!WireFormat::ReadUInt64 (&input_, &server_info_.version_patch )) {
719
+ return false ;
720
+ }
721
+ }
722
+
700
723
return true ;
701
724
} else if (packet_type == ServerCodes::Exception) {
702
725
ReceiveException (true );
0 commit comments