[ 
https://issues.apache.org/jira/browse/METRON-2168?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16875070#comment-16875070
 ] 

Michael Miklavcic commented on METRON-2168:
-------------------------------------------

Good catch and explanation, [~nickwallen]. Thanks!

> Elasticsearch Updates Not Tested in Integration Test
> ----------------------------------------------------
>
>                 Key: METRON-2168
>                 URL: https://issues.apache.org/jira/browse/METRON-2168
>             Project: Metron
>          Issue Type: Bug
>            Reporter: Nick Allen
>            Assignee: Nick Allen
>            Priority: Major
>         Attachments: test-failure.log
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> The `ElasticsearchUpdateIntegrationTest` is not testing that the 
> `ElasticsearchDao` can update and retrieve values in a manner similar to what 
> would occur in production.
> h3. What?
> Within the Elasticsearch index, the test fails to define the 'guid' field to 
> be of type 'keyword', instead the type is defaulted to 'text'.  In a 
> production setting this mistake would prevent any documents from being found 
> by guid.  Unfortunately, the test passes despite this. The test needs to 
> match the behavior of what a user would experience in production.
> h3. Why? 
> These problems arise because of the way the test is setup.  Instead of 
> directly testing an `ElasticsearchDao` as you might expect this test runs 
> against a `MultiIndexDao` initialized with both an `ElasticseachDao` and an 
> `HBaseDao`. On retrievals the `MultIndexDao` will return the document from 
> whichever index responds first.
> With the current test setup, the underlying `ElasticsearchDao` will never 
> retrieve the document that the test case is expected.  In all cases where the 
> test passes, the document is actually being returned from the `HBaseDao` 
> which is actually just interacting with a mock backend.  The test needs to 
> actually test that we can update and retrieve documents from Elasticsearch.
> h3. Proof?
>  If you alter the test to run against just an `ElasticsearchDao` the test 
> will fail as follows in the attached log file.
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to