translate / pootle

Online translation tool
http://pootle.translatehouse.org
GNU General Public License v3.0
1.49k stars 285 forks source link

ElasticSearch backend not working with ES7.x #6901

Open dpaleino opened 4 years ago

dpaleino commented 4 years ago

Hello, I have a project which is being translated into two languages (all others are just to one language), and today I installed ES to try implementing a translation memory. ES is now at version 7.x, and I know the docs say it's tested with 5.x. Unfortunately, 6.x introduced backwards-incompatible changes; it'd be nice if Pootle supported the latest versions of ES.

Unfortunately, I just discovered ES tonight, so I'm not really able to provide a patch.

Steps to reproduce:

$ pootle update_tmserver

Results (Expected/Actual):

elasticsearch.helpers.BulkIndexError: (u'28 document(s) failed to index.', [{u'index': {u'status': 400, u'_type': u'it', u'_index': u'translations', u'error': {u'reason': u'Rejecting mapping update to > [translations] as the final mapping would have more than 1 type: [scn, it]' [...]

The relevant line, found above and in the ES logs, is the final one in this snippet:

[2019-08-30T22:19:56,770][DEBUG][o.e.a.b.TransportShardBulkAction] [pitre] [translations][0] failed to execute bulk item (index) index {[translations][it][69372], source[{"username": "david", "target": "Prima della nascita\n• Un bambino inizia a reagire ai suoni mentre l'udito si sviluppa nell'utero.\n• Anche prima della nascita, un bambino impara a riconoscere i suoni e le voci presenti nei dintorni della madre.\n• Il bambino riconosce anche il ritmo del linguaggio prima che nasca.\n• La ricerca mostra che il bambino si calma ascoltando la mamma parlare e cantare.", "email_md5": "997f8f01ae78e73e5d2f81e7bbfb94ed", "project": "MELT Parents Leaflet", "source": "Before birth \n• A child starts to react to sounds as its hearing develops in the womb.\n• Even before birth a child learns to recognise the sounds and voices that are present in its mother's surroundings.\n• The child also picks up the rhythm of language before it is born.\n• Research shows that the child is calmed by hearing its mother talk and sing.", "iso_submitted_on": "2018-06-27T20:53:04.987928+00:00", "display_submitted_on": "2018-06-27 22:53:04.987928+02:00", "path": "/it/melt/sviluppo_upto4.po", "fullname": "David Paleino", "revision": 144}]} java.lang.IllegalArgumentException: Rejecting mapping update to [translations] as the final mapping would have more than 1 type: [scn, it]

Environment

Pootle 2.8.2 (Django 1.10.8, Translate Toolkit 2.2.5)

# apt-cache policy elasticsearch | grep Installed Installed: 7.3.1