You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by "Raphaël Ouazana (JIRA)" <se...@james.apache.org> on 2017/11/23 16:32:00 UTC

[jira] [Created] (JAMES-2236) ElasticSearch should not fail indexing emails with dot in header

Raphaël Ouazana created JAMES-2236:
--------------------------------------

             Summary: ElasticSearch should not fail indexing emails with dot in header
                 Key: JAMES-2236
                 URL: https://issues.apache.org/jira/browse/JAMES-2236
             Project: James Server
          Issue Type: Bug
            Reporter: Raphaël Ouazana


When trying to index such a message, with get the following stacktrace and the message is not indexed:
{quote}org.elasticsearch.index.mapper.MapperParsingException: Field name [x-hostingperte.it-mailscanner] cannot contain '.'
  at org.elasticsearch.index.mapper.object.ObjectMapper$TypeParser.parseProperties(ObjectMapper.java:277)
  at org.elasticsearch.index.mapper.object.ObjectMapper$TypeParser.parseObjectOrDocumentTypeProperties(ObjectMapper.java:222)
  at org.elasticsearch.index.mapper.object.ObjectMapper$TypeParser.parse(ObjectMapper.java:197)
  at org.elasticsearch.index.mapper.object.ObjectMapper$TypeParser.parseProperties(ObjectMapper.java:309)
  at org.elasticsearch.index.mapper.object.ObjectMapper$TypeParser.parseObjectOrDocumentTypeProperties(ObjectMapper.java:222)
  at org.elasticsearch.index.mapper.object.RootObjectMapper$TypeParser.parse(RootObjectMapper.java:139)
  at org.elasticsearch.index.mapper.DocumentMapperParser.parse(DocumentMapperParser.java:118)
  at org.elasticsearch.index.mapper.DocumentMapperParser.parse(DocumentMapperParser.java:99)
  at org.elasticsearch.index.mapper.MapperService.parse(MapperService.java:549)
  at org.elasticsearch.cluster.metadata.MetaDataMappingService$PutMappingExecutor.applyRequest(MetaDataMappingService.java:257)
  at org.elasticsearch.cluster.metadata.MetaDataMappingService$PutMappingExecutor.execute(MetaDataMappingService.java:230)
  at org.elasticsearch.cluster.service.InternalClusterService.runTasksForExecutor(InternalClusterService.java:480)
  at org.elasticsearch.cluster.service.InternalClusterService$UpdateTask.run(InternalClusterService.java:784)
  at   org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.runAndClean(PrioritizedEsThreadPoolExecutor.java:231)
  at org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.run(PrioritizedEsThreadPoolExecutor.java:194)
  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  at java.lang.Thread.run(Thread.java:745){quote}

That's because Elastic Search does not support dots in field names: https://www.elastic.co/guide/en/elasticsearch/reference/2.0/breaking_20_mapping_changes.html#_field_names_may_not_contain_dots



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org