2019-11-26 23:46:19 +00:00
|
|
|
#include <Processors/Formats/IInputFormat.h>
|
2019-11-28 23:06:03 +00:00
|
|
|
#include <IO/ReadBuffer.h>
|
2019-11-26 23:46:19 +00:00
|
|
|
|
|
|
|
|
|
|
|
namespace DB
|
|
|
|
{
|
|
|
|
|
|
|
|
namespace ErrorCodes
|
|
|
|
{
|
|
|
|
extern const int LOGICAL_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
IInputFormat::IInputFormat(Block header, ReadBuffer & in_)
|
|
|
|
: ISource(std::move(header)), in(in_)
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
|
|
|
void IInputFormat::resetParser()
|
|
|
|
{
|
|
|
|
if (in.hasPendingData())
|
|
|
|
throw Exception("Unread data in IInputFormat::resetParser. Most likely it's a bug.", ErrorCodes::LOGICAL_ERROR);
|
2019-11-28 16:43:06 +00:00
|
|
|
|
2019-12-03 00:49:05 +00:00
|
|
|
// those are protected attributes from ISource (I didn't want to propagate resetParser up there)
|
2019-11-28 16:43:06 +00:00
|
|
|
finished = false;
|
|
|
|
got_exception = false;
|
|
|
|
|
|
|
|
getPort().getInputPort().reopen();
|
2019-11-26 23:46:19 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
}
|