Currently the QueryService-based TableClient always returns false from DataQueryResult.isTruncated() (https://github.com/ydb-platform/ydb-java-sdk/blob/master/query/src/main/java/tech/ydb/query/impl/TableClientImpl.java#L118).
And to prevent from reading way too much data, the users now have to always remember to set a LIMIT in their queries, which is hard.
I suggest to add an explicit "row limit" setting on TableClient.Builder, which will enforce an application-dependent max ResultSet size => users will get DataQueryResult.isTruncated() == true when that limit is exceeded. Also, with an explicit setting, the QueryService-based TableClient can also stop streaming the result set data as soon as it reaches the limit, preventing resource waste.