userver: storages::clickhouse::io::columns::MismatchedEndiannessUuidColumn Class Reference
⚠️ This is the documentation for an old userver version. Click here to switch to the latest version.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
storages::clickhouse::io::columns::MismatchedEndiannessUuidColumn Class Referencefinal

Legacy broken ClickHouse UUID column representation. More...

#include <userver/storages/clickhouse/io/columns/uuid_column.hpp>

+ Inheritance diagram for storages::clickhouse::io::columns::MismatchedEndiannessUuidColumn:
+ Collaboration diagram for storages::clickhouse::io::columns::MismatchedEndiannessUuidColumn:

Public Types

using cpp_type = boost::uuids::uuid
 
using container_type = std::vector< cpp_type >
 
- Public Types inherited from storages::clickhouse::io::columns::ClickhouseColumn< MismatchedEndiannessUuidColumn >
using iterator = ColumnIterator< MismatchedEndiannessUuidColumn >
 

Public Member Functions

 MismatchedEndiannessUuidColumn (ColumnRef column)
 
- Public Member Functions inherited from storages::clickhouse::io::columns::ClickhouseColumn< MismatchedEndiannessUuidColumn >
 ClickhouseColumn (ColumnRef column)
 
iterator begin () const
 
iterator end () const
 
size_t Size () const
 

Static Public Member Functions

static ColumnRef Serialize (const container_type &from)
 

Detailed Description

Legacy broken ClickHouse UUID column representation.

Warning
This implementation is broken in a way that uuids endianness is mismatched: uuid "30eec7b3-0b5c-451e-8976-98f62b4c4448" will be stored as uuid "1e455c0b-b3c7-ee30-4844-4c2bf6987689" in ClickHouse (notice that each of 8 hex bytes group is bytewise reversed).

Requires both writes and reads to be performed via userver to work.

Definition at line 24 of file uuid_column.hpp.

Member Typedef Documentation

◆ container_type

using storages::clickhouse::io::columns::MismatchedEndiannessUuidColumn::container_type = std::vector<cpp_type>

Definition at line 28 of file uuid_column.hpp.

◆ cpp_type

using storages::clickhouse::io::columns::MismatchedEndiannessUuidColumn::cpp_type = boost::uuids::uuid

Definition at line 27 of file uuid_column.hpp.


The documentation for this class was generated from the following file: