mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-17 21:24:28 +00:00
Code cleanup + comments.
This commit is contained in:
parent
bf5190cd34
commit
6ba40c475a
@ -87,10 +87,7 @@ bool ReadIndirectBufferFromRemoteFS<T>::nextImpl()
|
|||||||
{
|
{
|
||||||
/// Find first available buffer that fits to given offset.
|
/// Find first available buffer that fits to given offset.
|
||||||
if (!current_buf)
|
if (!current_buf)
|
||||||
{
|
|
||||||
current_buf = initialize();
|
current_buf = initialize();
|
||||||
pos = working_buffer.begin();
|
|
||||||
}
|
|
||||||
|
|
||||||
/// If current buffer has remaining data - use it.
|
/// If current buffer has remaining data - use it.
|
||||||
if (current_buf)
|
if (current_buf)
|
||||||
@ -115,10 +112,14 @@ bool ReadIndirectBufferFromRemoteFS<T>::nextImpl()
|
|||||||
template <typename T>
|
template <typename T>
|
||||||
bool ReadIndirectBufferFromRemoteFS<T>::nextAndShiftPosition()
|
bool ReadIndirectBufferFromRemoteFS<T>::nextAndShiftPosition()
|
||||||
{
|
{
|
||||||
|
/// Transfer current position and working_buffer to actual ReadBuffer
|
||||||
swap(*current_buf);
|
swap(*current_buf);
|
||||||
|
/// Position and working_buffer will be updated in next() call
|
||||||
auto result = current_buf->next();
|
auto result = current_buf->next();
|
||||||
|
/// and assigned to current buffer.
|
||||||
swap(*current_buf);
|
swap(*current_buf);
|
||||||
|
|
||||||
|
/// absolute position is shifted by a data size that was read in next() call above.
|
||||||
if (result)
|
if (result)
|
||||||
absolute_position += working_buffer.size();
|
absolute_position += working_buffer.size();
|
||||||
|
|
||||||
|
@ -320,6 +320,7 @@ void DiskS3::startup()
|
|||||||
{
|
{
|
||||||
auto settings = current_settings.get();
|
auto settings = current_settings.get();
|
||||||
|
|
||||||
|
/// Need to be enabled if it was disabled during shutdown() call.
|
||||||
settings->client->EnableRequestProcessing();
|
settings->client->EnableRequestProcessing();
|
||||||
|
|
||||||
if (!settings->send_metadata)
|
if (!settings->send_metadata)
|
||||||
|
@ -91,18 +91,15 @@ bool ReadBufferFromS3::nextImpl()
|
|||||||
|
|
||||||
off_t ReadBufferFromS3::seek(off_t offset_, int whence)
|
off_t ReadBufferFromS3::seek(off_t offset_, int whence)
|
||||||
{
|
{
|
||||||
|
if (impl)
|
||||||
|
throw Exception("Seek is allowed only before first read attempt from the buffer.", ErrorCodes::CANNOT_SEEK_THROUGH_FILE);
|
||||||
|
|
||||||
if (whence != SEEK_SET)
|
if (whence != SEEK_SET)
|
||||||
throw Exception("Only SEEK_SET mode is allowed.", ErrorCodes::CANNOT_SEEK_THROUGH_FILE);
|
throw Exception("Only SEEK_SET mode is allowed.", ErrorCodes::CANNOT_SEEK_THROUGH_FILE);
|
||||||
|
|
||||||
if (offset_ < 0)
|
if (offset_ < 0)
|
||||||
throw Exception("Seek position is out of bounds. Offset: " + std::to_string(offset_), ErrorCodes::SEEK_POSITION_OUT_OF_BOUND);
|
throw Exception("Seek position is out of bounds. Offset: " + std::to_string(offset_), ErrorCodes::SEEK_POSITION_OUT_OF_BOUND);
|
||||||
|
|
||||||
if (impl)
|
|
||||||
{
|
|
||||||
impl.reset();
|
|
||||||
pos = working_buffer.end();
|
|
||||||
}
|
|
||||||
|
|
||||||
offset = offset_;
|
offset = offset_;
|
||||||
|
|
||||||
return offset;
|
return offset;
|
||||||
|
Loading…
Reference in New Issue
Block a user