@terascope/elasticsearch-api 5.0.0-dev.4 → 5.0.0-dev.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- import { DataEntity, Logger } from '@terascope/utils';
1
+ import { Logger, DataEntity } from '@terascope/utils';
2
2
  import { Client as OpenClient } from '@terascope/opensearch-client';
3
3
  import { ClientParams, ClientResponse } from '@terascope/types';
4
4
  export interface Config {
@@ -39,7 +39,7 @@ export default function elasticsearchApi(client: OpenClient, logger: Logger, _op
39
39
  mget: (query: ClientParams.MGetParams, fullResponse?: boolean) => Promise<any>;
40
40
  index: (query: ClientParams.IndexParams) => Promise<unknown>;
41
41
  indexWithId: (query: ClientParams.IndexParams) => Promise<unknown>;
42
- isAvailable: (index: string, recordType?: string) => Promise<unknown>;
42
+ isAvailable: (index: string) => Promise<unknown>;
43
43
  create: (query: ClientParams.CreateParams) => Promise<unknown>;
44
44
  update: (query: ClientParams.UpdateParams) => Promise<any>;
45
45
  remove: (query: ClientParams.DeleteParams) => Promise<ClientResponse.DeleteResponse>;
@@ -53,12 +53,13 @@ export default function elasticsearchApi(client: OpenClient, logger: Logger, _op
53
53
  indexCreate: (query: ClientParams.IndicesCreateParams) => Promise<any>;
54
54
  indexRefresh: (query: ClientParams.IndicesRefreshParams) => Promise<any>;
55
55
  indexRecovery: (query: ClientParams.IndicesRefreshParams) => Promise<any>;
56
- indexSetup: (clusterName: string, newIndex: string, migrantIndexName: string, mapping: Record<string, any>, recordType: string, clientName: string, _time?: number) => Promise<boolean>;
56
+ indexSetup: (clusterName: string, newIndex: string, migrantIndexName: string, mapping: Record<string, any>, clientName: string, _time?: number) => Promise<boolean>;
57
57
  verifyClient: () => boolean;
58
58
  validateGeoParameters: (opConfig: Record<string, any>) => void;
59
59
  getClientMetadata: () => import("@terascope/types").ClientMetadata;
60
- isElasticsearch6: () => boolean;
61
60
  isElasticsearch8: () => boolean;
61
+ isOpensearch2: () => boolean;
62
+ isOpensearch3: () => boolean;
62
63
  index_exists: (query: ClientParams.IndicesExistsParams) => Promise<boolean>;
63
64
  index_create: (query: ClientParams.IndicesCreateParams) => Promise<any>;
64
65
  index_refresh: (query: ClientParams.IndicesRefreshParams) => Promise<any>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAGsB,MAAM,EAEN,UAAU,EAEtC,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EACsC,YAAY,EACrD,cAAc,EACjB,MAAM,kBAAkB,CAAC;AAQ1B,MAAM,WAAW,MAAM;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED;;MAEM;AACN,MAAM,WAAW,UAAU;IACvB,MAAM,EAAE,aAAa,CAAC;IAEtB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,UAAU,CAAC;CAC3C;AAED;;MAEM;AACN,MAAM,WAAW,aAAa;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACrC,KAAK,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACpC,MAAM,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACrC,MAAM,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;CACxC;AAED;;MAEM;AACN,MAAM,WAAW,kBAAkB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAID,MAAM,CAAC,OAAO,UAAU,gBAAgB,CACpC,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,EACd,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS;oBAuDnB,YAAY,CAAC,YAAY,KACjC,OAAO,CAAC,cAAc,CAAC,cAAc,GAAG,GAAG,EAAE,CAAC;mBApCrB,YAAY,CAAC,WAAW;iBA0FxB,YAAY,CAAC,SAAS,6BAAyB,OAAO,CAAC,GAAG,CAAC;kBAT5D,YAAY,CAAC,UAAU;mBAkBpB,YAAY,CAAC,WAAW;yBAIpB,YAAY,CAAC,WAAW;yBA2qBxB,MAAM;oBAvqBX,YAAY,CAAC,YAAY;oBAIzB,YAAY,CAAC,YAAY,KAAG,OAAO,CAAC,GAAG,CAAC;oBAQ1D,YAAY,CAAC,YAAY,KACjC,OAAO,CAAC,cAAc,CAAC,cAAc,CAAC;;4BAwGJ,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,MAAM,KAAG,OAAO,CAAC,GAAG,CAAC;qBAoJvD,UAAU,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE;;;2BAgOpD,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,OACxB,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KACzB,YAAY,CAAC,YAAY;yBAzdM,YAAY,CAAC,mBAAmB,KAAG,OAAO,CAAC,OAAO,CAAC;yBAInD,YAAY,CAAC,mBAAmB,KAAG,OAAO,CAAC,GAAG,CAAC;0BAK9C,YAAY,CAAC,oBAAoB,KAAG,OAAO,CAAC,GAAG,CAAC;2BAI/C,YAAY,CAAC,oBAAoB,KAAG,OAAO,CAAC,GAAG,CAAC;8BA28BnE,MAAM,YACT,MAAM,oBACE,MAAM,WACf,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,cAChB,MAAM,UACV,MAAM,KACf,OAAO,CAAC,OAAO,CAAC;;sCAhtBsB,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;;;;;0BA9Q1B,YAAY,CAAC,mBAAmB,KAAG,OAAO,CAAC,OAAO,CAAC;0BAInD,YAAY,CAAC,mBAAmB,KAAG,OAAO,CAAC,GAAG,CAAC;2BAK9C,YAAY,CAAC,oBAAoB,KAAG,OAAO,CAAC,GAAG,CAAC;4BAI/C,YAAY,CAAC,oBAAoB,KAAG,OAAO,CAAC,GAAG,CAAC;;4BA6lBrD,KAAK;EAqevC;AAED,MAAM,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC"}
package/dist/src/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { isTest, TSError, isFatalError, parseError, getBackoffDelay, isRetryableError, get, toNumber, isString, isSimpleObject, castArray, flatten, toBoolean, uniq, random, cloneDeep, DataEntity, isDeepEqual, getTypeOf, isProd } from '@terascope/utils';
1
+ import { isTest, TSError, isFatalError, parseError, getBackoffDelay, isRetryableError, get, toNumber, isString, castArray, flatten, toBoolean, uniq, random, cloneDeep, DataEntity, isDeepEqual, getTypeOf, isProd } from '@terascope/utils';
2
2
  import { ElasticsearchDistribution, } from '@terascope/types';
3
3
  // @ts-expect-error TODO: do we still need this after getting rid of es6?
4
4
  import('setimmediate');
@@ -38,7 +38,6 @@ export default function elasticsearchApi(client, logger, _opConfig) {
38
38
  _eventTime: now,
39
39
  // pass only the record metadata
40
40
  _index: doc._index,
41
- _type: doc._type,
42
41
  _version: doc._version,
43
42
  _seq_no: doc._seq_no,
44
43
  _primary_term: doc._primary_term
@@ -46,22 +45,7 @@ export default function elasticsearchApi(client, logger, _opConfig) {
46
45
  return DataEntity.make(doc._source, metadata);
47
46
  }
48
47
  async function search(query) {
49
- const {
50
- // @ts-expect-error this can be removed when es6 is not supported
51
- _sourceInclude, _source_includes: oldSourIncludes,
52
- // @ts-expect-error
53
- _sourceExclude, _source_excludes: oldSourExcludes, ...safeQuery } = query;
54
- const sourceIncludes = _sourceInclude || oldSourIncludes;
55
- const sourceExcludes = _sourceExclude || oldSourExcludes;
56
- if (sourceIncludes) {
57
- // @ts-expect-error
58
- safeQuery._source_includes = sourceIncludes;
59
- }
60
- if (sourceExcludes) {
61
- // @ts-expect-error
62
- safeQuery._source_excludes = sourceExcludes;
63
- }
64
- const data = await _searchES(safeQuery);
48
+ const data = await _searchES(query);
65
49
  if (config.full_response) {
66
50
  return data;
67
51
  }
@@ -91,7 +75,7 @@ export default function elasticsearchApi(client, logger, _opConfig) {
91
75
  return _makeRequest(client.indices, endpoint, query, 'indices');
92
76
  }
93
77
  async function mget(query, fullResponse = false) {
94
- const results = await _clientRequest('mget', _adjustTypeForEs7(query));
78
+ const results = await _clientRequest('mget', query);
95
79
  if (fullResponse)
96
80
  return results;
97
81
  return results.docs
@@ -106,22 +90,22 @@ export default function elasticsearchApi(client, logger, _opConfig) {
106
90
  return convertDocToDataEntity(records);
107
91
  }
108
92
  async function indexFn(query) {
109
- return _clientRequest('index', _adjustTypeForEs7(query));
93
+ return _clientRequest('index', query);
110
94
  }
111
95
  async function indexWithId(query) {
112
- return _clientRequest('index', _adjustTypeForEs7(query)).then(() => query.body);
96
+ return _clientRequest('index', query).then(() => query.body);
113
97
  }
114
98
  async function create(query) {
115
- return _clientRequest('create', _adjustTypeForEs7(query)).then(() => query.body);
99
+ return _clientRequest('create', query).then(() => query.body);
116
100
  }
117
101
  async function update(query) {
118
102
  // TODO this does not seem right
119
- await _clientRequest('update', _adjustTypeForEs7(query));
103
+ await _clientRequest('update', query);
120
104
  // @ts-expect-error
121
105
  return query.body.doc;
122
106
  }
123
107
  async function remove(query) {
124
- const result = await _clientRequest('delete', _adjustTypeForEs7(query));
108
+ const result = await _clientRequest('delete', query);
125
109
  return result.found;
126
110
  }
127
111
  async function indexExists(query) {
@@ -275,9 +259,6 @@ export default function elasticsearchApi(client, logger, _opConfig) {
275
259
  }
276
260
  return { retry, successful, error: false };
277
261
  }
278
- function getFirstKey(obj) {
279
- return Object.keys(obj)[0];
280
- }
281
262
  /**
282
263
  * @param data {Array<{ action: data }>}
283
264
  * @returns {Promise<number>}
@@ -293,23 +274,15 @@ export default function elasticsearchApi(client, logger, _opConfig) {
293
274
  }
294
275
  throw new Error(`Bulk send record is missing the action property${dbg}`);
295
276
  }
296
- if (!isElasticsearch6()) {
297
- const actionKey = getFirstKey(record.action);
298
- const { _type, ...withoutTypeAction } = record.action[actionKey];
299
- // if data is specified return both
300
- return record.data
301
- ? [{
302
- ...record.action,
303
- [actionKey]: withoutTypeAction
304
- },
305
- record.data]
306
- : [{
307
- ...record.action,
308
- [actionKey]: withoutTypeAction
309
- }];
310
- }
311
277
  // if data is specified return both
312
- return record.data ? [record.action, record.data] : [record.action];
278
+ return record.data
279
+ ? [{
280
+ ...record.action,
281
+ },
282
+ record.data]
283
+ : [{
284
+ ...record.action,
285
+ }];
313
286
  });
314
287
  const response = await _clientRequest('bulk', { body });
315
288
  const results = response.body ? response.body : response;
@@ -552,44 +525,6 @@ export default function elasticsearchApi(client, logger, _opConfig) {
552
525
  waitForClient(() => _performSearch(query), reject);
553
526
  });
554
527
  }
555
- function _adjustTypeForEs7(query) {
556
- if (!isElasticsearch6()) {
557
- if (Array.isArray(query)) {
558
- return _removeTypeFromBulkRequest(query);
559
- }
560
- delete query.type;
561
- }
562
- return query;
563
- }
564
- function _removeTypeFromBulkRequest(query) {
565
- if (isElasticsearch6())
566
- return query;
567
- return query.map((queryItem) => {
568
- if (isSimpleObject(queryItem)) {
569
- // get the metadata and ignore the record
570
- const bulkMetaData = _getBulkMetaData(queryItem);
571
- if (_hasBulkMetaDataProps(bulkMetaData)) {
572
- delete bulkMetaData._type;
573
- }
574
- }
575
- return queryItem;
576
- });
577
- }
578
- // TODO: this is not even being called in bulk calls
579
- function _getBulkMetaData(queryItem) {
580
- // bulk actions are index, create, delete, and update
581
- return queryItem.index
582
- || queryItem.create
583
- || queryItem.delete
584
- || queryItem.update;
585
- }
586
- function _hasBulkMetaDataProps(bulkMetaData) {
587
- return bulkMetaData
588
- && isSimpleObject(bulkMetaData)
589
- && '_index' in bulkMetaData
590
- && '_id' in bulkMetaData
591
- && '_type' in bulkMetaData;
592
- }
593
528
  /**
594
529
  * Wait for the client to be available before resolving,
595
530
  * this will also naturally stagger many in-flight requests
@@ -689,7 +624,7 @@ export default function elasticsearchApi(client, logger, _opConfig) {
689
624
  }
690
625
  };
691
626
  }
692
- async function isAvailable(index, recordType) {
627
+ async function isAvailable(index) {
693
628
  const query = {
694
629
  index,
695
630
  q: '',
@@ -697,12 +632,11 @@ export default function elasticsearchApi(client, logger, _opConfig) {
697
632
  // @ts-expect-error TODO: should be a number, check what its really doing
698
633
  terminate_after: '1',
699
634
  };
700
- const label = recordType ? `for ${recordType}` : index;
701
635
  return new Promise((resolve, reject) => {
702
636
  client
703
637
  .search(query)
704
638
  .then((results) => {
705
- logger.trace(`index ${label} is now available`);
639
+ logger.trace(`index ${index} is now available`);
706
640
  resolve(results);
707
641
  })
708
642
  .catch(() => {
@@ -714,7 +648,7 @@ export default function elasticsearchApi(client, logger, _opConfig) {
714
648
  try {
715
649
  const valid = verifyClient();
716
650
  if (!valid) {
717
- logger.debug(`index ${label} is in an invalid state`);
651
+ logger.debug(`index ${index} is in an invalid state`);
718
652
  return;
719
653
  }
720
654
  }
@@ -733,7 +667,7 @@ export default function elasticsearchApi(client, logger, _opConfig) {
733
667
  })
734
668
  .catch(() => {
735
669
  running = false;
736
- logger.warn(`verifying index ${label} is open`);
670
+ logger.warn(`verifying index ${index} is open`);
737
671
  });
738
672
  }, 200);
739
673
  });
@@ -790,10 +724,6 @@ export default function elasticsearchApi(client, logger, _opConfig) {
790
724
  minorVersion
791
725
  };
792
726
  }
793
- function isElasticsearch6() {
794
- const { distribution, majorVersion } = getClientMetadata();
795
- return distribution === ElasticsearchDistribution.elasticsearch && majorVersion === 6;
796
- }
797
727
  function isElasticsearch8() {
798
728
  const { distribution, majorVersion } = getClientMetadata();
799
729
  return distribution === ElasticsearchDistribution.elasticsearch && majorVersion === 8;
@@ -818,27 +748,9 @@ export default function elasticsearchApi(client, logger, _opConfig) {
818
748
  }
819
749
  delete params.body.template;
820
750
  }
821
- if (!isElasticsearch6()) {
822
- const typeMappings = get(params.body, 'mappings', {});
823
- if (typeMappings.properties) {
824
- defaultParams.includeTypeName = false;
825
- }
826
- else {
827
- defaultParams.includeTypeName = true;
828
- Object.values(typeMappings).forEach((typeMapping) => {
829
- if (typeMapping && typeMapping._all) {
830
- delete typeMapping._all;
831
- }
832
- return '';
833
- });
834
- }
835
- }
836
- if (isElasticsearch8() || isOpensearch2() || isOpensearch3()) {
837
- delete defaultParams.includeTypeName;
838
- }
839
751
  return Object.assign({}, defaultParams, params);
840
752
  }
841
- async function _migrate(index, migrantIndexName, mapping, recordType, clusterName) {
753
+ async function _migrate(index, migrantIndexName, mapping, clusterName) {
842
754
  const reindexQuery = {
843
755
  slices: 4,
844
756
  waitForCompletion: true,
@@ -856,7 +768,7 @@ export default function elasticsearchApi(client, logger, _opConfig) {
856
768
  const [docCount] = await Promise.all([
857
769
  count({ index }),
858
770
  // the empty string is not great, should maybe separate index creation logic
859
- _createIndex(migrantIndexName, '', mapping, recordType, clusterName),
771
+ _createIndex(migrantIndexName, '', mapping, clusterName),
860
772
  ]);
861
773
  await _clientRequest('reindex', reindexQuery);
862
774
  const newDocCount = await count({ index: migrantIndexName });
@@ -882,7 +794,7 @@ export default function elasticsearchApi(client, logger, _opConfig) {
882
794
  throw error;
883
795
  }
884
796
  }
885
- async function _createIndex(index, migrantIndexName, mapping, recordType, clusterName) {
797
+ async function _createIndex(index, migrantIndexName, mapping, clusterName) {
886
798
  const existQuery = { index };
887
799
  const exists = await indexExists(existQuery);
888
800
  if (!exists) {
@@ -892,7 +804,7 @@ export default function elasticsearchApi(client, logger, _opConfig) {
892
804
  body: mapping,
893
805
  };
894
806
  try {
895
- await _sendTemplate(mapping, recordType, clusterName);
807
+ await _sendTemplate(mapping, clusterName);
896
808
  return indexCreate(createQuery);
897
809
  }
898
810
  catch (err) {
@@ -906,7 +818,7 @@ export default function elasticsearchApi(client, logger, _opConfig) {
906
818
  }
907
819
  }
908
820
  try {
909
- await _checkAndUpdateMapping(clusterName, index, migrantIndexName, mapping, recordType);
821
+ await _checkAndUpdateMapping(clusterName, index, migrantIndexName, mapping);
910
822
  }
911
823
  catch (err) {
912
824
  throw new TSError(err, {
@@ -915,16 +827,11 @@ export default function elasticsearchApi(client, logger, _opConfig) {
915
827
  });
916
828
  }
917
829
  }
918
- async function _verifyMapping(query, configMapping, recordType) {
830
+ async function _verifyMapping(query, configMapping) {
919
831
  const params = Object.assign({}, query);
920
- if (!isElasticsearch6()) {
921
- if (recordType) {
922
- params.includeTypeName = true;
923
- }
924
- }
925
832
  try {
926
833
  const mapping = await _clientIndicesRequest('getMapping', params);
927
- return _areSameMappings(configMapping, mapping, recordType);
834
+ return _areSameMappings(configMapping, mapping);
928
835
  }
929
836
  catch (err) {
930
837
  throw new TSError(err, {
@@ -932,37 +839,37 @@ export default function elasticsearchApi(client, logger, _opConfig) {
932
839
  });
933
840
  }
934
841
  }
935
- function _areSameMappings(configMapping, mapping, recordType) {
842
+ function _areSameMappings(configMapping, mapping) {
936
843
  const sysMapping = {};
937
844
  const index = Object.keys(mapping)[0];
938
845
  sysMapping[index] = { mappings: configMapping.mappings };
939
- const { dynamic } = mapping[index].mappings[recordType];
846
+ const { dynamic } = mapping[index].mappings;
940
847
  // elasticsearch for some reason converts false to 'false' for dynamic key
941
848
  if (dynamic !== undefined) {
942
- mapping[index].mappings[recordType].dynamic = toBoolean(dynamic);
849
+ mapping[index].mappings.dynamic = toBoolean(dynamic);
943
850
  }
944
851
  const areEqual = isDeepEqual(mapping, sysMapping);
945
852
  return { areEqual };
946
853
  }
947
- async function _checkAndUpdateMapping(clusterName, index, migrantIndexName, mapping, recordType) {
854
+ async function _checkAndUpdateMapping(clusterName, index, migrantIndexName, mapping) {
948
855
  if (index === migrantIndexName || migrantIndexName === null) {
949
856
  const error = new TSError(`index and migrant index names are the same: ${index}, please update the appropriate package.json version`);
950
857
  return Promise.reject(error);
951
858
  }
952
859
  const query = { index };
953
- const results = await _verifyMapping(query, mapping, recordType);
860
+ const results = await _verifyMapping(query, mapping);
954
861
  if (results.areEqual)
955
862
  return true;
956
863
  // For state and analytics, we will not _migrate, but will post template so that
957
864
  // the next index will have them
958
- if (recordType === 'state' || recordType === 'analytics') {
959
- return _sendTemplate(mapping, recordType, clusterName);
865
+ if (mapping.template) {
866
+ return _sendTemplate(mapping, clusterName);
960
867
  }
961
- return _migrate(index, migrantIndexName, mapping, recordType, clusterName);
868
+ return _migrate(index, migrantIndexName, mapping, clusterName);
962
869
  }
963
- async function _sendTemplate(mapping, recordType, clusterName) {
870
+ async function _sendTemplate(mapping, clusterName) {
964
871
  if (mapping.template) {
965
- const name = `${clusterName}_${recordType}_template`;
872
+ const name = `${clusterName}_template`;
966
873
  // setting template name to reflect current teraslice instance name to help prevent
967
874
  // conflicts with differing versions of teraslice with same elastic db
968
875
  if (!mapping.template.match(clusterName)) {
@@ -973,14 +880,14 @@ export default function elasticsearchApi(client, logger, _opConfig) {
973
880
  // TODO: this seems really silly
974
881
  return Promise.resolve(true);
975
882
  }
976
- async function indexSetup(clusterName, newIndex, migrantIndexName, mapping, recordType, clientName, _time) {
883
+ async function indexSetup(clusterName, newIndex, migrantIndexName, mapping, clientName, _time) {
977
884
  const giveupAfter = Date.now() + (_time || 10000);
978
885
  return new Promise((resolve, reject) => {
979
886
  // TODO: not going to touch this, needs a heavy refactor
980
887
  // this contains the behavior for teraslice to continually wait
981
888
  // until elasticsearch is available before making the store index
982
889
  const attemptToCreateIndex = () => {
983
- _createIndex(newIndex, migrantIndexName, mapping, recordType, clusterName)
890
+ _createIndex(newIndex, migrantIndexName, mapping, clusterName)
984
891
  .then(() => isAvailable(newIndex))
985
892
  .catch((err) => {
986
893
  if (isFatalError(err))
@@ -996,7 +903,7 @@ export default function elasticsearchApi(client, logger, _opConfig) {
996
903
  });
997
904
  logger.error(error);
998
905
  logger.info(`Attempting to connect to elasticsearch: ${clientName}`);
999
- return _createIndex(newIndex, migrantIndexName, mapping, recordType, clusterName)
906
+ return _createIndex(newIndex, migrantIndexName, mapping, clusterName)
1000
907
  .then(() => {
1001
908
  const query = { index: newIndex };
1002
909
  return indexRecovery(query);
@@ -1057,8 +964,9 @@ export default function elasticsearchApi(client, logger, _opConfig) {
1057
964
  verifyClient,
1058
965
  validateGeoParameters,
1059
966
  getClientMetadata,
1060
- isElasticsearch6,
1061
967
  isElasticsearch8,
968
+ isOpensearch2,
969
+ isOpensearch3,
1062
970
  // The APIs below are deprecated and should be removed.
1063
971
  index_exists: indexExists,
1064
972
  index_create: indexCreate,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@terascope/elasticsearch-api",
3
3
  "displayName": "Elasticsearch API",
4
- "version": "5.0.0-dev.4",
4
+ "version": "5.0.0-dev.6",
5
5
  "description": "Elasticsearch client api used across multiple services, handles retries and exponential backoff",
6
6
  "homepage": "https://github.com/terascope/teraslice/tree/master/packages/elasticsearch-api#readme",
7
7
  "bugs": {
@@ -25,26 +25,24 @@
25
25
  "build:watch": "yarn build --watch",
26
26
  "test": "TEST_RESTRAINED_ELASTICSEARCH='true' node ../scripts/bin/ts-scripts test ../elasticsearch-api --",
27
27
  "test:debug": "TEST_RESTRAINED_ELASTICSEARCH='true' node ../scripts/bin/ts-scripts test --debug ../elasticsearch-api --",
28
- "test:elasticsearch6": "TEST_RESTRAINED_ELASTICSEARCH='true' ELASTICSEARCH_VERSION='6.8.6' node ../scripts/bin/ts-scripts test ../elasticsearch-api --",
29
28
  "test:elasticsearch7": "TEST_RESTRAINED_ELASTICSEARCH='true' ELASTICSEARCH_VERSION='7.9.3' node ../scripts/bin/ts-scripts test ../elasticsearch-api --",
30
29
  "test:elasticsearch8": "TEST_RESTRAINED_ELASTICSEARCH='true' ELASTICSEARCH_VERSION='8.1.2' node ../scripts/bin/ts-scripts test ../elasticsearch-api --",
31
- "test:opensearch1": "TEST_RESTRAINED_OPENSEARCH='true' node ../scripts/bin/ts-scripts test --debug ../elasticsearch-api --",
30
+ "test:opensearch1": "TEST_RESTRAINED_OPENSEARCH='true' OPENSEARCH_VERSION='1.3.11' node ../scripts/bin/ts-scripts test --debug ../elasticsearch-api --",
32
31
  "test:opensearch2": "TEST_RESTRAINED_OPENSEARCH='true' OPENSEARCH_VERSION='2.15.0' node ../scripts/bin/ts-scripts test --debug ../elasticsearch-api --",
33
32
  "test:opensearch3": "TEST_RESTRAINED_OPENSEARCH='true' OPENSEARCH_VERSION='3.1.0' node ../scripts/bin/ts-scripts test --debug ../elasticsearch-api --",
34
33
  "test:watch": "TEST_RESTRAINED_ELASTICSEARCH='true' node ../scripts/bin/ts-scripts test --watch ../elasticsearch-api --"
35
34
  },
36
35
  "dependencies": {
37
- "@terascope/types": "~2.0.0-dev.4",
38
- "@terascope/utils": "~2.0.0-dev.4",
36
+ "@terascope/types": "~2.0.0-dev.6",
37
+ "@terascope/utils": "~2.0.0-dev.6",
39
38
  "bluebird": "~3.7.2",
40
39
  "setimmediate": "~1.0.5"
41
40
  },
42
41
  "devDependencies": {
43
42
  "@opensearch-project/opensearch": "~1.2.0",
44
- "@terascope/opensearch-client": "~2.0.0-dev.4",
43
+ "@terascope/opensearch-client": "~2.0.0-dev.6",
45
44
  "@types/elasticsearch": "~5.0.43",
46
45
  "elasticsearch": "~15.4.1",
47
- "elasticsearch6": "npm:@elastic/elasticsearch@~6.8.0",
48
46
  "elasticsearch7": "npm:@elastic/elasticsearch@~7.17.0",
49
47
  "elasticsearch8": "npm:@elastic/elasticsearch@~8.15.0"
50
48
  },