@@ -13,6 +13,7 @@ public class ExecuteQuerySettings extends BaseRequestSettings {
13
13
private final boolean concurrentResultSets ;
14
14
private final String resourcePool ;
15
15
private final GrpcFlowControl flowControl ;
16
+ private final long partBytesLimit ;
16
17
17
18
private ExecuteQuerySettings (Builder builder ) {
18
19
super (builder );
@@ -21,6 +22,7 @@ private ExecuteQuerySettings(Builder builder) {
21
22
this .concurrentResultSets = builder .concurrentResultSets ;
22
23
this .resourcePool = builder .resourcePool ;
23
24
this .flowControl = builder .flowControl ;
25
+ this .partBytesLimit = builder .partBytesLimit ;
24
26
}
25
27
26
28
public QueryExecMode getExecMode () {
@@ -47,6 +49,10 @@ public GrpcFlowControl getGrpcFlowControl() {
47
49
return flowControl ;
48
50
}
49
51
52
+ public long getPartBytesLimit () {
53
+ return partBytesLimit ;
54
+ }
55
+
50
56
public static Builder newBuilder () {
51
57
return new Builder ();
52
58
}
@@ -57,6 +63,7 @@ public static class Builder extends BaseBuilder<Builder> {
57
63
private boolean concurrentResultSets = false ;
58
64
private String resourcePool = null ;
59
65
private GrpcFlowControl flowControl = null ;
66
+ private long partBytesLimit = -1 ;
60
67
61
68
public Builder withExecMode (QueryExecMode mode ) {
62
69
this .execMode = mode ;
@@ -92,6 +99,16 @@ public Builder withGrpcFlowControl(GrpcFlowControl ctrl) {
92
99
return this ;
93
100
}
94
101
102
+ /**
103
+ * Allows to set size limitation (in bytes) for one result part
104
+ * @param limit maximum length if one result set part
105
+ * @return builder
106
+ */
107
+ public Builder withPartBytesLimit (long limit ) {
108
+ this .partBytesLimit = limit ;
109
+ return this ;
110
+ }
111
+
95
112
@ Override
96
113
public ExecuteQuerySettings build () {
97
114
return new ExecuteQuerySettings (this );
0 commit comments