elasticsearch-perl icon indicating copy to clipboard operation
elasticsearch-perl copied to clipboard

Update API.pm for ES 7.0 bulk compatibility

Open danisowa opened this issue 6 years ago • 7 comments

remove type from bulk.required to be compatible to ES 7.0

danisowa avatar Apr 16 '19 10:04 danisowa

@danisowa I'm the new maintainer of this project and I'm working on 7.x release. I just released 6.80_1 a dev version updated to Elasticsearch 6.8.7. I'll update you when 7.x will be ready. Thanks!

ezimuel avatar Mar 11 '20 21:03 ezimuel

@danisowa I released elasticsearch-perl 7.30 dev1 supporting all the APIs of Elasticsearch 7.30, included the bulk compatibility that you mentioned in the PR. Can you test it? Thanks!

ezimuel avatar Aug 10 '20 09:08 ezimuel

Thanks for releasing. I've just tested the 7.30 dev1 release. Bulk import is working fine now. But now i got few other things that are broken. parameter "scroll_in_qs" seems to be not supported any longer also data structure of $scroll->{total} seems to be changed --> 6.00 i got a hash with {value => 123} now i got directly 123 assigned to total without the value level. Is there any documentation where these breaking changes are documented?

danisowa avatar Sep 09 '20 08:09 danisowa

Since this is a community submitted pull request, a Jenkins build has not been kicked off automatically. Can an Elastic organization member please verify the contents of this patch and then kick off a build manually?

elasticmachine avatar Sep 09 '20 08:09 elasticmachine

@danisowa i removed the parameter scroll_in_qs in Scroll becuase it's deprecated in 7.0.0 (see here) and it's dangerous to use it for long ID. You can use the scroll_id as a body parameter.

Regarding the total field I didn't change it, see here for 7_0 and here for 6_0. Can you give me a snippet of code to reproduce the issue? Thanks!

I need to write down a breaking change document for the 7.30 release. In the meantime, you can read the breaking changes for Elasticsearch (including the APIs).

ezimuel avatar Sep 09 '20 09:09 ezimuel

in 6.0 release this call total=>%{$scroll->{total}}, makes a hash with { total => {value => 123} } in newer releases this is not working because $scroll->{total} is not a hash any longer i have to do this total=>$scroll->{total} and this makes a hash {total => 123}

danisowa avatar Sep 14 '20 10:09 danisowa

@danisowa I found this change in this commit https://github.com/elastic/elasticsearch-perl/commit/d7c95d9fc471178c20a0941394c93de46eaf189f. It seems the API result changed and we fixed with this in 6.80 release. I think it's better to have total as $srcoll->{total} instead of a reference.

ezimuel avatar Sep 15 '20 11:09 ezimuel