@@ -192,7 +192,7 @@ class TTopicSession : public TActorBootstrapped<TTopicSession> {
192192 void DoFiltering (const TVector<ui64>& offsets, const TVector<NKikimr::NMiniKQL::TUnboxedValueVector>& parsedValues);
193193 void SendData (TClientsInfo& info);
194194 void UpdateParser ();
195- void FatalError (const TString& message, const std::unique_ptr<TJsonFilter>* filter = nullptr );
195+ void FatalError (const TString& message, const std::unique_ptr<TJsonFilter>* filter, bool addParserDescription );
196196 void SendDataArrived (TClientsInfo& client);
197197 void StopReadSession ();
198198 TString GetSessionId () const ;
@@ -494,7 +494,7 @@ void TTopicSession::TTopicEventProcessor::operator()(NYdb::NTopic::TSessionClose
494494 LOG_ROW_DISPATCHER_DEBUG (message);
495495 NYql::TIssues issues;
496496 issues.AddIssue (message);
497- Self.FatalError (issues.ToOneLineString ());
497+ Self.FatalError (issues.ToOneLineString (), nullptr , false );
498498}
499499
500500void TTopicSession::TTopicEventProcessor::operator ()(NYdb::NTopic::TReadSessionEvent::TStartPartitionSessionEvent& event) {
@@ -580,7 +580,7 @@ void TTopicSession::DoParsing(bool force) {
580580 const auto & parsedValues = Parser->Parse ();
581581 DoFiltering (Parser->GetOffsets (), parsedValues);
582582 } catch (const std::exception& e) {
583- FatalError (e.what ());
583+ FatalError (e.what (), nullptr , true );
584584 }
585585}
586586
@@ -594,7 +594,7 @@ void TTopicSession::DoFiltering(const TVector<ui64>& offsets, const TVector<NKik
594594 info.Filter ->Push (offsets, RebuildJson (info, parsedValues));
595595 }
596596 } catch (const std::exception& e) {
597- FatalError (e.what (), &info.Filter );
597+ FatalError (e.what (), &info.Filter , false );
598598 }
599599 }
600600
@@ -664,7 +664,7 @@ bool HasJsonColumns(const NYql::NPq::NProto::TDqPqTopicSource& sourceParams) {
664664void TTopicSession::Handle (NFq::TEvRowDispatcher::TEvStartSession::TPtr& ev) {
665665 auto it = Clients.find (ev->Sender );
666666 if (it != Clients.end ()) {
667- FatalError (" Internal error: sender " + ev->Sender .ToString ());
667+ FatalError (" Internal error: sender " + ev->Sender .ToString (), nullptr , false );
668668 return ;
669669 }
670670
@@ -712,11 +712,11 @@ void TTopicSession::Handle(NFq::TEvRowDispatcher::TEvStartSession::TPtr& ev) {
712712 }
713713 }
714714 } catch (const NYql::NPureCalc::TCompileError& e) {
715- FatalError (" Adding new client failed: CompileError: sql: " + e.GetYql () + " , error: " + e.GetIssues ());
715+ FatalError (" Adding new client failed: CompileError: sql: " + e.GetYql () + " , error: " + e.GetIssues (), nullptr , true );
716716 } catch (const yexception &ex) {
717- FatalError (TString{" Adding new client failed: " } + ex.what ());
717+ FatalError (TString{" Adding new client failed: " } + ex.what (), nullptr , true );
718718 } catch (...) {
719- FatalError (" Adding new client failed, " + CurrentExceptionMessage ());
719+ FatalError (" Adding new client failed, " + CurrentExceptionMessage (), nullptr , true );
720720 }
721721 UpdateParser ();
722722 SendStatistic ();
@@ -810,14 +810,14 @@ void TTopicSession::UpdateParser() {
810810 const auto & parserConfig = Config.GetJsonParser ();
811811 Parser = NewJsonParser (names, types, parserConfig.GetBatchSizeBytes (), TDuration::MilliSeconds (parserConfig.GetBatchCreationTimeoutMs ()));
812812 } catch (const NYql::NPureCalc::TCompileError& e) {
813- FatalError (e.GetIssues ());
813+ FatalError (e.GetIssues (), nullptr , true );
814814 }
815815}
816816
817- void TTopicSession::FatalError (const TString& message, const std::unique_ptr<TJsonFilter>* filter) {
817+ void TTopicSession::FatalError (const TString& message, const std::unique_ptr<TJsonFilter>* filter, bool addParserDescription ) {
818818 TStringStream str;
819819 str << message;
820- if (Parser) {
820+ if (Parser && addParserDescription ) {
821821 str << " , parser description:\n " << Parser->GetDescription ();
822822 }
823823 if (filter) {
@@ -868,7 +868,7 @@ void TTopicSession::HandleException(const std::exception& e) {
868868 if (CurrentStateFunc () == &TThis::ErrorState) {
869869 return ;
870870 }
871- FatalError (TString (" Internal error: exception: " ) + e.what ());
871+ FatalError (TString (" Internal error: exception: " ) + e.what (), nullptr , false );
872872}
873873
874874void TTopicSession::SendStatistic () {
0 commit comments