Convert ProgressBar into a struct

This commit is contained in:
Amesaru 2021-05-11 17:14:57 +03:00
parent c767b18945
commit 6dd475cc76
4 changed files with 16 additions and 81 deletions

View File

@ -534,7 +534,7 @@ private:
if (!is_interactive)
{
progress_bar.setNeedRenderProgress(config().getBool("progress", false));
progress_bar.need_render_progress = config().getBool("progress", false);
echo_queries = config().getBool("echo", false);
ignore_error = config().getBool("ignore-error", false);
}
@ -1541,9 +1541,9 @@ private:
watch.restart();
processed_rows = 0;
progress.reset();
progress_bar.setShowProgressBar(false);
progress_bar.setWrittenProgressChars(0);
progress_bar.setWrittenFirstBlock(false);
progress_bar.show_progress_bar = false;
progress_bar.written_progress_chars = 0;
progress_bar.written_first_block = false;;
{
/// Temporarily apply query settings to context.
@ -2143,7 +2143,7 @@ private:
current_format = "Vertical";
/// It is not clear how to write progress with parallel formatting. It may increase code complexity significantly.
if (!progress_bar.getNeedRenderProgress())
if (!progress_bar.need_render_progress)
block_out_stream = context->getOutputStreamParallelIfPossible(current_format, *out_buf, block);
else
block_out_stream = context->getOutputStream(current_format, *out_buf, block);
@ -2202,17 +2202,17 @@ private:
if (block.rows() == 0 || (query_fuzzer_runs != 0 && processed_rows >= 100))
return;
if (progress_bar.getNeedRenderProgress())
if (progress_bar.need_render_progress)
progress_bar.clearProgress();
block_out_stream->write(block);
progress_bar.setWrittenFirstBlock(true);
progress_bar.written_first_block = true;
/// Received data block is immediately displayed to the user.
block_out_stream->flush();
/// Restore progress bar after data block.
if (progress_bar.getNeedRenderProgress())
if (progress_bar.need_render_progress)
progress_bar.writeProgress(progress, watch);
}
@ -2293,7 +2293,7 @@ private:
resetOutput();
if (is_interactive && !progress_bar.getWrittenFirstBlock())
if (is_interactive && !progress_bar.written_first_block)
{
progress_bar.clearProgress();
std::cout << "Ok." << std::endl;

View File

@ -389,9 +389,9 @@ void LocalServer::processQueries()
CurrentThread::QueryScope query_scope_holder(context);
///Set progress show
progress_bar.setNeedRenderProgress(config().getBool("progress", false));
progress_bar.need_render_progress = config().getBool("progress", false);
if (progress_bar.getNeedRenderProgress())
if (progress_bar.need_render_progress)
{
context->setProgressCallback([&](const Progress & value)
{
@ -412,9 +412,9 @@ void LocalServer::processQueries()
{
watch.restart();
progress.reset();
progress_bar.setShowProgressBar(false);
progress_bar.setWrittenProgressChars(0);
progress_bar.setWrittenFirstBlock(false);
progress_bar.show_progress_bar = false;
progress_bar.written_progress_chars = 0;
progress_bar.written_first_block = false;;
ReadBufferFromString read_buf(query);

View File

@ -6,55 +6,6 @@
namespace DB
{
bool ProgressBar::getNeedRenderProgress() const
{
return need_render_progress;
}
bool ProgressBar::getShowProgressBar() const
{
return show_progress_bar;
}
size_t ProgressBar::getWrittenProgressChars() const
{
return written_progress_chars;
}
bool ProgressBar::getWrittenFirstBlock() const
{
return written_first_block;
}
bool ProgressBar::getClearProgress() const
{
return clear_progress;
}
void ProgressBar::setNeedRenderProgress(bool needRenderProgress)
{
need_render_progress = needRenderProgress;
}
void ProgressBar::setShowProgressBar(bool showProgressBar)
{
show_progress_bar = showProgressBar;
}
void ProgressBar::setWrittenProgressChars(size_t writtenProgressChars)
{
written_progress_chars = writtenProgressChars;
}
void ProgressBar::setWrittenFirstBlock(bool writtenFirstBlock)
{
written_first_block = writtenFirstBlock;
}
void ProgressBar::setClearProgress(bool clearProgress)
{
clear_progress = clearProgress;
}
bool ProgressBar::updateProgress(Progress & progress, const Progress & value)
{

View File

@ -9,7 +9,7 @@
namespace DB
{
class ProgressBar
struct ProgressBar
{
public:
@ -17,24 +17,8 @@ public:
void writeProgress(const Progress & progress, const Stopwatch & watch);
void clearProgress();
///Required Getters
bool getNeedRenderProgress() const;
bool getShowProgressBar() const;
size_t getWrittenProgressChars() const;
bool getWrittenFirstBlock() const;
bool getClearProgress() const;
///Required Setters
void setNeedRenderProgress(bool needRenderProgress);
void setShowProgressBar(bool showProgressBar);
void setWrittenProgressChars(size_t writtenProgressChars);
void setWrittenFirstBlock(bool writtenFirstBlock);
void setClearProgress(bool clearProgress);
private:
/// The server periodically sends information about how much data was read since last time.
bool need_render_progress = false;
/// Render query execution progress.
bool show_progress_bar = false;
size_t written_progress_chars = 0;