ClickHouse® is a real-time analytics DBMS
Go to file
Azat Khuzhin 2d66a5c393 Fix hang check for 00966_live_view_watch_events_http
If INSERT was failed then WATCH EVENTS will hang:

    2021.03.12 23:45:33.666223 [ 1901 ] {} <Trace> DynamicQueryHandler: Request URI: /?allow_experimental_live_view=1&query=WATCH%20test.lv%20EVENTS
    ...
    2021.03.12 23:45:34.119465 [ 35492 ] {55f2c8ec-df9f-4e97-9acc-385ed5b5fde2} <Error> executeQuery: Code: 241, e.displayText() = DB::Exception: Memory limit (for user) exceeded: would use 153.99 MiB (attempt to allocate chunk of 4194729 bytes), maximum: 150.00 MiB (version 21.4.1.6239) (from [::1]:43910) (in query: INSERT INTO test.mt VALUES ), Stack trace (when copying this message, always include the lines below):
    ...

Hung check:

    elapsed:              597.835824299
    is_cancelled:         0
    query:                WATCH test.lv EVENTS
    thread_ids:           [1901]

gdb:

    Thread 133 (Thread 0x7f26ac95b700 (LWP 1901)):
    0  0x00007f2793d447b1 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/x86_64-linux-gnu/libpthread.so.0
    1  0x0000000008cbd5c5 in __tsan::call_pthread_cancel_with_cleanup(int (*)(void*, void*, void*), void*, void*, void*, void (*)(void*), void*) ()
    2  0x0000000008c4f134 in cond_wait(__tsan::ThreadState*, unsigned long, __tsan::ScopedInterceptor*, int (*)(void*, void*, void*), void*, void*, void*) ()
    3  0x0000000008c4f339 in pthread_cond_timedwait ()
    4  0x000000001831c8b6 in std::__1::__libcpp_condvar_timedwait (__cv=0x7b5801053520, __m=0x189, __ts=0x7f26ac9132b8) at ../contrib/libcxx/include/__threading_support:442
    5  std::__1::condition_variable::__do_timed_wait (this=0x7b5801053520, lk=..., tp=...) at ../contrib/libcxx/src/condition_variable.cpp:74
    6  0x00000000134fe7f2 in std::__1::condition_variable::wait_for<long long, std::__1::ratio<1l, 1000000l> > (this=this@entry=0x7b5801053520, __lk=..., __d=...) at ../contrib/libcxx/include/__mutex_base:462
    7  0x00000000134fe2c9 in DB::LiveViewEventsBlockInputStream::tryReadImpl (this=this@entry=0x7b5c0070ff98, blocking=false) at ../src/Storages/LiveView/LiveViewEventsBlockInputStream.h:180
    8  0x00000000134fd6e4 in DB::LiveViewEventsBlockInputStream::readImpl (this=0x189) at ../src/Storages/LiveView/LiveViewEventsBlockInputStream.h:115
    9  0x0000000012285593 in DB::IBlockInputStream::read (this=0x7b5c0070ff98) at ../src/DataStreams/IBlockInputStream.cpp:58
    10 0x00000000122afc7e in DB::copyDataImpl<std::__1::function<bool ()> const&, std::__1::function<void (DB::Block const&)> const&>(DB::IBlockInputStream&, DB::IBlockOutputStream&, std::__1::function<bool ()> const&, std::__1::function<void (DB::Block const&)> const&) (from=..., to=..., is_cancelled=..., progress=...) at ../src/DataStreams/copyData.cpp:26
    11 0x00000000122af8e1 in DB::copyData(DB::IBlockInputStream&, DB::IBlockOutputStream&, std::__1::function<bool ()> const&, std::__1::function<void (DB::Block const&)> const&) (from=..., to=..., is_cancelled=..., progress=...) at ../src/DataStreams/copyData.cpp:73
    12 0x0000000012cfc5e2 in DB::executeQuery(DB::ReadBuffer&, DB::WriteBuffer&, bool, DB::Context&, std::__1::function<void (std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)>) (istr=..., ostr=..., allow_into_outfile=false, context=..., set_result_details=...) at ../src/Interpreters/executeQuery.cpp:1033
    13 0x000000001357941d in DB::HTTPHandler::processQuery (this=this@entry=0x7b1c006f41b0, context=..., request=..., params=..., response=..., used_output=..., query_scope=...) at ../src/Server/HTTPHandler.cpp:772
    14 0x000000001357c507 in DB::HTTPHandler::handleRequest (this=<optimized out>, request=..., response=...) at ../src/Server/HTTPHandler.cpp:910
    15 0x00000000135f3081 in DB::HTTPServerConnection::run (this=<optimized out>) at ../src/Server/HTTP/HTTPServerConnection.cpp:48
    16 0x00000000161f9e73 in Poco::Net::TCPServerConnection::start (this=0x7b8c01554000) at ../contrib/poco/Net/src/TCPServerConnection.cpp:43
    17 0x00000000161fa59f in Poco::Net::TCPServerDispatcher::run (this=<optimized out>) at ../contrib/poco/Net/src/TCPServerDispatcher.cpp:113
    18 0x0000000016361732 in Poco::PooledThread::run (this=<optimized out>) at ../contrib/poco/Foundation/src/ThreadPool.cpp:199
    19 0x000000001635fcd0 in Poco::(anonymous namespace)::RunnableHolder::run (this=<optimized out>) at ../contrib/poco/Foundation/src/Thread.cpp:55
    20 0x000000001635e4d8 in Poco::ThreadImpl::runnableEntry (pThread=0x7b5400082538) at ../contrib/poco/Foundation/src/Thread_POSIX.cpp:345
    21 0x0000000008c4e36d in __tsan_thread_start_func ()
    22 0x00007f2793d3d609 in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
    23 0x00007f2793c64293 in clone () from /lib/x86_64-linux-gnu/libc.so.6

Cc: @vzakaznikov
2021-03-13 11:32:55 +03:00
.github
base Merge pull request #19257 from nikitamikhaylov/geometry_functions 2021-03-12 17:05:24 +03:00
benchmark
cmake Merge pull request #21597 from qoega/fixes-clang-12-cmake-3.19 2021-03-11 23:45:53 +03:00
contrib Merge pull request #21597 from qoega/fixes-clang-12-cmake-3.19 2021-03-11 23:45:53 +03:00
debian
docker Update Dockerfile 2021-03-12 18:26:35 +03:00
docs Merge pull request #21391 from ka1bi4/romanzhukov-DOCSUP-7100-avg 2021-03-12 19:48:01 +03:00
programs Merge pull request #21494 from ucasFL/format 2021-03-12 14:31:58 +03:00
src Merge pull request #21658 from vdimir/fix-joins_in_memory 2021-03-12 22:48:04 +03:00
tests Fix hang check for 00966_live_view_watch_events_http 2021-03-13 11:32:55 +03:00
utils Update version_date.tsv after release 21.3.2.5 2021-03-12 18:08:46 +03:00
website Update fuzzing-clickhouse.md 2021-03-12 22:38:43 +03:00
.arcignore
.clang-format
.clang-tidy
.editorconfig
.gitattributes
.gitignore
.gitmodules
.potato.yml
.pylintrc
.vimrc
.yamllint
AUTHORS
CHANGELOG.md Update CHANGELOG.md 2021-03-12 11:41:20 +03:00
CMakeLists.txt
CODE_OF_CONDUCT.md
CONTRIBUTING.md
docker-compose.yml
format_sources
LICENSE
PreLoad.cmake
README.md
release
SECURITY.md
uncrustify.cfg
ya.make

ClickHouse — open source distributed column-oriented DBMS

ClickHouse® is an open-source column-oriented database management system that allows generating analytical data reports in real time.

  • Official website has quick high-level overview of ClickHouse on main page.
  • Tutorial shows how to set up and query small ClickHouse cluster.
  • Documentation provides more in-depth information.
  • YouTube channel has a lot of content about ClickHouse in video format.
  • Slack and Telegram allow to chat with ClickHouse users in real-time.
  • Blog contains various ClickHouse-related articles, as well as announcements and reports about events.
  • Code Browser with syntax highlight and navigation.
  • Contacts can help to get your questions answered if there are any.
  • You can also fill this form to meet Yandex ClickHouse team in person.