Uploaded image for project: 'Nuxeo Platform'
  1. Nuxeo Platform
  2. NXP-22808

Upgrade ES from 2.3.5 to 5.6.1 for elasticsearch-core module



    • Type: New Feature
    • Status: Resolved
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 9.3
    • Component/s: Elasticsearch


      This is the first step to ES 5.x migration, try to upgrade the ES version to 5.6 and keep exisiting code with transport client protocol.
      The goal is:

      • Check embedded mode for unit test
      • Have UT pass on elasticsearch-core with 5.6.0 (5.6.0-SNAPSHOT until 5.6.0 is released), in r&d branch the status is (run: 192, Failures: 44, Errors: 1):
        • Adapt assertion on TestAggregates and TestNxqlConvertion to match the new query format (easy)
        • Fix select field clause because now fields are returned inside the _source TestCompareQueryAndFetch (easy)
        • Fix deletion not propagated (shouldUnIndexSubTree)
        • Fix RestEsDocumentsTest
      • Complete the list of necessary mapping change:
        • settings: can not contain anymore index directive (default shard and replcation)
        • settings: does not support anymore analyzer alias (removing fulltext alias)
        • mapping: type multi_field must be rewritten to type keyword or text
        • mapping: type string must be rewritten to keyword (not_analyzed) or text (analyzed)
        • mapping: not_analyzed is not supported type should be keyword
        • mapping: _all and include_in_all will be deprecated see NXP-23059
        • search: searching using boolean value [1] is deprecated, please use [true] or [false]
      • Complete the list of regression:
        • mapping: large term > 32k are not anymore supported this is not a pb
        • mapping: field using to sort or aggregate must be explicitely define as fielddata=true using a dynamic template and put string as keyword do the trick
        • embedded elasticsearch is not supported: -> what to do with Nuxeo production instance with ES embedded ?
        • embedded elasticsearch sometime don't terminate properly (following UT fails to bind to 9200)
      • Lib incompatibility
        • make sure that h2 backend extension works with lucene 6.6.0 instead of 5.5.0
        • TransportClient and High level rest client rely on elasticsearch jar that depends on log4j2 mixing log4j 1 & 2 is not good (NXP-23061)
        • Shield does not exists anymore for now this client is removed (See NXP-23048)


          Issue Links



              • Votes:
                0 Vote for this issue
                4 Start watching this issue


                • Created:

                  Time Tracking

                  Original Estimate - Not Specified
                  Not Specified
                  Remaining Estimate - 0 minutes
                  Time Spent - 1 day, 5 hours
                  1d 5h