Skip to content
Permalink
Browse files
fix: filter limit constant (#787)
* fix: filter limit constant

Should 20 KB not 20 MB

* fix test
  • Loading branch information
igorbernstein2 committed May 7, 2021
1 parent 83e0e8c commit 04f8ad463d1fa9efe0ab941ee5f3d0794baed814
@@ -43,8 +43,8 @@
public final class Query implements Serializable {
private static final long serialVersionUID = -316972783499434755L;

// bigtable can server the largest filter size of 20MB.
private static final int MAX_FILTER_SIZE = 20 * 1024 * 1024;
// bigtable can server the largest filter size of 20KB.
private static final int MAX_FILTER_SIZE = 20 * 1024;

private final String tableId;
private transient ReadRowsRequest.Builder builder = ReadRowsRequest.newBuilder();
@@ -170,7 +170,7 @@ public Query filter(Filters.Filter filter) {

RowFilter rowFilter = filter.toProto();
Preconditions.checkArgument(
rowFilter.getSerializedSize() < MAX_FILTER_SIZE, "filter size can't be more than 20MB");
rowFilter.getSerializedSize() < MAX_FILTER_SIZE, "filter size can't be more than 20KB");

builder.setFilter(rowFilter);
return this;
@@ -123,15 +123,15 @@ public void filterTestWithExceptions() {
assertThat(actualException).isInstanceOf(NullPointerException.class);

actualException = null;
int maxFilterSize = 20 * 1024 * 1024;
int maxFilterSize = 20 * 1024;
ByteString largeValue = ByteString.copyFrom(new byte[maxFilterSize + 1]);

try {
Query.create(TABLE_ID).filter(FILTERS.value().exactMatch(largeValue));
} catch (Exception ex) {
actualException = ex;
}
assertThat(actualException).hasMessageThat().contains("filter size can't be more than 20MB");
assertThat(actualException).hasMessageThat().contains("filter size can't be more than 20KB");
}

@Test

0 comments on commit 04f8ad4

Please sign in to comment.