@@ -40,11 +40,11 @@ class TScriptFinalizerActor : public TActorBootstrapped<TScriptFinalizerActor> {
40
40
void CompressScriptArtifacts () const {
41
41
auto & description = Request->Get ()->Description ;
42
42
43
- bool truncated = false ;
43
+ TString astTruncateDescription ;
44
44
if (size_t planSize = description.QueryPlan .value_or (" " ).size (); description.QueryAst && description.QueryAst ->size () + planSize > MAX_ARTIFACTS_SIZE_BYTES) {
45
+ astTruncateDescription = TStringBuilder () << " Query artifacts size is " << description.QueryAst ->size () + planSize << " bytes (plan + ast), that is larger than allowed limit " << MAX_ARTIFACTS_SIZE_BYTES << " bytes, ast was truncated" ;
45
46
size_t toRemove = std::min (description.QueryAst ->size () + planSize - MAX_ARTIFACTS_SIZE_BYTES, description.QueryAst ->size ());
46
47
description.QueryAst = TruncateString (*description.QueryAst , description.QueryAst ->size () - toRemove);
47
- truncated = true ;
48
48
}
49
49
50
50
auto ast = description.QueryAst ;
@@ -55,13 +55,13 @@ class TScriptFinalizerActor : public TActorBootstrapped<TScriptFinalizerActor> {
55
55
}
56
56
57
57
if (description.QueryAst && description.QueryAst ->size () > NDataShard::NLimits::MaxWriteValueSize) {
58
+ astTruncateDescription = TStringBuilder () << " Query ast size is " << description.QueryAst ->size () << " bytes, that is larger than allowed limit " << NDataShard::NLimits::MaxWriteValueSize << " bytes, ast was truncated" ;
58
59
description.QueryAst = TruncateString (*ast, NDataShard::NLimits::MaxWriteValueSize - 1_KB);
59
60
description.QueryAstCompressionMethod = std::nullopt;
60
- truncated = true ;
61
61
}
62
62
63
- if (truncated ) {
64
- NYql::TIssue astTruncatedIssue (" Query ast was truncated " );
63
+ if (astTruncateDescription ) {
64
+ NYql::TIssue astTruncatedIssue (astTruncateDescription );
65
65
astTruncatedIssue.SetCode (NYql::DEFAULT_ERROR, NYql::TSeverityIds::S_INFO);
66
66
description.Issues .AddIssue (astTruncatedIssue);
67
67
}
0 commit comments