diff --git a/arlas-core/src/main/java/io/arlas/server/core/services/ExploreService.java b/arlas-core/src/main/java/io/arlas/server/core/services/ExploreService.java index b07a34a01..0ea07630d 100644 --- a/arlas-core/src/main/java/io/arlas/server/core/services/ExploreService.java +++ b/arlas-core/src/main/java/io/arlas/server/core/services/ExploreService.java @@ -147,7 +147,8 @@ public void applyFilter(Filter filter, FluidSearchService fluidSearch) throws Ar if (filter.f != null && !filter.f.isEmpty()) { CollectionReference collectionReference = fluidSearch.getCollectionReference(); if (!filterFHasDateQuery(filter, collectionReference) && !StringUtil.isNullOrEmpty(filter.dateformat)) { - throw new BadRequestException("dateformat is specified but no date field is queried in f filter (gt, lt, gte, lte or range operations)"); + filter.dateformat = null; + LOGGER.warn("dateformat is specified but no date field is queried in f filter (gt, lt, gte, lte or range operations)"); } for (MultiValueFilter f : filter.f) { fluidSearch = fluidSearch.filter(f, filter.dateformat, filter.righthand); @@ -169,7 +170,8 @@ public void applyPartitionFilter(List filters, FluidSearchService fluidS if (f.f != null && !f.f.isEmpty()) { CollectionReference collectionReference = fluidSearch.getCollectionReference(); if (!filterFHasDateQuery(f, collectionReference) && !StringUtil.isNullOrEmpty(f.dateformat)) { - throw new BadRequestException("dateformat is specified but no date field is queried in f filter (gt, lt, gte, lte or range operations)"); + filter.dateformat = null; + LOGGER.warn("dateformat is specified but no date field is queried in f filter (gt, lt, gte, lte or range operations)"); } } } diff --git a/arlas-tests/src/test/java/io/arlas/server/tests/rest/explore/AbstractFilteredTest.java b/arlas-tests/src/test/java/io/arlas/server/tests/rest/explore/AbstractFilteredTest.java index 41c5eee0d..d4dc641d4 100644 --- a/arlas-tests/src/test/java/io/arlas/server/tests/rest/explore/AbstractFilteredTest.java +++ b/arlas-tests/src/test/java/io/arlas/server/tests/rest/explore/AbstractFilteredTest.java @@ -2083,14 +2083,6 @@ public void testInvalidFilterParameters() throws Exception { handleInvalidParameters(givenFilterableRequestParams().param("f", request.filter.f.get(0).get(0).toString()) .param("dateformat", request.filter.dateformat).when().get(getUrlPath("geodata")).then()); handleInvalidParameters(header(request.filter)); - - // DATEFORMAT : format set when no date field is queried - request.filter.f = Arrays.asList(new MultiValueFilter<>(new Expression("params.job", OperatorEnum.like, "Architect"))); - request.filter.dateformat = "dd-MM-yyyy"; - handleInvalidParameters(post(request)); - handleInvalidParameters(givenFilterableRequestParams().param("f", request.filter.f.get(0).get(0).toString()) - .param("dateformat", request.filter.dateformat).when().get(getUrlPath("geodata")).then()); - handleInvalidParameters(header(request.filter)); } @Test