13610 Commits

Author SHA1 Message Date
Boaz Leskes
532fa0663b Internal: AsyncShardFetch can hang if there are new nodes in cluster state
The AsyncShardFetch retrieves shard information from the different nodes in order to detirment the best location for unassigned shards. The class uses TransportNodesListGatewayStartedShards and TransportNodesListShardStoreMetaData in order to fetch this information. These actions, inherit from TransportNodesAction and are activated using a list of node ids. Those node ids are extracted from the cluster state that is used to assign shards.

If we perform a reroute and adding new news in the same cluster state update task, it is possible that the AsyncShardFetch administration is based on
a different cluster state then the one used by TransportNodesAction to resolve nodes. This can cause a problem since TransportNodesAction filters away unkown nodes, causing the administration in AsyncShardFetch to get confused.

This commit fixes this allowing to override node resolving in TransportNodesAction and uses the exact node ids transfered by AsyncShardFetch
2015-06-11 23:16:09 +02:00
Igor Motov
93beea1f67 Snapshot/Restore: Move in-progress snapshot and restore information from custom metadata to custom cluster state part
Information about in-progress snapshot and restore processes is not really metadata and should be represented as a part of the cluster state similar to discovery nodes, routing table, and cluster blocks. Since in-progress snapshot and restore information is no longer part of metadata, this refactoring also enables us to handle cluster blocks in more consistent manner and allow creation of snapshots of a read-only cluster.

Closes #8102
2015-06-11 15:21:18 -04:00
Simon Willnauer
440580dd55 Cleanup MergeScheduler infrastrucutre
This commit cleans up all the MergeScheduler infrastructure
and simplifies / removes all unneeded abstractions. The MergeScheduler
itself is now private to the Engine and all abstractions like Providers
that had support for multiple merge schedulers etc. are removed.

Closes #11602
2015-06-11 20:49:42 +02:00
Lee Hinman
483a15a12b Use task's class name if not a TimedPrioritizeRunnable
This is helpful to track down the origin of pending_tasks that aren't
expected. In tests we catch this with an assert, but in production
asserts may not be enabled so we should at least add the class name.
2015-06-11 12:39:24 -06:00
Clinton Gormley
1528b86b29 Merge pull request #11575 from skearns64/aspire-doc
Add Aspire for Elasticsearch to integrations page
2015-06-11 15:04:04 +02:00
Clinton Gormley
0216dfd3b6 Docs: Removed left over table header from merge.asciidoc 2015-06-11 13:26:34 +02:00
Simon Willnauer
b0fe0096c4 [TEST] Prevent merges from being kicked off after two docs 2015-06-11 12:49:56 +02:00
Simon Willnauer
f77804dad3 Bake in TieredMergePolicy
Today we provide the ability to plug in MergePolicy and
we provide the once lucene ships with. We do not recommend to change
the default and even only a small number of expert users would ever touch
this. This commit removes the ancient log byte size and log doc count
merge policy providers, simplifies the MergePolicy wiring and makes the
tiered MP the one and only default. All notions of a merge policy has been
removed from the docs and should be deprecated in the previous version.

Closes #11588
2015-06-11 11:58:30 +02:00
Boaz Leskes
134d898be9 Test: added awaitFix to AzureTwoStartedNodesTest.two_nodes_should_run_using_private_ip 2015-06-11 08:59:44 +02:00
Ryan Ernst
d372bf7d7a Merge pull request #11586 from rjernst/fix/field-names-null
Mappings: Shortcut exists and missing queries when no types/docs exist
2015-06-10 14:58:57 -07:00
Clinton Gormley
6e71f60b82 Update bool-query.asciidoc
Emphasise section about using bool query in filter context
2015-06-10 21:46:23 +02:00
Simon Willnauer
657d6dd9cf Remove MergeScheduler pluggability
Nobody should really plug in a different merge scheduler for elasticsearch.
This is too expert and might cause catastrophic failures.
2015-06-10 20:28:30 +02:00
Boaz Leskes
650950c7f4 Merge pull request #11583 from bleskes/mapper_exception_unwrap
Recovery: Fix MapperException detection during translog ops replay
2015-06-10 19:06:53 +02:00
Ryan Ernst
de4295cd7f Mappings: Shortcut exists and missing queries when no types/docs exist
There used to be a null check for _field_names mapper not existing. This
was recently removed. However, there is a corner case when the mapper
may be missing: when no types or docs exist at all in the index.

This change adds back a null check and just returns no docs.
2015-06-10 09:51:43 -07:00
Igor Motov
831cfa52d5 Snapshot/Restore: change metadata file format 2015-06-10 11:13:32 -04:00
Boaz Leskes
e9d275d3a9 Recovery: fix MapperException detection during translog ops replay
The current ExceptionsHelper.unwrapCause(exception) requires the incoming exception to support ElasticsearchWrapperException , which TranslogRecoveryPerformer.BatchOperationException doesn't implement. I opted for a more generic solution
2015-06-10 17:12:14 +02:00
Boaz Leskes
5951f2580d Merge pull request #11576 from bleskes/wait_on_mapping_remove
Test: rename waitForConcreteMappingsOnAll & waitForMappingOnMaster to assertConcreteMappingsOnAll & assertMappingOnMaster
2015-06-10 14:37:59 +02:00
Steve Kearns
39acd7c170 Add Aspire for Elasticsearch to integrations page
Add Aspire for Elasticsearch to the integrations page, and add two missing colons to other integrations.
2015-06-10 08:12:11 -04:00
Adrien Grand
199c9002e5 Merge pull request #11428 from jpountz/fix/CompressedXConten_fast
Make CompressedXContent.equals fast again.
2015-06-10 13:38:06 +02:00
Adrien Grand
fbe617c37b Internal: Make CompressedXContent.equals fast again.
We had to make CompressedXContent.equals decompress data to fix some
correctness issues which had the downside of making equals() slow. Now we store
a crc32 alongside compressed data which should help avoid decompress data in
most cases.

Close #11247
2015-06-10 13:37:08 +02:00
Boaz Leskes
356f0ffde2 Test: rename waitForConcreteMappingsOnAll & waitForMappingOnMaster to assertConcreteMappingsOnAll & assertMappingOnMaster
Now that mapping updates are sync and done before indexing we don't really need the waiting component. Also, removed many places were they were used as safe guard against delayed mapping updates, which are now not needed.
2015-06-10 13:27:57 +02:00
Ryan Ernst
49bef19878 Merge pull request #11565 from rjernst/remove/field-mapper-wrappers
Mappings: Remove leftover sugar methods from FieldMapper
2015-06-09 14:12:08 -07:00
Ryan Ernst
6c73647325 Mappings: Remove leftover sugar methods from FieldMapper
These methods are now all in MappedFieldType. This removes the remaining
callers of the methods on FieldMapper, and cuts down the FieldMapper
API to no longer include them.
2015-06-09 14:02:06 -07:00
Honza Král
09b5f90779 [API] correct link for flush_synced docs 2015-06-09 21:29:02 +02:00
Simon Willnauer
63ed54017e [TEST] Remove deprecated API 2015-06-09 20:43:01 +02:00
Ryan Ernst
9d57818cee fix field names to be disabled again pre 1.3 2015-06-09 11:42:06 -07:00
Simon Willnauer
b0466bbacd [TEST] Add simple test for selecting fiels to be included in mlt query 2015-06-09 20:16:47 +02:00
Ryan Ernst
9fa69bd663 Merge pull request #11559 from rjernst/pr/field-type-users
Mappings: Make index level mapping apis use MappedFieldType
2015-06-09 11:04:33 -07:00
Ryan Ernst
1fdae75025 Mappings: Make index level mapping apis use MappedFieldType
The MapperService is the "index wide view" of mappings. Methods on it
are used at query time to lookup how to query a field. This
change reduces the exposed api so that any information returned
is limited to that api exposed by MappedFieldType. In the future,
MappedFieldType will be guaranteed to be the same across all
document types for a given field.

Note CompletionFieldType needed some more settings moved to it. Other
than that, this change is almost purely cosmetic.
2015-06-09 10:04:28 -07:00
Ryan Ernst
9787266b60 Merge pull request #11544 from rjernst/refactor/null-value
Mapping: Move null value handling into MappedFieldType
2015-06-09 09:46:56 -07:00
Ryan Ernst
bf805168e9 Merge branch 'master' into refactor/null-value 2015-06-09 09:46:19 -07:00
Ryan Ernst
6719b1b79e add javadocs to null value functions 2015-06-09 09:46:05 -07:00
Alexander Reelsen
a54d4e4aa8 Versioning: Adding 1.6.1 development version & 1.6.0 bwc index 2015-06-09 16:30:02 +02:00
Simon Willnauer
54815f259e add lang-javascript module 2015-06-09 15:17:27 +02:00
Simon Willnauer
64fdb0eeb0 migrate branch for lang-javascript 2015-06-09 15:17:27 +02:00
Simon Willnauer
a24c10c703 add lang-javascript module 2015-06-09 15:17:25 +02:00
Simon Willnauer
d9fe7cc252 add lang-python module 2015-06-09 15:17:23 +02:00
Simon Willnauer
a04a9777d4 migrate branch for lang-python 2015-06-09 15:17:23 +02:00
Simon Willnauer
a1b410652d add lang-python module 2015-06-09 15:17:22 +02:00
Simon Willnauer
ea07e5ba94 Modify script to only migrate plugins 2015-06-09 15:16:42 +02:00
Britta Weber
2edff1bc4a [TEST] stop disruption before we check for deleted shards
The shard can potentially not be deleted if the obsever that checks for the shard
STARTED is not registered because the registering is delayed by the disruption.
If the sum of delays is more than 10s then the wait for shard deletion will time out.
2015-06-09 14:28:46 +02:00
Alexander Reelsen
3bda78e43b ResourceWatcher: Rename settings to prevent watcher clash
The ResourceWatcher used settings prefixed `watcher.`, which
potentially could clash with the watcher plugin.

In order to prevent confusion, the settings have been renamed to
`resource.reload` prefixes.

This also uses the deprecation logging infrastructure introduced
in #11033 to log deprecated settings and their alternative at
startup.

Closes #11175
2015-06-09 10:02:49 +02:00
Alexander Reelsen
57a94a151d IdsQueryBuilder: Allow to add a list in addition to array
In case a developer gets a list of ids from another data source,
it does not make a lot of sense, to convert it to an array first,
and then internally in IdsQueryBuilder elasticsearch creates a
list out of this.

Closes #5089
2015-06-09 09:31:19 +02:00
Chelsea Lura
3ac19e8f7f Doc: Typo 'good' vs 'well' typo
Closes #11549
2015-06-09 09:25:23 +02:00
Michael McCandless
405ab4f78e Merge pull request #11546 from mikemccand/segment_infos_trace
Add node setting to send SegmentInfos debug output to System.out
2015-06-08 18:48:51 -04:00
Michael McCandless
18609fff0d add node setting to send SegmentInfos debug output to System.out 2015-06-08 18:40:58 -04:00
Ryan Ernst
ba15a2f6cb Mapping: Move null value handling into MappedFieldType
In order for exists queries to use the null value for
a field, null value needs to be part of the field type (should
differ between document types). This change moves null value
into the field type, as well as simplifies the null value
methods available to remove supportsNullValue().
2015-06-08 15:08:24 -07:00
Boaz Leskes
16d9480d78 Merge pull request #11536 from bleskes/recovery_translog_op_count_on_mapping_retry
Fix recovered translog ops stat counting when retrying a batch
2015-06-08 18:17:50 +02:00
Clinton Gormley
60c7e0eb91 Update merge.asciidoc
Corrected typo in merge docs
2015-06-08 16:45:59 +02:00
Nirmal Chidambaram
931b9f9c74 Filtered out non data-nodes in relevant cat api
Closes #9214
Closes #9287
2015-06-08 16:05:42 +02:00