Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,6 @@
*/
public final class SplitParser {

public static final int CONDITIONS_UPPER_LIMIT = 50;
private static final Logger _log = LoggerFactory.getLogger(SplitParser.class);

private final SegmentSynchronizationTask _segmentSynchronizationTask;
Expand All @@ -69,12 +68,6 @@ private ParsedSplit parseWithoutExceptionHandling(Split split) {
return null;
}

if (split.conditions.size() > CONDITIONS_UPPER_LIMIT) {
_log.warn(String.format("Dropping Split name=%s due to large number of conditions(%d)",
split.name, split.conditions.size()));
return null;
}

List<ParsedCondition> parsedConditionList = Lists.newArrayList();

for (Condition condition : split.conditions) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
import io.split.grammar.Treatments;
import io.split.telemetry.storage.InMemoryTelemetryStorage;
import io.split.telemetry.storage.TelemetryStorage;
import org.junit.Assert;
import org.junit.Test;
import org.mockito.Mockito;

Expand All @@ -38,7 +39,6 @@

import static org.hamcrest.Matchers.equalTo;
import static org.hamcrest.Matchers.is;
import static org.hamcrest.Matchers.nullValue;
import static org.junit.Assert.assertThat;

/**
Expand All @@ -50,6 +50,7 @@ public class SplitParserTest {

public static final String EMPLOYEES = "employees";
public static final String SALES_PEOPLE = "salespeople";
public static final int CONDITIONS_UPPER_LIMIT = 50;
private static final TelemetryStorage TELEMETRY_STORAGE = Mockito.mock(InMemoryTelemetryStorage.class);

@Test
Expand Down Expand Up @@ -176,7 +177,7 @@ public void works_for_two_conditions() {
}

@Test
public void fails_for_long_conditions() {
public void success_for_long_conditions() {
SDKReadinessGates gates = new SDKReadinessGates();
SegmentCache segmentCache = new SegmentCacheInMemoryImpl();
segmentCache.updateSegment(EMPLOYEES, Stream.of("adil", "pato", "trevor").collect(Collectors.toList()), new ArrayList<>());
Expand All @@ -193,14 +194,14 @@ public void fails_for_long_conditions() {

List<Condition> conditions = Lists.newArrayList();
List<Partition> p1 = Lists.newArrayList(ConditionsTestUtil.partition("on", 100));
for (int i = 0 ; i < SplitParser.CONDITIONS_UPPER_LIMIT+1 ; i++) {
for (int i = 0 ; i < CONDITIONS_UPPER_LIMIT+1 ; i++) {
Condition c = ConditionsTestUtil.and(employeesMatcher, p1);
conditions.add(c);
}

Split split = makeSplit("first.name", 123, conditions, 1);

assertThat(parser.parse(split), is(nullValue()));
Assert.assertNotNull(parser.parse(split));
}


Expand Down