mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-10-25 09:50:48 +00:00
Merge commit 'f2b386a7d00c6f03c65ac1d74a9d8670ceef8ade'
This commit is contained in:
commit
6918d7dd52
@ -85,7 +85,7 @@ public:
|
|||||||
|
|
||||||
~ColumnAggregateFunction()
|
~ColumnAggregateFunction()
|
||||||
{
|
{
|
||||||
if (!func->hasTrivialDestructor() && src)
|
if (!func->hasTrivialDestructor() && !src)
|
||||||
for (auto val : data)
|
for (auto val : data)
|
||||||
func->destroy(val);
|
func->destroy(val);
|
||||||
}
|
}
|
||||||
|
@ -42,7 +42,7 @@ protected:
|
|||||||
char * compressed_buffer = nullptr;
|
char * compressed_buffer = nullptr;
|
||||||
|
|
||||||
#ifdef USE_QUICKLZ
|
#ifdef USE_QUICKLZ
|
||||||
qlz_state_decompress * qlz_state = nullptr;
|
std::unique_ptr<qlz_state_decompress> qlz_state;
|
||||||
#else
|
#else
|
||||||
void * fixed_size_padding = nullptr;
|
void * fixed_size_padding = nullptr;
|
||||||
#endif
|
#endif
|
||||||
@ -122,7 +122,7 @@ protected:
|
|||||||
{
|
{
|
||||||
#ifdef USE_QUICKLZ
|
#ifdef USE_QUICKLZ
|
||||||
if (!qlz_state)
|
if (!qlz_state)
|
||||||
qlz_state = new qlz_state_decompress;
|
qlz_state = std::make_unique<qlz_state_decompress>();
|
||||||
|
|
||||||
qlz_decompress(&compressed_buffer[0], to, qlz_state);
|
qlz_decompress(&compressed_buffer[0], to, qlz_state);
|
||||||
#else
|
#else
|
||||||
@ -154,14 +154,6 @@ public:
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
~CompressedReadBufferBase()
|
|
||||||
{
|
|
||||||
#ifdef USE_QUICKLZ
|
|
||||||
if (qlz_state)
|
|
||||||
delete qlz_state;
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
/** Не проверять чексуммы.
|
/** Не проверять чексуммы.
|
||||||
* Может использоваться, например, в тех случаях, когда сжатые данные пишет клиент,
|
* Может использоваться, например, в тех случаях, когда сжатые данные пишет клиент,
|
||||||
* который не умеет вычислять чексуммы, и вместо этого заполняет их нулями или чем угодно.
|
* который не умеет вычислять чексуммы, и вместо этого заполняет их нулями или чем угодно.
|
||||||
|
@ -34,15 +34,14 @@ public: \
|
|||||||
\
|
\
|
||||||
ASTPtr clone() const override \
|
ASTPtr clone() const override \
|
||||||
{ \
|
{ \
|
||||||
Name * res = new Name(*this); \
|
std::shared_ptr<Name> res = std::make_shared<Name>(*this); \
|
||||||
ASTPtr ptr{res}; \
|
|
||||||
res->children.clear(); \
|
res->children.clear(); \
|
||||||
if (format) \
|
if (format) \
|
||||||
{ \
|
{ \
|
||||||
res->format = format->clone(); \
|
res->format = format->clone(); \
|
||||||
res->children.push_back(res->format); \
|
res->children.push_back(res->format); \
|
||||||
} \
|
} \
|
||||||
return ptr; \
|
return res; \
|
||||||
} \
|
} \
|
||||||
\
|
\
|
||||||
protected: \
|
protected: \
|
||||||
|
@ -46,15 +46,14 @@ protected:
|
|||||||
\
|
\
|
||||||
ASTPtr clone() const override \
|
ASTPtr clone() const override \
|
||||||
{ \
|
{ \
|
||||||
Name * res = new Name(*this); \
|
std::shared_ptr<Name> res = std::make_shared<Name>(*this); \
|
||||||
ASTPtr ptr{res}; \
|
|
||||||
res->children.clear(); \
|
res->children.clear(); \
|
||||||
if (format) \
|
if (format) \
|
||||||
{ \
|
{ \
|
||||||
res->format = format->clone(); \
|
res->format = format->clone(); \
|
||||||
res->children.push_back(res->format); \
|
res->children.push_back(res->format); \
|
||||||
} \
|
} \
|
||||||
return ptr; \
|
return res; \
|
||||||
} \
|
} \
|
||||||
\
|
\
|
||||||
protected: \
|
protected: \
|
||||||
|
@ -63,7 +63,7 @@ MultiplexedConnections::MultiplexedConnections(ConnectionPools & pools_, const S
|
|||||||
|
|
||||||
for (auto & pool : pools_)
|
for (auto & pool : pools_)
|
||||||
{
|
{
|
||||||
if (pool)
|
if (!pool)
|
||||||
throw Exception("Invalid pool specified", ErrorCodes::LOGICAL_ERROR);
|
throw Exception("Invalid pool specified", ErrorCodes::LOGICAL_ERROR);
|
||||||
initFromShard(pool.get());
|
initFromShard(pool.get());
|
||||||
}
|
}
|
||||||
|
@ -40,9 +40,8 @@ ConfigProcessor::ConfigProcessor(bool throw_on_bad_incl_, bool log_to_console, c
|
|||||||
{
|
{
|
||||||
if (log_to_console && Logger::has("ConfigProcessor") == nullptr)
|
if (log_to_console && Logger::has("ConfigProcessor") == nullptr)
|
||||||
{
|
{
|
||||||
Poco::Channel * channel = new Poco::ConsoleChannel;
|
channel_ptr = new Poco::ConsoleChannel;
|
||||||
channel_ptr = channel;
|
log = &Logger::create("ConfigProcessor", channel_ptr.get(), Poco::Message::PRIO_TRACE);
|
||||||
log = &Logger::create("ConfigProcessor", channel, Poco::Message::PRIO_TRACE);
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -212,8 +212,7 @@ void ExternalDictionaries::reloadFromFile(const std::string & config_path, const
|
|||||||
/// definitions of dictionaries may have changed, recreate all of them
|
/// definitions of dictionaries may have changed, recreate all of them
|
||||||
config_last_modified = last_modified;
|
config_last_modified = last_modified;
|
||||||
|
|
||||||
const auto config = new Poco::Util::XMLConfiguration{config_path};
|
Poco::AutoPtr<Poco::Util::XMLConfiguration> config = new Poco::Util::XMLConfiguration(config_path);
|
||||||
SCOPE_EXIT(config->release());
|
|
||||||
|
|
||||||
/// get all dictionaries' definitions
|
/// get all dictionaries' definitions
|
||||||
Poco::Util::AbstractConfiguration::Keys keys;
|
Poco::Util::AbstractConfiguration::Keys keys;
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
(important for some administration scripts).
|
(important for some administration scripts).
|
||||||
-->
|
-->
|
||||||
<size>1000M</size>
|
<size>1000M</size>
|
||||||
<count>2</count>
|
<count>10</count>
|
||||||
</logger>
|
</logger>
|
||||||
|
|
||||||
|
|
||||||
|
6
debian/copy_clang_binaries.sh
vendored
6
debian/copy_clang_binaries.sh
vendored
@ -6,7 +6,7 @@
|
|||||||
DST=${1:-.};
|
DST=${1:-.};
|
||||||
PATH="/usr/local/bin:/usr/local/sbin:/usr/bin:$PATH"
|
PATH="/usr/local/bin:/usr/local/sbin:/usr/bin:$PATH"
|
||||||
CLANG=$(command -v clang)
|
CLANG=$(command -v clang)
|
||||||
LD=$(command -v ld)
|
LD=$(command -v gold || command -v ld.gold || command -v ld)
|
||||||
|
|
||||||
if [ ! -x "$CLANG" ]; then
|
if [ ! -x "$CLANG" ]; then
|
||||||
echo "Not found executable clang."
|
echo "Not found executable clang."
|
||||||
@ -14,12 +14,12 @@ if [ ! -x "$CLANG" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ! -x "$LD" ]; then
|
if [ ! -x "$LD" ]; then
|
||||||
echo "Not found executable ld."
|
echo "Not found executable gold or ld."
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
cp "$CLANG" $DST
|
cp "$CLANG" $DST
|
||||||
cp "$LD" $DST
|
cp "$LD" ${DST}/ld
|
||||||
|
|
||||||
STDCPP=$(ldd $(command -v clang) | grep -oE '/[^ ]+libstdc++[^ ]+')
|
STDCPP=$(ldd $(command -v clang) | grep -oE '/[^ ]+libstdc++[^ ]+')
|
||||||
|
|
||||||
|
2
debian/rules
vendored
2
debian/rules
vendored
@ -153,7 +153,7 @@ binary-arch: build install
|
|||||||
dh_compress
|
dh_compress
|
||||||
dh_fixperms
|
dh_fixperms
|
||||||
dh_installdeb
|
dh_installdeb
|
||||||
dh_shlibdeps --exclude=clang --exclude=stdc
|
dh_shlibdeps --exclude=clang --exclude=stdc --exclude=ld
|
||||||
dh_gencontrol
|
dh_gencontrol
|
||||||
dh_md5sums
|
dh_md5sums
|
||||||
dh_builddeb -- -z3
|
dh_builddeb -- -z3
|
||||||
|
@ -3,7 +3,12 @@
|
|||||||
Build should work on Linux Ubuntu 12.04, 14.04 or newer.
|
Build should work on Linux Ubuntu 12.04, 14.04 or newer.
|
||||||
With appropriate changes, build should work on any other Linux distribution.
|
With appropriate changes, build should work on any other Linux distribution.
|
||||||
Build is not intended to work on Mac OS X.
|
Build is not intended to work on Mac OS X.
|
||||||
Only x86_64 is supported. Support for AArch64 is experimental.
|
Only x86_64 with SSE 4.2 is supported. Support for AArch64 is experimental.
|
||||||
|
|
||||||
|
To test for SSE 4.2, do
|
||||||
|
```
|
||||||
|
grep -q sse4_2 /proc/cpuinfo && echo "SSE 4.2 supported" || echo "SSE 4.2 not supported"
|
||||||
|
```
|
||||||
|
|
||||||
## Install Git and CMake
|
## Install Git and CMake
|
||||||
|
|
||||||
|
1
doc/google419fbd824d7ff97d.html
Normal file
1
doc/google419fbd824d7ff97d.html
Normal file
@ -0,0 +1 @@
|
|||||||
|
google-site-verification: google419fbd824d7ff97d.html
|
BIN
doc/habrahabr/2/clickmap.png
Normal file
BIN
doc/habrahabr/2/clickmap.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 84 KiB |
@ -386,7 +386,7 @@
|
|||||||
<div class="download_instructions">
|
<div class="download_instructions">
|
||||||
<h2>Download</h2>
|
<h2>Download</h2>
|
||||||
|
|
||||||
<p>System requirements: Linux, x86_64.</p>
|
<p>System requirements: Linux, x86_64 with SSE 4.2.</p>
|
||||||
|
|
||||||
<p>Install packages for Ubuntu 14.04 (Trusty) or Ubuntu 12.04 (Precise):</p>
|
<p>Install packages for Ubuntu 14.04 (Trusty) or Ubuntu 12.04 (Precise):</p>
|
||||||
|
|
||||||
|
12
doc/logo.svg
Normal file
12
doc/logo.svg
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="54" height="48" viewBox="0 0 9 8">
|
||||||
|
<style>
|
||||||
|
.o{fill:#fc0}
|
||||||
|
.r{fill:#f00}
|
||||||
|
</style>
|
||||||
|
<path class="r" d="M0,7 h1 v1 h-1 z"/>
|
||||||
|
<path class="o" d="M0,0 h1 v7 h-1 z"/>
|
||||||
|
<path class="o" d="M2,0 h1 v8 h-1 z"/>
|
||||||
|
<path class="o" d="M4,0 h1 v8 h-1 z"/>
|
||||||
|
<path class="o" d="M6,0 h1 v8 h-1 z"/>
|
||||||
|
<path class="o" d="M8,3.25 h1 v1.5 h-1 z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 421 B |
@ -361,7 +361,10 @@ At this time (May 2016), there aren't any available open-source and free sys
|
|||||||
|
|
||||||
<h2>System requirements</h2>
|
<h2>System requirements</h2>
|
||||||
|
|
||||||
<p>This is not a cross-platform system. It requires Linux Ubuntu Precise (12.04) or newer, with x86_64 architecture.
|
<p>This is not a cross-platform system. It requires Linux Ubuntu Precise (12.04) or newer, x86_64 architecture with SSE 4.2 instruction set.
|
||||||
|
To test for SSE 4.2 support, do
|
||||||
|
<span class="inline-example">grep -q sse4_2 /proc/cpuinfo && echo "SSE 4.2 supported" || echo "SSE 4.2 not supported"</span>
|
||||||
|
|
||||||
We recommend using Ubuntu Trusty or Ubuntu Precise.
|
We recommend using Ubuntu Trusty or Ubuntu Precise.
|
||||||
The terminal must use UTF-8 encoding (the default in Ubuntu).</p>
|
The terminal must use UTF-8 encoding (the default in Ubuntu).</p>
|
||||||
|
|
||||||
|
@ -386,7 +386,10 @@ OLAPServer хорошо подходил для неагрегированных
|
|||||||
|
|
||||||
<h2>Системные требования</h2>
|
<h2>Системные требования</h2>
|
||||||
|
|
||||||
<p>Система некроссплатформенная. Требуется ОС Linux Ubuntu не более старая, чем Precise (12.04); архитектура x86_64.
|
<p>Система некроссплатформенная. Требуется ОС Linux Ubuntu не более старая, чем Precise (12.04); архитектура x86_64 с поддержкой набора инструкций SSE 4.2.
|
||||||
|
Для проверки наличия SSE 4.2, выполните:
|
||||||
|
<span class="inline-example">grep -q sse4_2 /proc/cpuinfo && echo "SSE 4.2 supported" || echo "SSE 4.2 not supported"</span>
|
||||||
|
|
||||||
Рекомендуется использовать Ubuntu Trusty или Ubuntu Precise.
|
Рекомендуется использовать Ubuntu Trusty или Ubuntu Precise.
|
||||||
Терминал должен работать в кодировке UTF-8 (как по умолчанию в Ubuntu).</p>
|
Терминал должен работать в кодировке UTF-8 (как по умолчанию в Ubuntu).</p>
|
||||||
|
|
||||||
|
2
doc/robots.txt
Normal file
2
doc/robots.txt
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
User-agent: *
|
||||||
|
Allow: /
|
2
private
2
private
@ -1 +1 @@
|
|||||||
Subproject commit a482f9ec80b4c10e92b3d647b3558978cc453d2e
|
Subproject commit bc91114b009ca3edde1a00dcf9d355388f6e9899
|
@ -26,6 +26,14 @@ NUMBER_OF_PROCESSES=$DEFAULT_NUMBER_OF_PROCESSES
|
|||||||
|
|
||||||
LOG_FILE=""
|
LOG_FILE=""
|
||||||
|
|
||||||
|
# On x86_64, check for required instruction set.
|
||||||
|
if uname -mpi | grep -q x86_64; then
|
||||||
|
if ! grep -q sse4_2 /proc/cpuinfo; then
|
||||||
|
echo 'SSE 4.2 instruction set is not supported'
|
||||||
|
exit 3
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
# С помощью xmlstarlet пытаемся взять некоторые параметры из конфига
|
# С помощью xmlstarlet пытаемся взять некоторые параметры из конфига
|
||||||
if command -v xmlstarlet >/dev/null 2>&1; then
|
if command -v xmlstarlet >/dev/null 2>&1; then
|
||||||
NUMBER_OF_PROCESSES=$(xmlstarlet sel -t -v "/yandex/number_of_processes" $CNFFILE || echo $DEFAULT_NUMBER_OF_PROCESSES)
|
NUMBER_OF_PROCESSES=$(xmlstarlet sel -t -v "/yandex/number_of_processes" $CNFFILE || echo $DEFAULT_NUMBER_OF_PROCESSES)
|
||||||
|
Loading…
Reference in New Issue
Block a user