Commit Graph

2231 Commits

Author SHA1 Message Date
Jason Tedor 6b19aebab0 Merge pull request #13438 from jasontedor/maps-be-gone
Remove and forbid use of com.google.common.collect.Maps
2015-09-09 17:58:44 -04:00
Jason Tedor 2a5412ebf0 Remove and forbid use of com.google.common.collect.Maps
This commit removes and now forbids all uses of
com.google.common.collect.Maps across the codebase. This is one of many
steps in the eventual removal of Guava as a dependency.

Relates #13224
2015-09-09 17:41:41 -04:00
Ryan Ernst 9e8a90a657 Add xlint ignores for warning classes, where appropriate. 2015-09-09 12:47:07 -07:00
David Pilato b89efbed69 [maven] assembly: elasticsearch is already excluded
As elasticsearch is marked as provided we don't need to explicitly exclude it from the assembly descriptor.

We get a warning today for all plugins, the following:

```
[INFO] --- maven-assembly-plugin:2.5.5:single (default) @ repository-s3 ---
[INFO] Reading assembly descriptor: /path/to/plugin-assembly.xml
[WARNING] The following patterns were never triggered in this artifact exclusion filter:
o  'org.elasticsearch:elasticsearch'
[INFO] Building zip: /path/to/target/releases/repository-s3-3.0.0-SNAPSHOT.zip
[INFO]
```

It now gives:

```
[INFO] --- maven-assembly-plugin:2.5.5:single (default) @ repository-s3 ---
[INFO] Reading assembly descriptor: /path/to/plugin-assembly.xml
[INFO] Building zip: /path/to/target/releases/repository-s3-3.0.0-SNAPSHOT.zip
[INFO]
```
2015-09-08 08:55:31 +02:00
Adrien Grand 0c26e7cd83 Remove the scan and count search types.
These search types have been deprecated in 2.1 and 2.0 respectively, and will
be removed in 3.0.
2015-09-07 15:18:45 +02:00
Jason Tedor 8a3411e5e4 Remove and forbid the use of com.google.common.base.Predicate(s)?
This commit removes and now forbids all uses of
com.google.common.base.Predicate and com.google.common.base.Predicates
across the codebase. This is one of the many steps in the eventual
removal of Guava as a dependency. This was enabled by #13314.

Relates #13224
2015-09-06 07:20:24 -04:00
xuzha e69551d8df This commit remove the block for user to set invalid Signer Type.
Instead of throw an exception, this change log a warning message
and accept any signer type.
2015-09-05 22:57:05 -07:00
Robert Muir f216d92d19 Upgrade to lucene 5.4-snapshot r1701068 2015-09-03 15:13:33 -04:00
David Pilato 6953193f5b [test] fix test names
For aws s3 and ec2
2015-09-03 12:21:26 +02:00
David Pilato 30aa231f8e [plugin] split cloud-aws in repository-s3 and discovery-ec2
Until now we had a cloud-aws plugin which is providing 2 disctinct features:

* discovery on EC2
* snapshot/restore on S3

This commit splits the plugin by feature so people can use either one or the other or both features.

Doc is updated accordingly.
2015-09-03 11:12:20 +02:00
Simon Willnauer 796701d52e Move version to 3.0.0-SNAPSHOT 2015-09-03 10:43:28 +02:00
Ryan Ernst 06d5e24548 Tests: Rename test suffix so we only use "Tests"
We currently have a small number of test classes with the suffix "Test",
yet most use the suffix "Tests". This change renames all the "Test"
classes, so that we have a simple rule: "Non-inner classes ending with
Tests".
2015-09-02 14:38:43 -07:00
Ryan Ernst fabadc6a67 Fix naming for plugins abstract test cases
See #13282
2015-09-02 12:33:53 -07:00
Adrien Grand c6d282f9f6 Remove extra licenses 2015-09-01 17:44:57 +02:00
Adrien Grand 3619cce53b Update licenses for analysis plugins. 2015-09-01 15:21:49 +02:00
Ryan Ernst 6295f8e795 Merge branch 'master' into tell_me_your_plugins 2015-08-30 14:20:54 -07:00
Jason Tedor 3067cacb66 Remove and forbid use of com.google.common.collect.Lists
This commit removes and now forbids all uses of
com.google.common.collect.Lists across the codebase. This is the first
of many steps in the eventual removal of Guava as a dependency.
2015-08-27 22:14:33 -04:00
Clinton Gormley 3599d55637 REST spec: Fixed link to delete-by-query docs
Closes #13089
2015-08-25 11:57:55 +02:00
David Pilato 8c4cecb41b [cloud-aws] Update AWS SDK to 1.10.12
Release notes:

* [1.10.11](http://aws.amazon.com/releasenotes/Java/5199590350929641)
* [1.10.12](http://aws.amazon.com/releasenotes/Java/6635368276326731)
2015-08-24 23:06:28 +02:00
David Pilato 528b4389ac [cloud-aws] Update AWS SDK to 1.10.10
Update SHA1 files.

Closes #12859.
2015-08-24 22:58:10 +02:00
Fabian Selles Rosa 3efa6419f1 [cloud-aws] Update AWS SDK to 1.10.10
Closes #12859.
2015-08-24 22:50:57 +02:00
Ryan Ernst 89e1a0fb7d Plugins: Removed plugin.types
The setting `plugin.types` is currently used to load plugins from the
classpath. This is necessary in tests, as well as the transport client.

This change removes the setting, and replaces it with the ability to
directly add plugins when building a transport client, as well as
infrastructure in the integration tests to specify which plugin classes
should be loaded on each node.
2015-08-22 01:37:43 -07:00
xuzha 2276ff6283 Remove `cloud.account` and `cloud.key` settings
closes #12809
2015-08-21 00:56:15 -07:00
Simon Willnauer 47a0296211 Clear ScrollID / NextScrollID even if the first query returned no docs 2015-08-21 09:51:30 +02:00
Ryan Ernst 0c09bf2b18 Remove outdated comment 2015-08-20 22:30:26 -07:00
Ryan Ernst 164efaecbe Networking: Move multicast discovery to a plugin
Multicast has known issues (see #12999 and #12993). This change moves
multicast into a plugin, and deprecates it in the docs.  It also allows
for plugging in multiple zen ping implementations.

closes #13019
2015-08-20 16:43:25 -07:00
Robert Muir e2ab62596f Default to unicast discovery, with default host list of 127.0.0.1, [::1]
Fix unicast discovery to work when a host has multiple addresses.
Ban dangerous methods in java.net with forbidden APIs.
Fix ipv6 bugs and formatting of network addresses everywhere.

Closes #12999
Closes #12993

Squashed commit of the following:

commit 6c1aa001d091c5cf25212a53dc701fb704337f1e
Author: Robert Muir <rmuir@apache.org>
Date:   Thu Aug 20 14:25:43 2015 -0400

    Fix these to be correct with addresses just in case

commit 648215627e84abf58a71400e7dc9ae775efb71d6
Merge: d00561b 41d8fbe
Author: Robert Muir <rmuir@apache.org>
Date:   Thu Aug 20 13:23:09 2015 -0400

    Merge branch 'master' into unicast_all_the_way_down

commit d00561b76fd1aa5850699f7901f3dae3d4d402b7
Author: Simon Willnauer <simonw@apache.org>
Date:   Thu Aug 20 16:38:50 2015 +0200

    limit local ports to 5 in UnicastZenPing

commit e2e15c594006746cbe24432694294a71cc99deb8
Author: Robert Muir <rmuir@apache.org>
Date:   Thu Aug 20 10:32:47 2015 -0400

    fix port limiting

commit 10153cb7adadda81a1f482445e703836b65cf5e2
Author: Robert Muir <rmuir@apache.org>
Date:   Thu Aug 20 10:18:37 2015 -0400

    don't serialize scopeids: that's broken

commit 2aa63d43db2baec68a2e9bc227cfeb85dfeb4f83
Author: Simon Willnauer <simonw@apache.org>
Date:   Thu Aug 20 16:06:51 2015 +0200

    restore @Network

commit c840f1d1ef438826ae1ecfd5e45942a0e30dc9c0
Author: Simon Willnauer <simonw@apache.org>
Date:   Thu Aug 20 16:02:30 2015 +0200

     Use NetworkAddress.formatAddress where applicable in plugins

commit 374ce878852b35d626b7a29c8c4773545b0e9ddd
Author: Simon Willnauer <simonw@apache.org>
Date:   Thu Aug 20 15:34:06 2015 +0200

    Use NetworkAddress.formatAddress where applicable

commit e7a606d63f1bc43c1b62b6e17adf707c76d43a15
Author: Simon Willnauer <simonw@apache.org>
Date:   Thu Aug 20 10:17:57 2015 +0200

    Add @Multicast annotation to disable multicast tests by default.

    We only run multicast tests now when we explicitly state it. A working
    multicast env is required which is not always the case.

commit 2d7d2d0347179696ab41f71f048b13305014c85b
Author: Simon Willnauer <simonw@apache.org>
Date:   Thu Aug 20 09:51:28 2015 +0200

    Remove extra check for local mode in InternalTestCluster

commit dda59ac39aa136d4687b9274c2692cd77f8b8f66
Author: Simon Willnauer <simonw@apache.org>
Date:   Thu Aug 20 09:37:03 2015 +0200

    Handle node mode across entire test cluster

    We used static methods reading sys properties to define the node mode
    per cluster. this had lots of problems when tests couldn't cope with
    mixed or only local mode. Now we are passing it down to the cluster from the test
    which allows to @SuppressNetworkMode / @SupressLocalMode on the test to force
    consistent node configurations.

commit 058197b7a408318995c88ce7f6762e32348de0de
Author: Robert Muir <rmuir@apache.org>
Date:   Thu Aug 20 03:19:14 2015 -0400

    really ban InetSocketAddress's trappy method and break build and go to sleep, sorry

commit ac8779185aee1e17e6f5a81766290fdfc9c603ba
Author: Robert Muir <rmuir@apache.org>
Date:   Thu Aug 20 03:16:52 2015 -0400

    Ban methods that might surprisingly cause DNS lookups

commit e64fe3dff2b11503e5f2831eb9863d64f56c5538
Author: Robert Muir <rmuir@apache.org>
Date:   Thu Aug 20 02:59:05 2015 -0400

    Add unit test

commit f15434f20fb1a3691b1cc16028597d8fae937e05
Author: Robert Muir <rmuir@apache.org>
Date:   Thu Aug 20 02:39:02 2015 -0400

    fix ipv6 formatting bugs

commit 05c2c74098052c75fbb79ea1818a295ef2e03e30
Author: Robert Muir <rmuir@apache.org>
Date:   Thu Aug 20 02:12:05 2015 -0400

    format addresses correctly so I can actually read what comes out of our logs and stats apis

commit 4f9389dcf1e8925f23153c5eb271b4ce2294dbaf
Author: Robert Muir <rmuir@apache.org>
Date:   Wed Aug 19 21:26:52 2015 -0400

    ban dangerous methods in java.net

commit 6aacd4d9925f324903d1d099a6cf5f862aeaf677
Author: Robert Muir <rmuir@apache.org>
Date:   Wed Aug 19 20:59:24 2015 -0400

    ban lenient method

commit f466a842c60163d1f4554bdce8a4163edb534c2c
Author: Simon Willnauer <simonw@apache.org>
Date:   Thu Aug 20 00:29:00 2015 +0200

    fix tests to not mix local transport and zen unicast disco

commit 0de007a33b33fb68cf85cd86db4ca4f8ce10bbc9
Author: Simon Willnauer <simonw@apache.org>
Date:   Thu Aug 20 00:10:07 2015 +0200

    fix tests to not mix local transport and zen unicast disco

commit 539f6ca6e5137e0d496239adc8684688dedcc824
Author: Simon Willnauer <simonw@apache.org>
Date:   Thu Aug 20 00:02:01 2015 +0200

    fix tests to not mix local transport and zen unicast disco

commit 004c2881b25467f332acc8c9f9e92b1f0f9d314e
Author: Robert Muir <rmuir@apache.org>
Date:   Wed Aug 19 17:51:45 2015 -0400

    Fix multinode

commit 54113af325ce31571811c49fdaae89d5687be4ba
Author: Robert Muir <rmuir@apache.org>
Date:   Wed Aug 19 17:36:45 2015 -0400

    fix integration tests

commit 0156a77a56319d6b9737ec6a531992052e50bd59
Author: Simon Willnauer <simonw@apache.org>
Date:   Wed Aug 19 23:32:18 2015 +0200

    enable multicast in MulticastZenPingIT.java

commit 1791caa35da853ce0122485fa3fd4674c671ec6e
Author: Robert Muir <rmuir@apache.org>
Date:   Wed Aug 19 17:23:16 2015 -0400

    Fix constant

commit 22820b53e0b2dc9fd47145c2bc29ce912a8fd484
Author: Simon Willnauer <simonw@apache.org>
Date:   Wed Aug 19 22:59:09 2015 +0200

    give it some extra ids for local transport crazyness

commit b2138fafa94a8a085813fd48356df63e57ade5b3
Author: Simon Willnauer <simonw@apache.org>
Date:   Wed Aug 19 22:51:42 2015 +0200

    pass on local addresses from configured transport rather than hard code IP addresses

commit 1bf5de1f457b081e0ce262b57d2b55d39c434156
Author: Simon Willnauer <simonw@apache.org>
Date:   Wed Aug 19 22:04:31 2015 +0200

    fix PluggableTransportModuleIT.java to use local disco and detach port limit for node local disco

commit b6706eddfa04c43947c16551359ae98a463d34aa
Author: Robert Muir <rmuir@apache.org>
Date:   Wed Aug 19 14:16:03 2015 -0400

    Default to unicast discovery, with default host list of 127.0.0.1, [::1]
2015-08-20 14:26:40 -04:00
Adrien Grand 6fa258b8fa Deprecate the `scan` search type.
This commit deprecates the `scan` search type in favour of regular scroll
requests sorted by `_doc`.

Related to #12983
2015-08-20 12:47:23 +02:00
Igor Motov dc82262db6 Don't show access_key and filter_key in S3 repository settings
In #11265 we added an ability to filter out sensitive repository settings. This commit uses this change to filter out access_key and filter_key in S3 repository settings.

Closes elastic/elasticsearch-cloud-aws#184
2015-08-19 16:21:42 -04:00
Christoph Büscher 8454d49552 Plugins: Add 'name' property to plugin descriptor file to determine plugin name
At the moment, when installing from an url, a user provides the plugin name on
the command line like:

* bin/plugin install [plugin-name] --url [url]

This can lead to problems when picking an already existing name from another
plugin, and can potentially overwrite plugins already installed with that name.

This, this PR introduces a mandatory `name` property to the plugin descriptor
file which replaces the name formerly provided by the user.

With the addition of the `name` property to the plugin descriptor file, the user
does not need to specify the plugin name any longer when installing from a file
or url. Because of this, all arguments to `plugin install` command are now
either treated as a symbolic name, a URL or a file without the need to specify
this with an explicit option.

The new syntax for `plugin install` is now:

bin/plugin install [name or url]

* downloads official plugin
bin/plugin install analysis-kuromoji

* downloads github plugin
bin/plugin install lmenezes/elasticsearch-kopf

* install from URL or file
bin/plugin install http://link.to/foo.zip
bin/plugin install file:/path/to/foo.zip

If the argument does not parse to a valid URL, it is assumed to be a name and the
download location is resolved like before. Regardless of the source location of
the plugin, it is extracted to a temporary directory and the `name` property from
the descriptor file is used to determine the final install location.

Relates to #12715
2015-08-19 12:13:01 +02:00
Ryan Ernst 54ae55662c Remove leftover class and fix compile issues from master merge 2015-08-18 14:28:03 -07:00
Ryan Ernst 7393068417 Merge branch 'master' into construct_it_yourself 2015-08-18 14:15:08 -07:00
Simon Willnauer 0ffd99cca3 Drop commons-lang dependency
commons-lang really is only used by some core classes to join strings or modiy arrays.
It's not worth carrying the dependency. This commit removes the dependency on commons-lang
entirely.
2015-08-18 22:59:31 +02:00
Ryan Ernst c0444ccbc6 Merge branch 'master' into module_culling3 2015-08-18 10:16:40 -07:00
Ryan Ernst c3a22e6f0e Merge branch 'master' into construct_it_yourself 2015-08-18 09:50:47 -07:00
David Pilato 807d35e96f [maven] change murmur3 plugin groupId and name 2015-08-18 13:45:59 +02:00
David Pilato 692cc80523 [maven] also rename parent project artifactId
Also fixed bad scm links
2015-08-18 13:41:12 +02:00
David Pilato d21afc8090 [maven] rename artifactIds from `elasticsearch-something` to `something`
In plugins, we are using non consistent naming. We use `elasticsearch-cloud-aws` as the artifactId, which generates a jar file called `elasticsearch-cloud-aws-VERSION.jar`.

But when you want to install the plugin, you will end up with a shorter name for the plugin `cloud-aws`.

```
bin/plugin install cloud-aws
```

This commit changes that and use consistent names for `artifactId`, so `finalName`.

Also changed maven names.
2015-08-18 13:38:48 +02:00
Adrien Grand a72adbf0b4 Fix mapper-murmur3 compatibility version. 2015-08-18 12:31:36 +02:00
Adrien Grand c169386dd4 Merge pull request #12931 from jpountz/fix/murmur3_defaults
Move the `murmur3` field to a plugin and fix defaults.
2015-08-18 12:09:32 +02:00
Ryan Ernst dc1fa6736a Merged AbstractPlugin and Plugin. Also added Settings back to
indexModules and shardModules
2015-08-18 02:46:32 -07:00
Adrien Grand a91b3fcbb9 Move the `murmur3` field to a plugin and fix defaults.
This move the `murmur3` field to the `mapper-murmur3` plugin and fixes its
defaults so that values will not be indexed by default, as the only purpose
of this field is to speed up `cardinality` aggregations on high-cardinality
string fields, which only requires doc values.

I also removed the `rehash` option from the `cardinality` aggregation as it
doesn't bring much value (rehashing is cheap) and allowed to remove the
coupling between the `cardinality` aggregation and the `murmur3` field.

Close #12874
2015-08-18 11:41:52 +02:00
Ryan Ernst 2bf84593e0 Plugins: Simplify Plugin API for constructing modules
The Plugin interface currently contains 6 different methods for
adding modules. Elasticsearch has 3 different levels of injectors,
and for each of those, there are two methods. The first takes no
arguments and returns a collection of class objects to construct. The
second takes a Settings object and returns a collection of module
objects already constructed. The settings argument is unecessary because
the plugin can already get the settings from its constructor. Removing
that, the only difference between the two versions is returning an
already constructed Module, or a module Class, and there is no reason
the plugin can't construct all their modules themselves.

This change reduces the plugin api down to just 3 methods for adding
modules. Each returns a Collection<Module>. It also removes the
processModule method, which was unnecessary since onModule
implementations fullfill the same requirement. And finally, it renames
the modules() method to nodeModules() so it is clear these are created
once for each node.
2015-08-17 20:41:45 -07:00
Ryan Ernst 6f124e6eec Internal: Simplify custom repository type setup
Custom repository types are registered through the RepositoriesModule.
Later, when a specific repository type is used, the RespositoryModule
is installed, which in turn would spawn the module that was
registered for that repository type. However, a module is not needed
here. Each repository type has two associated classes, a Repository and
an IndexShardRepository.

This change makes the registration method for custom repository
types take both of these classes, instead of a module.

See #12783.
2015-08-17 15:08:08 -07:00
Robert Muir 68307aa9f3 Fix network binding for ipv4/ipv6
When elasticsearch is configured by interface (or default: loopback interfaces),
bind to all addresses on the interface rather than an arbitrary one.

If the publish address is not specified, default it from the bound addresses
based on the following sort ordering:

* ipv4/ipv6 (java.net.preferIPv4Stack, defaults to true)
* ordinary addresses
* site-local addresses
* link local addresses
* loopback addresses

One one address is published, and multicast is still always over ipv4: these
need to be future improvements.

Closes #12906
Closes #12915

Squashed commit of the following:

commit 7e60833312f329a5749f9a256b9c1331a956d98f
Author: Robert Muir <rmuir@apache.org>
Date:   Mon Aug 17 14:45:33 2015 -0400

    fix java 7 compilation oops

commit c7b9f3a42058beb061b05c6dd67fd91477fd258a
Author: Robert Muir <rmuir@apache.org>
Date:   Mon Aug 17 14:24:16 2015 -0400

    Cleanup/fix logic around custom resolvers

commit bd7065f1936e14a29c9eb8fe4ecab0ce512ac08e
Author: Robert Muir <rmuir@apache.org>
Date:   Mon Aug 17 13:29:42 2015 -0400

    Add some unit tests for utility methods

commit 0faf71cb0ee9a45462d58af3d1bf214e8a79347c
Author: Robert Muir <rmuir@apache.org>
Date:   Mon Aug 17 12:11:48 2015 -0400

    localhost all the way down

commit e198bb2bc0d1673288b96e07e6e6ad842179978c
Merge: b55d092 b93a75f
Author: Robert Muir <rmuir@apache.org>
Date:   Mon Aug 17 12:05:02 2015 -0400

    Merge branch 'master' into network_cleanup

commit b55d092811d7832bae579c5586e171e9cc1ebe9d
Author: Robert Muir <rmuir@apache.org>
Date:   Mon Aug 17 12:03:03 2015 -0400

    fix docs, fix another bug in multicast (publish host = bad here!)

commit 88c462eb302b30a82585f95413927a5cbb7d54c4
Author: Robert Muir <rmuir@apache.org>
Date:   Mon Aug 17 11:50:49 2015 -0400

    remove nocommit

commit 89547d7b10d68b23d7f24362e1f4782f5e1ca03c
Author: Robert Muir <rmuir@apache.org>
Date:   Mon Aug 17 11:49:35 2015 -0400

    fix http too

commit 9b9413aca8a3f6397b5031831f910791b685e5be
Author: Robert Muir <rmuir@apache.org>
Date:   Mon Aug 17 11:06:02 2015 -0400

    Fix transport / interface code

    Next up: multicast and then http
2015-08-17 15:43:07 -04:00
Ryan Ernst 2450e3ccc8 Internal: Flatten IndicesModule and add tests
The IndicesModule was made up of two submodules, one which
handled registering queries, and the other for registering
hunspell dictionaries. This change moves those into
IndicesModule. It also adds a new extension point type,
InstanceMap. This is simply a Map<K,V>, where K and V are
actual objects, not classes like most other extension points.
I also added a test method to help testing instance map extensions.
This was particularly painful because of how guice binds the key
and value as separate bindings, and then reconstitutes them
into a Map at injection time. In order to gain access to the
object which links the key and value, I had to tweak our
guice copy to not use an anonymous inner class for the Provider.

Note that I also renamed the existing extension point types, since
they were very redundant. For example, ExtensionPoint.MapExtensionPoint
is now ExtensionPoint.ClassMap.

See #12783.
2015-08-16 17:56:35 -07:00
Ryan Ernst 754c1b44e7 Fix ZenDiscovery ctor change to remove dynamic cluster settings 2015-08-16 10:40:13 -07:00
Nik Everett 581fd16775 Merge pull request #12897 from nik9000/jvm-example-gets-bin
Add bin to jvm-example
2015-08-16 10:11:23 -07:00
Clinton Gormley e143c6e460 Docs: Prepare plugin and integration docs for 2.0
* Centralised plugin docs in docs/plugins/
* Moved integrations into same docs
* Moved community clients into the clients section of the docs
* Removed docs/community

Closes #11734
Closes #11724
Closes #11636
Closes #11635
Closes #11632
Closes #11630
Closes #12046
Closes #12438
Closes #12579
2015-08-15 18:02:43 +02:00
Simon Willnauer b447e2ae99 Move master to [2.1.0-SNAPSHOT] 2015-08-14 23:44:06 +02:00
Nik Everett fc954216e3 Testing: Add bin to jvm-example
This will be useful in testing the plugin installer.

Relates to #12651
2015-08-14 13:05:26 -07:00
Ryan Ernst f3d63095db Merge branch 'master' into resolve_your_own_config
Conflicts:
	core/src/main/java/org/elasticsearch/env/Environment.java
	core/src/test/java/org/elasticsearch/index/analysis/commongrams/CommonGramsTokenFilterFactoryTests.java
	core/src/test/java/org/elasticsearch/index/analysis/synonyms/SynonymsAnalysisTest.java
	plugins/analysis-kuromoji/src/test/java/org/elasticsearch/index/analysis/KuromojiAnalysisTests.java
2015-08-14 03:34:26 -07:00
Ryan Ernst be638fb6ef Internal: Remove Environment.resolveConfig
This method has multiple modes of resolving config files by
first looking in the config directory, then on the classpath,
and finally by prefixing with "config/" on the classpath.

Most of the places taking advantage of this were tests, so they
did not have to setup a real home dir with config. The only place
that was really relying on it was the code which loads names.txt
to randomly choose a node name.

This change fixes test to setup fake home dirs with their config
files. It also makes the logic for finding names.txt explicit:
look in config dir, and if it doesn't exist, load /config/names.txt
from the classpath.
2015-08-14 03:03:47 -07:00
Ryan Ernst 6dcfda99e8 Internal: Remove ClassLoader from Settings
Settings currently has a classloader member, which any user (plugin
or core ES code) can access to load classes/resources. This is extremely
error prone as setting the classloder on the Settings instance is a
public method. Furthermore, it is not really necessary. Classes that
need resources should load resources using normal means
(getClass().getResourceAsStream). Those that need classes
should use Class.forName, which will load the class with the
same classloader as the calling class. This means, in the few
places where classes are loaded by string name, they will use
the appropriate loader: either the default classloader which loads
core ES code, or a child classloader for each plugin.

This change removes the classloader member from Settings, as
well as other classloader related uses (except for a handful
of cases which must use a classloader, at least for now).
2015-08-13 23:55:27 -07:00
Ryan Ernst c16772b0fc Undo accidental commit of crap
This reverts commit 589eecf55d.
2015-08-13 19:39:55 -07:00
Ryan Ernst 589eecf55d Fourth time's a charm, one more mock class to add to test jar 2015-08-13 19:36:53 -07:00
David Pilato 48ef9e3cfb Merge branch 'aws/base_path' 2015-08-13 15:29:00 +02:00
Adrien Grand 28708f8013 Tests: Fix SimpleIcuAnalysisTests to not load a non-existent configuration file. 2015-08-13 14:39:10 +02:00
Simon Willnauer 605253a39f Cut over master to 2.0.0-SNAPSHOT 2015-08-12 21:16:08 +02:00
David Pilato beb7e16a43 [cloud-gce] replace integration tests by unit tests
We use google transport mock as we can simulate whatever JSON answer GCE platform will send us and really test Gce implementation.

We also remove GceSimpleITest as the goal of this class was only to check that when we start elasticsearch with this plugin, elasticsearch works fine.
We don't need that anymore as we now have RestIT which do that right (and better)!

Closes #12622
2015-08-12 17:47:53 +02:00
David Pilato 99fccddcf2 [cloud-gce] update to GCE API v1-rev71-1.20.0
Closes #12835
2015-08-12 17:38:04 +02:00
Nik Everett e4e60774c1 Merge pull request #12787 from nik9000/configured_plugin
QA: Add configuration to the jvm-example plugin
2015-08-12 07:36:34 -07:00
Clinton Gormley 29d1924d78 Add licenses/no_deps.txt to plugins/jvm-example to quiet the license checker 2015-08-11 19:55:41 +02:00
Nik Everett e807499c29 Merge configured-plugin into jvm-example plugin 2015-08-11 07:36:32 -07:00
Ryan Ernst 40f119d85a This method on settings loaded a class, based on a setting value, using
the default classloader. It had all kinds of leniency in how the
classname was found, and simply cannot work with plugins having isolated
classloaders.

This change removes that method. Some of the uses of it were for custom
extension points, like custom repository or discovery types. A lot were
just there to plugin mock implementations for tests. For the settings
that were legitimate, all now support plugins adding the given setting
via onModule. For those that were specific to tests for mocks, they now
use Classes.loadClass (a helper around Class.forName). This is a
temporary measure until (in a future PR) tests can change the
implementation via package private statics.

I also removed a number of unnecessary intermediate modules, added a
"jvm-example" plugin that can be filled in in the future as a smoke test
for breaking plugins, and gave some documentation to "spawn" modules
interface.

closes #12643
closes #12656
2015-08-10 14:04:45 -07:00
Colin Goodheart-Smithe 6abc69c488 Packaging: Makes sure all POMs contain a description
Adds an explicit description the RPM package so it doesn't inherit the description from the POM.

Closes #12550

Also, modified descriptions for deb and rpm packages to be the same and to reference the documentation rather than listing features that are out of date.
2015-08-10 15:21:24 +01:00
David Pilato f843a1375f [cloud-aws] add support for base_path in elasticsearch.yml
Related to https://github.com/elastic/elasticsearch-cloud-aws/issues/230

We now can support setting a global `base_path` in `elasticsearch.yml` using `repositories.s3.base_path` key.
2015-08-10 10:40:44 +02:00
Clinton Gormley a0774d0f48 no_deps.txt should be in the licenses/ directory in plugins 2015-08-09 20:16:11 +02:00
Clinton Gormley bc7dbce4fe Enable the license checker for plugins without third party deps too 2015-08-09 19:07:45 +02:00
Clinton Gormley 205262c737 Enable the license checker over distribution/* and plugins/*
Moved the license checker config into the parent pom, and overrede
the license dir/target-to-check in distributions/pom.

Disabled the license checker explicitly for projects which run integration
tests but have no licenses dir:

* core
* distribution
* qa
* plugins/delete-by-query
* plugins/mapper-size
* plugins/site-example

Closes #12752
Closes #12754
2015-08-09 18:18:59 +02:00
Robert Muir d1a5068b77 Merge branch 'master' into integ_randomization 2015-08-06 14:51:00 -04:00
Robert Muir 7414d19d28 Support jenkins randomization in integration tests 2015-08-06 14:48:27 -04:00
Adrien Grand 5dd5936fad Move the `_size` mapper to a plugin.
This is one of our esoteric metadata mappers so I think we should distribute
it in a plugin rather than in elasticsearch core.

This introduces one limitation: the value of the `_size` parameter is not
retrievable for documents that are only in the transaction log.
2015-08-06 20:35:22 +02:00
Adrien Grand b16e2d95af Allow scripts to expose whether they use the `_score`.
This commit adds a new API to allow scripts to say whether they need scores.
In practice, only the `expression` script engine makes use of it correctly,
other engines just return `true` since they can't predict whether they'll
need scores. This should make scripted aggregations and `function_query`
faster as we'll now be able to pass needsScores=false to Query.createWeight.
2015-08-06 17:25:51 +02:00
Robert Muir 5fe49e4420 cleanup skipping everywhere 2015-08-05 21:45:09 -04:00
xuzha 333ca689d3 Add retry when checking s3 bucket 2015-08-04 15:58:15 -07:00
Robert Muir 6f9a067197 Change master branch back to 2.0-beta1 2015-08-04 15:38:21 -04:00
Robert Muir 29d73accdd Merge pull request #12639 from rmuir/improve_integ
Don't use port 9200/9300 for integration tests
2015-08-04 13:09:47 -04:00
Robert Muir f1019ace3b Fix plugins integ dependencies and apply cleanups 2015-08-04 09:59:19 -04:00
Robert Muir cf6fe6cdcd Don't use port 9200/9300 for integration tests 2015-08-04 09:25:44 -04:00
Simon Willnauer 6753f7f03e Cut over master to 2.0.0-SNAPSHOT 2015-08-04 10:54:12 +02:00
Robert Muir a0a177222b fix typo in assume() when running from IDE 2015-08-03 23:57:27 -04:00
Robert Muir 64850c0539 Improve site-example integ test to test served contents.
Closes #12578
2015-08-03 23:47:36 -04:00
Ryan Ernst 1e12d03252 Tests: Rename base tests cases to use "TestCase" suffix
Most of the abstract base test classes we have were previously @Ignored.
However, there were also some other tests ignored. Having two ways to
quiet tests is confusing, and clearly it has caused some tests
to get lost in the fold.

This change moves all base test classes to use the "TestCase" suffix,
which is not picked up by the test class name pattern. It also removes
@Ignore from (almost) all tests, and adds it to forbidden apis.
And since we were renaming, I shorted base test class names to use
"ES" instead of "Elasticsearch". I type this a lot of types a day,
and I have heard others express a similar desire for a shorter name.

closes #10659
2015-08-03 17:43:00 -07:00
Ryan Ernst 32a5c20b33 Tests: Forbid @Slow
Now that all uses of @Slow are gone, we can forbid this annotations use
so tests are not confusing. Follow up to #12617.
2015-08-03 16:43:09 -07:00
Ryan Ernst be941f0669 Tests: Remove uses of @Slow and @Integration
Now that integ tests are moved into `mvn verify`, we don't really have
a need for @Slow, and especially not @Integration. This removes
uses of the first, and completely removes uses of the latter.
2015-08-03 16:26:07 -07:00
David Pilato ac89f43d11 Merge pull request #12604 from dadoonet/maven/rename-site-example
[build] rename site example plugin to site-example
2015-08-03 18:45:13 +02:00
David Pilato 1b0492f800 [build] rename site example plugin to site-example
Just to be consistent in plugin naming convention we have today: `plugin_type-plugin_name`

So it's a `site` plugin.
2015-08-03 18:41:04 +02:00
Robert Muir 379ffdb8ee Add integration test phase for elasticsearch core/ 2015-08-03 09:43:11 -04:00
Robert Muir c5b91b9058 Merge pull request #12589 from rmuir/shading_cleanup
Fix shaded jar packaging
2015-08-03 08:10:50 -04:00
Tanguy Leroux 3537610760 Add comment about AWS S3 "doesBucketExist()" method 2015-08-03 11:02:16 +02:00
Robert Muir fef55348f9 clean up .zip handling so its not uselessly downloaded in the build 2015-08-01 09:10:03 -04:00
Robert Muir f804ec3cd9 cleanup 2015-07-31 10:05:11 -04:00
Robert Muir fd8e92a18a don't represent site plugins with 'null' anymore 2015-07-31 09:41:39 -04:00
Jason Tedor b0564cb75c Add integration test for Azure snapshot repository bug
This commit adds an integration test that replicates the Azure snapshot repository bug in elastic/elasticsearch-cloud-azure#51.

Closes elastic/elasticsearch-cloud-azure#100
2015-07-27 13:52:51 -04:00
Jason Tedor 45fadd4955 Use correct settings keys for setting container, base path and chunk size in Azure integration test 2015-07-27 13:37:58 -04:00
Robert Muir 4040f194f5 Refactor pluginservice
Closes #12367

Squashed commit of the following:

commit 9453c411798121aa5439c52e95301f60a022ba5f
Merge: 3511a9c 828d8c7
Author: Robert Muir <rmuir@apache.org>
Date:   Wed Jul 22 08:22:41 2015 -0400

    Merge branch 'master' into refactor_pluginservice

commit 3511a9c616503c447de9f0df9b4e9db3e22abd58
Author: Ryan Ernst <ryan@iernst.net>
Date:   Tue Jul 21 21:50:15 2015 -0700

    Remove duplicated constant

commit 4a9b5b4621b0ef2e74c1e017d9c8cf624dd27713
Author: Ryan Ernst <ryan@iernst.net>
Date:   Tue Jul 21 21:01:57 2015 -0700

    Add check that plugin must specify at least site or jvm

commit 19aef2f0596153a549ef4b7f4483694de41e101b
Author: Ryan Ernst <ryan@iernst.net>
Date:   Tue Jul 21 20:52:58 2015 -0700

    Change plugin "plugin" property to "classname"

commit 07ae396f30ed592b7499a086adca72d3f327fe4c
Author: Robert Muir <rmuir@apache.org>
Date:   Tue Jul 21 23:36:05 2015 -0400

    remove test with no methods

commit 550e73bf3d0f94562f4dde95239409dc5a24ce25
Author: Robert Muir <rmuir@apache.org>
Date:   Tue Jul 21 23:31:58 2015 -0400

    fix loading to use classname

commit 04463aed12046da0da5cac2a24c3ace51a79f799
Author: Robert Muir <rmuir@apache.org>
Date:   Tue Jul 21 23:24:19 2015 -0400

    rename to classname

commit 9f3afadd1caf89448c2eb913757036da48758b2d
Author: Ryan Ernst <ryan@iernst.net>
Date:   Tue Jul 21 20:18:46 2015 -0700

    moved PluginInfo and refactored parsing from properties file

commit df63ccc1b8b7cc64d3e59d23f6c8e827825eba87
Author: Robert Muir <rmuir@apache.org>
Date:   Tue Jul 21 23:08:26 2015 -0400

    fix test

commit c7febd844be358707823186a8c7a2d21e37540c9
Author: Robert Muir <rmuir@apache.org>
Date:   Tue Jul 21 23:03:44 2015 -0400

    remove test

commit 017b3410cf9d2b7fca1b8653e6f1ebe2f2519257
Author: Robert Muir <rmuir@apache.org>
Date:   Tue Jul 21 22:58:31 2015 -0400

    fix test

commit c9922938df48041ad43bbb3ed6746f71bc846629
Merge: ad59af4 01ea89a
Author: Robert Muir <rmuir@apache.org>
Date:   Tue Jul 21 22:37:28 2015 -0400

    Merge branch 'master' into refactor_pluginservice

commit ad59af465e1f1ac58897e63e0c25fcce641148a7
Author: Areek Zillur <areek.zillur@elasticsearch.com>
Date:   Tue Jul 21 19:30:26 2015 -0400

    [TEST] Verify expected number of nodes in cluster before issuing shardStores request

commit f0f5a1e087255215b93656550fbc6bd89b8b3205
Author: Lee Hinman <lee@writequit.org>
Date:   Tue Jul 21 11:27:28 2015 -0600

    Ignore EngineClosedException during translog fysnc

    When performing an operation on a primary, the state is captured and the
    operation is performed on the primary shard. The original request is
    then modified to increment the version of the operation as preparation
    for it to be sent to the replicas.

    If the request first fails on the primary during the translog sync
    (because the Engine is already closed due to shadow primaries closing
    the engine on relocation), then the operation is retried on the new primary
    after being modified for the replica shards. It will then fail due to the
    version being incorrect (the document does not yet exist but the request
    expects a version of "1").

    Order of operations:

    - Request is executed against primary
    - Request is modified (version incremented) so it can be sent to replicas
    - Engine's translog is fsync'd if necessary (failing, and throwing an exception)
    - Modified request is retried against new primary

    This change ignores the exception where the engine is already closed
    when syncing the translog (similar to how we ignore exceptions when
    refreshing the shard if the ?refresh=true flag is used).

commit 4ac68bb1658688550ced0c4f479dee6d8b617777
Author: Shay Banon <kimchy@gmail.com>
Date:   Tue Jul 21 22:37:29 2015 +0200

    Replica allocator unit tests
    First batch of unit tests to verify the behavior of replica allocator

commit 94609fc5943c8d85adc751b553847ab4cebe58a3
Author: Jason Tedor <jason@tedor.me>
Date:   Tue Jul 21 14:04:46 2015 -0400

    Correctly list blobs in Azure storage to prevent snapshot corruption and do not unnecessarily duplicate Lucene segments in Azure Storage

    This commit addresses an issue that was leading to snapshot corruption for snapshots stored as blobs in Azure Storage.

    The underlying issue is that in cases when multiple snapshots of an index were taken and persisted into Azure Storage, snapshots subsequent
    to the first would repeatedly overwrite the snapshot files. This issue does render useless all snapshots except the final snapshot.

    The root cause of this is due to String concatenation involving null. In particular, to list all of the blobs in a snapshot directory in
    Azure the code would use the method listBlobsByPrefix where the prefix is null. In the listBlobsByPrefix method, the path keyPath + prefix
    is constructed. However, per 5.1.11, 5.4 and 15.18.1 of the Java Language Specification, the reference null is first converted to the string
    "null" before performing the concatenation. This leads to no blobs being returned and therefore the snapshot mechanism would operate as if
    it were writing the first snapshot of the index. The fix is simply to check if prefix is null and handle the concatenation accordingly.

    Upon fixing this issue so that subsequent snapshots would no longer overwrite earlier snapshots, it was discovered that the snapshot metadata
    returned by the listBlobsByPrefix method was not sufficient for the snapshot layer to detect whether or not the Lucene segments had already
    been copied to the Azure storage layer in an earlier snapshot. This led the snapshot layer to unnecessarily duplicate these Lucene segments
    in Azure Storage.

    The root cause of this is due to known behavior in the CloudBlobContainer.getBlockBlobReference method in the Azure API. Namely, this method
    does not fetch blob attributes from Azure. As such, the lengths of all the blobs appeared to the snapshot layer to be of length zero and
    therefore they would compare as not equal to any new blobs that the snapshot layer is going to persist. To remediate this, the method
    CloudBlockBlob.downloadAttributes must be invoked. This will fetch the attributes from Azure Storage so that a proper comparison of the
    blobs can be performed.

    Closes elastic/elasticsearch-cloud-azure#51, closes elastic/elasticsearch-cloud-azure#99

commit cf1d481ce5dda0a45805e42f3b2e0e1e5d028b9e
Author: Lee Hinman <lee@writequit.org>
Date:   Mon Jul 20 08:41:55 2015 -0600

    Unit tests for `nodesAndVersions` on shared filesystems

    With the `recover_on_any_node` setting, these unit tests check that the
    correct node list and versions are returned.

commit 3c27cc32395c3624f7c794904d9ea4faf2eccbfb
Author: Robert Muir <rmuir@apache.org>
Date:   Tue Jul 21 14:15:59 2015 -0400

    don't fail junit4 integration tests if there are no tests.

    instead fail the failsafe plugin, which means the external cluster will still get shut down

commit 95d2756c5a8c21a157fa844273fc83dfa3c00aea
Author: Alexander Reelsen <alexander@reelsen.net>
Date:   Tue Jul 21 17:16:53 2015 +0200

    Testing: Fix help displaying tests under windows

    The help files are using a unix based file separator, where as
    the test relies on the help being based on the file system separator.

    This commit fixes the test to remove all `\r` characters before
    comparing strings.

    The test has also been moved into its own CliToolTestCase, as it does
    not need to be an integration test.

commit 944f06ea36bd836f007f8eaade8f571d6140aad9
Author: Clinton Gormley <clint@traveljury.com>
Date:   Tue Jul 21 18:04:52 2015 +0200

    Refactored check_license_and_sha.pl to accept a license dir and package path

    In preparation for the move to building the core zip, tar.gz, rpm, and deb as separate modules, refactored check_license_and_sha.pl to:

    * accept a license dir and path to the package to check on the command line
    * to be able to extract zip, tar.gz, deb, and rpm
    * all packages except rpm will work on Windows

commit 2585431e8dfa5c82a2cc5b304cd03eee9bed7a4c
Author: Chris Earle <pickypg@users.noreply.github.com>
Date:   Tue Jul 21 08:35:28 2015 -0700

    Updating breaking changes

    - field names cannot be mapped with `.` in them
    - fixed asciidoc issue where the list was not recognized as a list

commit de299b9d3f4615b12e2226a1e2eff5a38ecaf15f
Author: Shay Banon <kimchy@gmail.com>
Date:   Tue Jul 21 13:27:52 2015 +0200

    Replace primaryPostAllocated flag and use UnassignedInfo
    There is no need to maintain additional state as to if a primary was allocated post api creation on the index routing table, we hold all this information already in the UnassignedInfo class.
    closes #12374

commit 43080bff40f60bedce5bdbc92df302f73aeb9cae
Author: Alexander Reelsen <alexander@reelsen.net>
Date:   Tue Jul 21 15:45:05 2015 +0200

    PluginManager: Fix bin/plugin calls in scripts/bats test

    The release and smoke test python scripts used to install
    plugins in the old fashion.

    Also the BATS testing suite installed/removed plugins in that
    way. Here the marvel tests have been removed, as marvel currently
    does not work with the master branch.

    In addition documentation has been updated as well, where it was
    still missing.

commit b81ccba48993bc13c7678e6d979fd96998499233
Author: Boaz Leskes <b.leskes@gmail.com>
Date:   Tue Jul 21 11:37:50 2015 +0200

    Discovery: make sure NodeJoinController.ElectionCallback is always called from the update cluster state thread

    This is important for correct handling of the joining thread. This causes assertions to trip in our test runs. See http://build-us-00.elastic.co/job/es_g1gc_master_metal/11653/ as an example

    Closes #12372

commit 331853790bf29e34fb248ebc4c1ba585b44f5cab
Author: Boaz Leskes <b.leskes@gmail.com>
Date:   Tue Jul 21 15:54:36 2015 +0200

    Remove left over no commit from TransportReplicationAction

    It asks to double check thread pool rejection. I did and don't see problems with it.

commit e5724931bbc1603e37faa977af4235507f4811f5
Author: Alexander Reelsen <alexander@reelsen.net>
Date:   Tue Jul 21 15:31:57 2015 +0200

    CliTool: Various PluginManager fixes

    The new plugin manager parser was not called correctly in the scripts.
    In addition the plugin manager now creates a plugins/ directory in case
    it does not exist.

    Also the integration tests called the plugin manager in the deprecated way.

commit 7a815a370f83ff12ffb12717ac2fe62571311279
Author: Alexander Reelsen <alexander@reelsen.net>
Date:   Tue Jul 21 13:54:18 2015 +0200

    CLITool: Port PluginManager to use CLITool

    In order to unify the handling and reuse the CLITool infrastructure
    the plugin manager should make use of this as well.

    This obsolets the -i and --install options but requires the user
    to use `install` as the first argument of the CLI.

    This is basically just a port of the existing functionality, which
    is also the reason why this is not a refactoring of the plugin manager,
    which will come in a separate commit.

commit 7f171eba7b71ac5682a355684b6da703ffbfccc7
Author: Martijn van Groningen <martijn.v.groningen@gmail.com>
Date:   Tue Jul 21 10:44:21 2015 +0200

    Remove custom execute local logic in TransportSingleShardAction and TransportInstanceSingleOperationAction and rely on transport service to execute locally. (forking thread etc.)

    Change TransportInstanceSingleOperationAction to have shardActionHandler to, so we can execute locally without endless spinning.

commit 0f38e3eca6b570f74b552e70b4673f47934442e1
Author: Ryan Ernst <ryan@iernst.net>
Date:   Tue Jul 21 17:36:12 2015 -0700

    More readMetadata tests and pickiness

commit 880b47281bd69bd37807e8252934321b089c9f8e
Author: Ryan Ernst <ryan@iernst.net>
Date:   Tue Jul 21 14:42:09 2015 -0700

    Started unit tests for plugin service

commit cd7c8ddd7b8c4f3457824b493bffb19c156c7899
Author: Robert Muir <rmuir@apache.org>
Date:   Tue Jul 21 07:21:07 2015 -0400

    fix tests

commit 673454f0b14f072f66ed70e32110fae4f7aad642
Author: Robert Muir <rmuir@apache.org>
Date:   Tue Jul 21 06:58:25 2015 -0400

    refactor pluginservice
2015-07-22 10:45:45 -04:00
Jason Tedor 96c245c190 Merge pull request #12380 from jasontedor/fix/elasticsearch-cloud-azure-51
Correctly list blobs in Azure Storage to prevent snapshot corruption and do not unnecessarily duplicate Lucene segments in Azure Storage
2015-07-21 16:47:04 -04:00
Jason Tedor 0b8b147a74 Correctly list blobs in Azure storage to prevent snapshot corruption and do not unnecessarily duplicate Lucene segments in Azure Storage
This commit addresses an issue that was leading to snapshot corruption for snapshots stored as blobs in Azure Storage.

The underlying issue is that in cases when multiple snapshots of an index were taken and persisted into Azure Storage, snapshots subsequent
to the first would repeatedly overwrite the snapshot files. This issue does render useless all snapshots except the final snapshot.

The root cause of this is due to String concatenation involving null. In particular, to list all of the blobs in a snapshot directory in
Azure the code would use the method listBlobsByPrefix where the prefix is null. In the listBlobsByPrefix method, the path keyPath + prefix
is constructed. However, per 5.1.11, 5.4 and 15.18.1 of the Java Language Specification, the reference null is first converted to the string
"null" before performing the concatenation. This leads to no blobs being returned and therefore the snapshot mechanism would operate as if
it were writing the first snapshot of the index. The fix is simply to check if prefix is null and handle the concatenation accordingly.

Upon fixing this issue so that subsequent snapshots would no longer overwrite earlier snapshots, it was discovered that the snapshot metadata
returned by the listBlobsByPrefix method was not sufficient for the snapshot layer to detect whether or not the Lucene segments had already
been copied to the Azure storage layer in an earlier snapshot. This led the snapshot layer to unnecessarily duplicate these Lucene segments
in Azure Storage.

The root cause of this is due to known behavior in the CloudBlobContainer.getBlockBlobReference method in the Azure API. Namely, this method
does not fetch blob attributes from Azure. As such, the lengths of all the blobs appeared to the snapshot layer to be of length zero and
therefore they would compare as not equal to any new blobs that the snapshot layer is going to persist. To remediate this, the method
CloudBlockBlob.downloadAttributes must be invoked. This will fetch the attributes from Azure Storage so that a proper comparison of the
blobs can be performed.

Closes elastic/elasticsearch-cloud-azure#51, closes elastic/elasticsearch-cloud-azure#99
2015-07-21 16:33:33 -04:00
Alexander Reelsen 2f54b89a23 CLITool: Port PluginManager to use CLITool
In order to unify the handling and reuse the CLITool infrastructure
the plugin manager should make use of this as well.

This obsolets the -i and --install options but requires the user
to use `install` as the first argument of the CLI.

This is basically just a port of the existing functionality, which
is also the reason why this is not a refactoring of the plugin manager,
which will come in a separate commit.
2015-07-21 14:15:39 +02:00
Robert Muir a0a6299840 Update randomizedtesting to 2.1.16 2015-07-20 11:02:50 -04:00
Robert Muir 9e7882e604 protect logic under skipTests for stupid pom packaging 2015-07-16 20:49:16 -04:00
Robert Muir 6b7561ac9a Use junit4 for running integration tests, too
failsafe uses surefire, which sucks. It also mean integ tests act alien right now.
I would rather have the consistency, e.g. things formatted the same way, running integ tests under security manager, etc.
2015-07-16 19:43:33 -04:00
Robert Muir 68143dedf2 Refactor integration tests
1. tests don't have a bogus test dependency on zips anymore,
   instead we handle this in pre-integration-test. This reduces
   lots of confusion for e.g. mvn clean test.
2. refactor integ logic so that core/ and plugin/ share it.
   previously they were duplicates but the above change simplifies life.
   it also makes it easier for doing more interesting stuff
2015-07-14 23:37:04 -04:00
Simon Willnauer 7db293c616 Generify Index and Shard exceptions
Today we have a intermediate hierarchy for shard and index exceptions
which makes it hard to introduce generic exceptions like ResourceNotFoundException
intoduced in this commit. This commit breaks up the hierarchy by adding index and shard
as a special internal header that gets rendered for every exception that fills that header.
This commit removes dedicated exceptions like `IndexMissingException` or
`IndexShardMissingException` in favour of `ResourceNotFoundException`
2015-07-14 16:31:49 +02:00
uboness b40186652c updated the elasticsearch versioning format
Moving to from `X.Y.Z.beta1`/`X.Y.Z.RC1` to `X.Y.Z-beta1`/`X.Y.Z-rc1`
2015-07-13 20:26:37 +02:00
Jack Conradson c1137b3b78 Add script type and script name to error messages
Modified ScriptEngineService to pass in a CompiledScript object
with newly added name and type member variables.
This can in turn be used to give better scripting error messages
with the type of script used and the name of the script.

Required slight modifications to the caching mechanism.

Note that this does not enforce good behavior in that plugins will
have to write exceptions that also output the name of the script
in order to be effective. There was no way to wrap the script
methods in a try/catch block properly further up the chain because
many have script-like objects passed back that can be run at a
later time.

closes #6653
closes #11449
2015-07-10 18:27:48 -07:00
Martijn van Groningen 52859e3a52 Internal: refactored MetaData to split the concrete index name resolution to IndexNameExpressionResolver.
Changes in a nutshell:
* All expression logic is now encapsulated by ExpressionResolver interface.
* MetaData#convertFromWildcards() gets replaced by WildcardExpressionResolver.
* All of the indices expansion methods are being moved from MetaData class to the new IndexNameExpressionResolver class.
* All single index expansion optimisations are removed.

The logic for resolving a concrete index name from an expression has been moved from MetaData to IndexExpressionResolver. The logic has been cleaned up and simplified were was possible without breaking bwc.

Also the notion of aliasOrIndex has been changed to index expression.

The IndexNameExpressionResolver translates index name expressions into concrete indices. The list of index name expressions are first delegated to the known ExpressionResolverS. An ExpressionResolver is responsible for translating if possible an expression into another expression (possibly but not required this can be concrete indices or aliases) otherwise the expressions are left untouched. Concretely this means converting wildcard expressions into concrete indices or aliases, but in the future other implementations could convert expressions based on different rules.

To prevent many overloading of methods, DocumentRequest extends now from IndicesRequest. All implementation of DocumentRequest already did implement IndicesRequest indirectly.
2015-07-10 15:18:28 +02:00
Simon Willnauer e0708813a9 Make 2.0.0.beta1-SNAPSHOT the current version.
Today everything is tight to having the next version as the latest.
In order to work towards 2.0.0.beta1 we need to fix all the usage of
2.0.0-SNAPSHOT to reflect the version we will release soon.
Usually we do this on the release branch but to simplify things I wanna
keep this on master for now and move to 2.1.0-SNAPSHOT on master once
we created a 2.0 branch.

Closes #12148
2015-07-09 21:24:32 +02:00
Robert Muir a4dba6256d Make integ tests antfile a property, so it can be changed 2015-07-09 00:39:28 -04:00
David Pilato 02874ea411 [build] explicitly add http-client dependency
As discussed in the PR https://github.com/elastic/elasticsearch/pull/12036#issuecomment-119584570
2015-07-08 16:17:27 +02:00
David Pilato 88cf29b903 [build] cloud-aws doesn't register s3 repos anymore
Reported in https://github.com/elastic/elasticsearch/issues/11647#issuecomment-118523861

> btw, I think you broke some plugins on Master, cloud-aws doesn't register s3 repos anymore.

```
org.elasticsearch.common.inject.CreationException: Guice creation errors:

1) Error injecting constructor, java.lang.NoClassDefFoundError: org/apache/http/protocol/HttpContext
  at org.elasticsearch.repositories.s3.S3Repository.<init>(Unknown Source)
  while locating org.elasticsearch.repositories.s3.S3Repository
  while locating org.elasticsearch.repositories.Repository

1 error
	at org.elasticsearch.common.inject.internal.Errors.throwCreationExceptionIfErrorsExist(Errors.java:344)
	at org.elasticsearch.common.inject.InjectorBuilder.injectDynamically(InjectorBuilder.java:178)
	at org.elasticsearch.common.inject.InjectorBuilder.build(InjectorBuilder.java:110)
	at org.elasticsearch.common.inject.InjectorImpl.createChildInjector(InjectorImpl.java:140)
	at org.elasticsearch.common.inject.ModulesBuilder.createChildInjector(ModulesBuilder.java:69)
	at org.elasticsearch.repositories.RepositoriesService.createRepositoryHolder(RepositoriesService.java:404)
	at org.elasticsearch.repositories.RepositoriesService.registerRepository(RepositoriesService.java:368)
	at org.elasticsearch.repositories.RepositoriesService.access$100(RepositoriesService.java:55)
	at org.elasticsearch.repositories.RepositoriesService$1.execute(RepositoriesService.java:110)
	at org.elasticsearch.cluster.service.InternalClusterService$UpdateTask.run(InternalClusterService.java:378)
	at org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.runAndClean(PrioritizedEsThreadPoolExecutor.java:209)
	at org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.run(PrioritizedEsThreadPoolExecutor.java:179)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NoClassDefFoundError: org/apache/http/protocol/HttpContext
	at com.amazonaws.AmazonWebServiceClient.<init>(AmazonWebServiceClient.java:129)
	at com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:432)
	at com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:414)
	at org.elasticsearch.cloud.aws.InternalAwsS3Service.getClient(InternalAwsS3Service.java:153)
	at org.elasticsearch.cloud.aws.InternalAwsS3Service.client(InternalAwsS3Service.java:82)
	at org.elasticsearch.repositories.s3.S3Repository.<init>(S3Repository.java:125)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
	at org.elasticsearch.common.inject.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:56)
	at org.elasticsearch.common.inject.ConstructorInjector.construct(ConstructorInjector.java:86)
	at org.elasticsearch.common.inject.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:104)
	at org.elasticsearch.common.inject.FactoryProxy.get(FactoryProxy.java:54)
	at org.elasticsearch.common.inject.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:47)
	at org.elasticsearch.common.inject.InjectorImpl.callInContext(InjectorImpl.java:865)
	at org.elasticsearch.common.inject.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:43)
	at org.elasticsearch.common.inject.Scopes$1$1.get(Scopes.java:59)
	at org.elasticsearch.common.inject.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:46)
	at org.elasticsearch.common.inject.InjectorBuilder$1.call(InjectorBuilder.java:201)
	at org.elasticsearch.common.inject.InjectorBuilder$1.call(InjectorBuilder.java:193)
	at org.elasticsearch.common.inject.InjectorImpl.callInContext(InjectorImpl.java:858)
	at org.elasticsearch.common.inject.InjectorBuilder.loadEagerSingletons(InjectorBuilder.java:193)
	at org.elasticsearch.common.inject.InjectorBuilder.injectDynamically(InjectorBuilder.java:175)
	... 13 more
Caused by: java.lang.ClassNotFoundException: org.apache.http.protocol.HttpContext
	at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	... 37 more
```

Closes #12034.
2015-07-08 15:37:24 +02:00
David Pilato 9519100eca [test] fix missing REST specs
Something went wrong with my last commit.

Fixing it here.
2015-07-08 15:22:43 +02:00
David Pilato 97019ce3e9 [python] move integration tests to REST tests
We can keep only unit tests in plugins instead of starting each time a local node and running tests against it.

Also follow up of #12091
2015-07-08 15:19:26 +02:00
David Pilato c99bc81bdd [Javascript] move integration tests to REST tests
We can keep only unit tests in plugins instead of starting each time a local node and running tests against it.

Also follow up of #12091
2015-07-08 15:19:26 +02:00
David Pilato 19b2e77bc2 [Stempel] move integration tests to REST tests
We can keep only unit tests in plugins instead of starting each time a local node and running tests against it.

Also follow up of #12091
2015-07-08 15:19:26 +02:00
David Pilato 7a1255d520 [Smartcn] move integration tests to REST tests
We can keep only unit tests in plugins instead of starting each time a local node and running tests against it.

Also follow up of #12091
2015-07-08 15:19:26 +02:00
David Pilato 4738fa04b1 [ICU] move integration tests to REST tests
We can keep only unit tests in plugins instead of starting each time a local node and running tests against it.

Also follow up of #12091

Tests can use more than one JVM

We don't need anymore to set the number of jvm to run tests as we moved IT to Rest Tests
For all plugins but cloud plugins which will require another way for running integration tests.
2015-07-08 15:19:26 +02:00
David Pilato 786d034d75 [phonetic] move integration tests to REST tests
Fix for #12095
2015-07-08 10:17:43 +02:00
David Pilato b970fbacee [phonetic] move integration tests to REST tests
We can keep only unit tests in plugins instead of starting each time a local node and running tests against it.

Also follow up of #12091
2015-07-08 10:04:18 +02:00
Robert Muir 99ab4e70c0 wait for yellow in integration tests. closes #12099 2015-07-07 17:11:29 -04:00
Clinton Gormley 956123157b Added rest tests for language plugins 2015-07-07 19:26:31 +02:00
Clinton Gormley 7aac4d5417 Added rest tests for cloud plugins 2015-07-07 19:26:31 +02:00
Clinton Gormley eefb3cf41c Added rest tests for analysis-phonetic plugin 2015-07-07 19:26:31 +02:00
David Pilato 7843c63aa3 [kuromoji] move integration tests to REST tests
We can keep only unit tests in plugins instead of starting each time a local node and running tests against it.
2015-07-07 17:40:54 +02:00
Robert Muir 0736f97cfb add stempel integration tests 2015-07-07 01:27:25 -04:00
Robert Muir 5bcc247eda Add integration tests for smart chinese 2015-07-07 01:14:39 -04:00
Robert Muir f412c5a6ed add kuromoji integration tests 2015-07-07 00:51:52 -04:00
Robert Muir c88c12c6c8 Add rest tests for analysis-icu 2015-07-07 00:15:49 -04:00
Robert Muir 9a146b9e75 Get delete by query rest tests running 2015-07-06 15:13:50 -04:00
Robert Muir 1c114110c5 integration tests need the zip 2015-07-06 12:29:30 -04:00
David Pilato e7a6b51bab [maven] change groupId / artifactId
When we generate our project, we can get something like:

```
├── dev-tools
├── elasticsearch
├── elasticsearch-parent
├── elasticsearch-plugin
├── plugin
│   ├── elasticsearch-analysis-icu
│   ├── elasticsearch-analysis-kuromoji
│   ├── elasticsearch-analysis-phonetic
│   ├── elasticsearch-analysis-smartcn
│   ├── elasticsearch-analysis-stempel
│   ├── elasticsearch-cloud-aws
│   ├── elasticsearch-cloud-azure
│   ├── elasticsearch-cloud-gce
│   ├── elasticsearch-delete-by-query
│   ├── elasticsearch-lang-javascript
│   └── elasticsearch-lang-python
├── rest-api-spec
└── securemock
```

I propose here to use a common naming for artifacts: start always with `elasticsearch-`.
Also, move `elasticsearch-plugin` to `org.elasticsearch.plugin` groupId.

So we could have:

```
├── elasticsearch
├── elasticsearch-dev-tools
├── elasticsearch-parent
├── elasticsearch-rest-api-spec
├── elasticsearch-securemock
├── plugin
│   ├── elasticsearch-analysis-icu
│   ├── elasticsearch-analysis-kuromoji
│   ├── elasticsearch-analysis-phonetic
│   ├── elasticsearch-analysis-smartcn
│   ├── elasticsearch-analysis-stempel
│   ├── elasticsearch-cloud-aws
│   ├── elasticsearch-cloud-azure
│   ├── elasticsearch-cloud-gce
│   ├── elasticsearch-delete-by-query
│   ├── elasticsearch-lang-javascript
│   ├── elasticsearch-lang-python
│   └── elasticsearch-plugin
```
2015-07-06 17:17:07 +02:00
Tanguy Leroux 9495816cb7 Remove sigar completely 2015-07-03 15:49:17 +02:00
David Pilato e429b8d190 [build] include in plugins only needed jars
Follow up for https://github.com/elastic/elasticsearch-analysis-kuromoji/issues/61

We don't shade anymore elasticsearch dependencies, so plugins might include jars in the distribution ZIP file which might not be needed anymore.

For example, `elasticsearch-cloud-aws` comes with:

```
Archive:  cloud-aws/target/releases/elasticsearch-cloud-aws-2.0.0-SNAPSHOT.zip
  Length     Date   Time    Name
 --------    ----   ----    ----
  1920788  05-18-15 09:42   aws-java-sdk-ec2-1.9.34.jar
   503963  05-18-15 09:42   aws-java-sdk-core-1.9.34.jar
   232771  01-19-15 09:24   commons-codec-1.6.jar
   915096  01-19-15 09:24   jackson-databind-2.3.2.jar
   252288  05-18-15 09:42   aws-java-sdk-kms-1.9.34.jar
    62050  01-19-15 09:24   commons-logging-1.1.3.jar
   282269  10-31-14 13:19   httpcore-4.3.2.jar
    35058  01-19-15 09:24   jackson-annotations-2.3.0.jar
   229998  05-29-15 12:28   jackson-core-2.5.3.jar
   589289  01-19-15 09:24   joda-time-2.7.jar
   562858  05-18-15 09:42   aws-java-sdk-s3-1.9.34.jar
   590533  10-31-14 13:19   httpclient-4.3.5.jar
    44854  06-12-15 19:22   elasticsearch-cloud-aws-2.0.0-SNAPSHOT.jar
 --------                   -------
  6221815                   13 files
```

A lot of those files are already distributed with elasticsearch itself so classes are available within the classloader.

We mark all es core dependencies as provided in plugins.
We also remove `groupId` as already defined in parent pom.
And we remove non needed licenses files as some jars are not included anymore in plugins.

Closes #11647.
2015-07-01 21:37:27 +02:00
Robert Muir 46256e25f6 fix licensing 2015-06-30 00:55:11 -04:00
Robert Muir b58eb35dfa detect jar hell in tests better and fix more stuff 2015-06-30 00:12:40 -04:00
Robert Muir f8fbf1fa0c Fail startup (and tests) on jar hell 2015-06-29 23:13:45 -04:00
David Pursehouse b49e66c3a1 Replace references to ImmutableSettings with Settings
ImmutableSettings was merged into Settings in commit 4873070.

Change-Id: I06bd0150381d131593920c2328c46beacf49661f
2015-06-24 14:54:53 +09:00
Clinton Gormley d8a186e121 Added LICENSE and NOTICE files for all plugins 2015-06-23 12:50:31 +02:00
Simon Willnauer 8b60083dda Add high-level javadocs to delete-by-query
This commit adds high-level javadocs to the delete-by-query explaining
it's semantics and why it's moved to a plugin.

Closes #11723
2015-06-22 14:34:16 +02:00
Colin Goodheart-Smithe 772d0cc6e7 Build: Make rest-spec-api a project so eclipse build works
The change makes rest-spec-api a project in the same way as we build dev-tools. it packages the tests and api in a bundle using the maven-remote-resources-plugin and uses the same plugin in the plugins and core pom to unpack the rest-api-spec into the target directory and references the rest tests there in the test resources.

The main stimulus for this change is that for those using Eclipse the current build does not work. After running `mvn eclipse:eclipse` the Eclipse IDE errors because the rest-api-spec is outside of the project scope, meaning that every time the command is run (required whenever any dependencies change), the class path of all the projects has to be manually fixed.
2015-06-22 11:41:44 +01:00
Simon Willnauer 895a7dd03c [TEST] assume assertions are enabled 2015-06-22 11:25:02 +02:00
David Pilato 42f852d399 [test] ByteSizeUnit.BYTES should be explicitly set
With a recent change in core, we don't support anymore non explicit byte size units when setting values.
This commit fix that in azure repository. Otherwise, tests can't be executed.
2015-06-18 17:29:10 +02:00
Simon Willnauer 5808102d19 Upgrade AWS dependency to 1.10.0
This also apgrades JodaTime to 2.8.0.
2015-06-18 14:04:38 +02:00
Tanguy Leroux 8bd3d7e4a4 Fix number of deleted/missing documents in Delete-By-Query
The deleted counter is incremented even if the document is missing. Also, this commit ensures that the scroll id is cleared even if no documents are found by the scan request.
2015-06-18 13:09:42 +02:00
Simon Willnauer 90f9b5f60d Allow to opt-out of loading packaged REST tests
this is really just a workaround for plugins to run their own
REST tests instead of the core ones. It opts out of the rest test
loading from the core jar file and tries to load from the classpath instead.
Eventually we need to fix this infrastrucutre to move away from parameterized
tests such that subclasses can override behavior.

Closes #11721
2015-06-17 20:37:59 +02:00
Tanguy Leroux ba3540675a Add delete-by-query plugin
The delete by query plugin adds support for deleting all of the documents (from one or more indices) which match the specified query. It is a replacement for the problematic delete-by-query functionality which has been removed from Elasticsearch core in 2.0. Internally, it uses the Scan/Scroll and Bulk APIs to delete documents in an efficient and safe manner. It is slower than the old delete-by-query functionality, but fixes the problems with the previous implementation.

Closes #7052
2015-06-17 14:52:25 +02:00
David Pilato fbf83e3568 Merge pull request #11637 from dadoonet/plugins/elasticsearch-provided
[build] mark elasticsearch as provided in plugins

When we build a plugin, we suppose it will be executed within elasticsearch server.
So we should mark it as `provided`.

If a java developer needs to embed the plugin and elasticsearch, it will make sense to declare both in its `pom.xml` file.
2015-06-16 09:31:24 +02:00
David Pilato bd5c7d0ea2 [maven] clean pom.xml
In Maven parent project, in dependency management, we should only declare which versions of 3rd party jars we want to use but not force any scope.
It makes then more obvious in modules what is exactly the scope of any dependency.

For example, one could imagine importing `jimfs` as a `compile` dependency in another module/plugin with:

```xml
<dependency>
   <groupId>com.google.jimfs</groupId>
   <artifactId>jimfs</artifactId>
</dependency>
```

But it won't work as expected as the default maven `scope` should be `compile` but here it's `test` as defined in the parent project.

So, if you want to use this lib for tests, you should simply define:

```xml
<dependency>
   <groupId>com.google.jimfs</groupId>
   <artifactId>jimfs</artifactId>
   <scope>test</scope>
</dependency>
```

We also remove `maven-s3-wagon` from gce plugin as it's not used.
2015-06-15 17:08:15 +02:00
Simon Willnauer 364cbbd282 [TEST] Fix JavaScript tests - case matters here 2015-06-13 10:34:36 +02:00
Simon Willnauer 09a30e7eee Remove deprecated script APIs
The script APIs have been deprecated long ago we can now remove them.
This commit still keeps the parsing code since it might be used in a
query that is still stuck in transaction log. This issue should be discussed
elsewhere.

Closes #11619
2015-06-13 10:11:43 +02:00
David Pilato 7c365daf67 [build] mark elasticsearch as provided in plugins
When we build a plugin, we suppose it will be executed within elasticsearch server.
So we should mark it as `provided`.

If a java developer needs to embed the plugin and elasticsearch, it will make sense to declare both in its `pom.xml` file.
2015-06-12 18:53:35 +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
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
Boaz Leskes 8f2dc10832 AwaitFix to two_nodes_should_run_using_public_ip
https://github.com/elastic/elasticsearch/issues/11533
2015-06-08 12:45:48 +02:00
Simon Willnauer 5beed150ed add cloud-aws module 2015-06-05 13:12:38 +02:00
Simon Willnauer b3088d50a1 migrate branch for cloud-aws 2015-06-05 13:12:38 +02:00
Simon Willnauer a704a9ff83 add cloud-aws module 2015-06-05 13:12:36 +02:00
Simon Willnauer 7c23416b4a add cloud-azure module 2015-06-05 13:12:34 +02:00
Simon Willnauer 68ba0d9bab migrate branch for cloud-azure 2015-06-05 13:12:34 +02:00
Simon Willnauer 553c913aa3 add cloud-azure module 2015-06-05 13:12:32 +02:00
Simon Willnauer f10a971e8f add cloud-gce module 2015-06-05 13:12:30 +02:00
Simon Willnauer 3ab627b72f migrate branch for cloud-gce 2015-06-05 13:12:30 +02:00
Simon Willnauer 4e9e74da97 add cloud-gce module 2015-06-05 13:12:28 +02:00
Simon Willnauer 682ad1e5f9 add analysis-icu module 2015-06-05 13:12:26 +02:00
Simon Willnauer f3228e394d migrate branch for analysis-icu 2015-06-05 13:12:26 +02:00
Simon Willnauer ed3cc8d034 add analysis-icu module 2015-06-05 13:12:23 +02:00
Simon Willnauer d0be9e5f7a add analysis-phonetic module 2015-06-05 13:12:22 +02:00
Simon Willnauer 0d328b07bd migrate branch for analysis-phonetic 2015-06-05 13:12:21 +02:00
Simon Willnauer 8d9ff57bc3 add analysis-phonetic module 2015-06-05 13:12:20 +02:00
Simon Willnauer 1cb86507d4 add analysis-stempel module 2015-06-05 13:12:18 +02:00
Simon Willnauer 263bc6bff8 migrate branch for analysis-stempel 2015-06-05 13:12:17 +02:00
Simon Willnauer 78f9ee6d1b add analysis-stempel module 2015-06-05 13:12:16 +02:00
Simon Willnauer 3ca26fa1b4 add analysis-smartcn module 2015-06-05 13:12:14 +02:00
Simon Willnauer 87df2b21da migrate branch for analysis-smartcn 2015-06-05 13:12:14 +02:00
Simon Willnauer 6f8c2c7936 add analysis-smartcn module 2015-06-05 13:12:12 +02:00
Simon Willnauer 69f425daff add analysis-kuromoji module 2015-06-05 13:12:09 +02:00
Simon Willnauer 7294d27e5c migrate branch for analysis-kuromoji 2015-06-05 13:12:09 +02:00
Simon Willnauer 9b41b94459 add analysis-kuromoji module 2015-06-05 13:12:07 +02:00
Simon Willnauer 96101d3e7e add modules section 2015-06-05 13:12:05 +02:00
Simon Willnauer 05db5dc2c8 create parent pom project from its original location 2015-06-05 13:12:05 +02:00
Shay Banon 473b0f4dff Migrate built in plugins to their own repos, closes #1520. 2011-12-05 21:00:12 +02:00
Shay Banon f18ad903a9 Upgrade to Lucene 3.5, closes #1502. 2011-11-27 12:57:26 +02:00
Aaron Sutter 8a5f767286 changed writeObject to writeArray
dealing with json array not json map
2011-11-24 09:50:02 +02:00
Shay Banon e8d91a66b6 AWS Plugin: Add more automatic region configuration, closes #1490. 2011-11-23 18:09:27 +02:00
Shay Banon b2e329a609 another go at trying to solve: BigCouch returns JSON array for sequence #1478. 2011-11-23 09:21:01 +02:00
Shay Banon d69aa525b9 upgrade to aws sdk 1.2.12 2011-11-22 14:21:41 +02:00
Shay Banon 0c384af9bf Thrift transport handling unexpected URI hangs, closes #1484. 2011-11-22 10:44:10 +02:00
Aman Gupta 5deffec84f read bulk_size/drop_threshold from twitter river configuration as documented 2011-11-20 12:36:21 +02:00
Florian Gilcher bf5d722748 Add HTTPS handling to CouchDB river
Introduces 2 new configuration options:

* couchProtocol: http/https
  - Describes the protocol in use.
* no_verify: true/false
  - Allows to disable hostname verification for hosts with problematic certs
2011-11-20 11:36:27 +02:00
Shay Banon 8e9f01a0f7 BigCouch returns JSON array for sequence, closes #1478. 2011-11-18 13:35:28 +02:00
Shay Banon 7dfe48c33b Couchdb River: since changes parameter (seq) is not url encoded, closes #1470. 2011-11-15 23:40:41 +02:00
Shay Banon 99d31cc8c8 better handlign of open channels 2011-11-11 22:22:15 +02:00
Shay Banon 6c275098ba move to formal twitter4j 2.2.5 2011-10-25 00:30:22 +02:00
Shay Banon ea4462fc39 fix twitter distribution 2011-10-20 00:32:16 +02:00
Shay Banon 8c776bee97 use twitter4j 2.5 snapshot version as its the only version that works with the change of the endpoint 2011-10-14 17:46:35 +02:00
Pedro Alves 7fb32a0287 - Fix for [1393] 2011-10-14 17:16:49 +02:00
Shay Banon 5c783c8ef1 Upgrade to Apache Tika 0.10, closes #1372. 2011-10-05 15:21:56 +02:00
Shay Banon 3d4c31de91 associate a version with a discovery node 2011-10-05 12:42:27 +02:00
Shay Banon 79b63b3e07 add junit to the test dep when running groovy tests 2011-09-26 21:20:25 +03:00
Shay Banon 8a63e58e1a Add `cloud.node.auto_attributes` setting, when set to `true`, will automatically add aws ec2 related attributes to the node (like availability zone), closes #1364. 2011-09-26 21:01:23 +03:00
Shay Banon 25fe56c462 more javadoc 2011-09-22 16:11:22 +03:00
Shay Banon f3106de23f suppress unchecked compile warnings 2011-09-18 21:51:42 +03:00
Shay Banon 74079c8a13 Upgrade to Lucene 3.4.0, closes #1335. 2011-09-15 12:16:58 +03:00
Shay Banon a6eaf8c2c3 upgrade to aws sdk 1.2.7 2011-09-09 16:57:30 +03:00
Shay Banon 189d117dcb upgrade to groovy 1.8.2 2011-09-07 10:50:12 +03:00
Shay Banon 9f427010bf more to ABQ from LBQ is relevant places 2011-09-05 12:34:20 +03:00
Shay Banon 847b10dc99 Support setting ctx._parent in CouchDB-River, closes #1300. 2011-09-04 17:29:25 +03:00
Shay Banon cb7242f84e add indices stats to groovy client 2011-09-01 21:15:00 +03:00
Shay Banon 4e17543bee fix more like this call in groovy client 2011-09-01 21:11:26 +03:00
Shay Banon 2bc2b3f4e2 add percolate api to groovy client 2011-09-01 21:10:46 +03:00
Shay Banon b185078554 Java API: ActionFuture#actionGet to automatically unwrap failures, closes #1292. 2011-09-01 00:10:15 +03:00
Shay Banon c8a2f3e6f8 fix failure message 2011-09-01 00:09:16 +03:00
Shay Banon bc1dd108d1 Java API: XContentFactory creation of XContentBuilder to always be "safe", closes #1291. 2011-08-31 21:10:50 +03:00
Shay Banon 48a26f286b upgrade to rhino 1.7R3 2011-08-30 18:47:08 +03:00
Shay Banon 41f0e9fb26 upgrade jython to 2.5.2 2011-08-30 18:42:25 +03:00
Shay Banon d880a6c1b0 cleanup on new ignore_attachments flag in couchdb river 2011-08-29 17:55:06 +03:00
David Pilato 7420e99e7d Update TODO after a brief talk with couchDB team, attachment filter doesn't make sense on server side but only on client side. BTW, we may like to fully support attachments in ES couchDB river as by now only meta information are sent to Elastic Search 2011-08-29 17:49:47 +03:00
David Pilato 1f30681a84 Add ignoreAttachements option for couchDb river 2011-08-29 17:49:46 +03:00
Shay Banon 265b9f0369 CouchDB River: Add throttling when indexing does not keep up with fetching _changes, closes #1269. 2011-08-22 22:18:04 +03:00
Shay Banon 6afbfad089 Enhance transport stats to include rx and tx counters, closes #1254. 2011-08-20 21:37:37 +03:00
Shay Banon 6e81fbc30d rename cluster settings service to node settings service, as it better reflects the fact that settings are applied on the node level 2011-08-20 16:58:39 +03:00
Shay Banon 03217c460a Cluster Update Settings API, closes #1266. 2011-08-20 04:00:41 +03:00
Shay Banon 83d15740a7 Thrift Transport: Uses wrong array offset into the underlying buffer, closes #1232. 2011-08-11 15:30:16 +03:00
Shay Banon d06a7e9fe1 CouchDB River: Custom script does not convert the modified doc properly to be indexed, closes #1225. 2011-08-10 15:06:53 +03:00
Shay Banon 83271d0806 add a test to the new content_type field 2011-08-09 17:53:11 +03:00
Fehmi Can SAĞLAM 892767864f fix issue #1209 2011-08-09 17:36:42 +03:00
Shay Banon eef4ec2f5c Allow setting _index and _type with CouchDB river, closes #1219. 2011-08-09 15:53:13 +03:00
Shay Banon 9503126155 Rest API: Add an `X-Opaque-Id` header, to be returned in the response if exists in the request, closes #1202. 2011-08-03 19:40:25 +03:00
Shay Banon b104c19e7a Groovy Plugins: Upgrade to 1.8.1, closes #1175. 2011-07-28 20:41:15 +03:00
kimchy 09528610c1 cleanup some test code, rename internal masterDoc to rootDoc 2011-07-17 04:32:18 +03:00
kimchy 1a3306912e upgrade to aws sdk 1.2.4 2011-07-16 08:58:48 +03:00
kimchy f2c085a9f9 Fix strange compilation failure under jdk7... 2011-07-11 03:59:15 +03:00
kimchy a8d8eb686e RabbitMQ River: Upgrade to rabbitmq driver 2.5.1, closes #1112. 2011-07-10 04:22:20 +03:00
kimchy ac1240b407 add debug logging for parameters used for ec2 unicast disco 2011-07-07 17:48:14 +03:00
Lukas Vlcek d1ad747824 Fixing plugins description 2011-07-06 17:55:38 +03:00
kimchy 3a7f7664b6 Nested Object/Docs Mapping and Searching, closes #1095. 2011-07-06 17:53:55 +03:00
kimchy 0b59c00e0d Upgrade to Lucene 3.3. closes #1083. 2011-07-01 18:30:06 +03:00
kimchy 72ee0aaee7 Realtime GET, closes #1060. 2011-06-24 09:39:37 +03:00
Igor Motov ae5b963e97 Specify a unique cluster name for all Integration tests 2011-06-19 10:10:34 +03:00
kimchy abd38720f1 Add ec2 specific network hosts, closes #1037. 2011-06-15 22:26:21 +03:00
Paul_Loy e1514aa8e0 reverted adding IOException to NetworkService, return null if cannot resolve name and log 2011-06-15 22:03:16 +03:00
Paul_Loy 64ffd6634a adding CustomNameResolver to NetworkService for ec2 hostname resolving 2011-06-15 22:03:16 +03:00
Paul_Loy 8173f9fb18 removing underscores as they are pre-stripped 2011-06-15 22:03:15 +03:00
Paul_Loy d474025b30 Ec2NameResolver minus commons httpclient 2011-06-15 22:03:15 +03:00
Paul_Loy 6a60bbba1d adding ability for gradle to create eclipse project files and classpaths 2011-06-15 22:03:15 +03:00
kimchy 8bb448473d more optimizations for sharing same analyzers across different indices on the same node 2011-06-14 18:51:34 +03:00
René Scheibe 5f4c6c75ae cleaned Groovy classes * added type information to public methods * removed semicolons * replaced GStrings with Strings 2011-06-12 13:49:19 +03:00
kimchy abfc7f0db4 internal refactoring simplifying the type mapping system 2011-06-04 03:56:01 +03:00
kimchy 0a4e582404 Query Parser Module Refactor, closes #994. 2011-06-03 04:32:30 +03:00
kimchy a9112b4698 Thrift: Upgrade to thrift 0.6.1, closes #986. 2011-06-01 04:46:19 +03:00
kimchy 8267a76747 force the type to be set when using the put mapping API in Java 2011-05-31 16:21:59 +03:00
kimchy 68a56a0b58 optimize generation of rest responses and reduce copying bytes around 2011-05-24 14:12:17 +03:00
kimchy 6805d17fc9 upgrade to aws sdk 1.2.0 2011-05-21 02:08:39 +03:00
kimchy 7379258f2e use different settings for aws proxy port / host 2011-05-03 16:43:52 +03:00
Adam Creeger 8eb6e91eac Adding support for accessing EC2 and S3 over an http proxy. This is configured using the network.proxyHost and network.proxyPort settings. 2011-05-03 16:41:16 +03:00
kimchy 413cbf1713 Upgrade to groovy 1.8.0 2011-04-29 01:06:26 +03:00
kimchy 166493f9d5 properly clean mapper data, and cache some mapping structures 2011-04-17 09:52:29 +03:00
kimchy 85aeaaedd0 update to aws sdk 1.1.9 2011-04-15 01:56:27 +03:00
kimchy 3b72d63035 EC2 Zen Discovery: Automatically use the configured transport port to ping other nodes, closes #854. 2011-04-14 02:13:27 +03:00
kimchy 6061656170 upgrade to groovy 1.7.10 2011-04-06 16:31:25 +03:00
kimchy 5d6e84f206 Upgrade Lucene 3.1: Analyzers, closes #826. 2011-04-04 14:36:13 +03:00
kimchy 4e4495ff1d Upgrade to Lucene 3.1, closes #825. 2011-04-04 12:54:15 +03:00
kimchy 367c9562c6 update to rabbitmq client 2.3.1 2011-03-15 10:08:08 +02:00
kimchy c7b36f113d fix oauth support to also use it when reconnecting, and have the config as part of an oauth element 2011-03-09 10:12:12 +02:00
unknown d4e89faf6b added oauth support 2011-03-09 09:47:39 +02:00
kimchy 016e5bce04 Update Settings: Allow to dynamically change refresh_interval and merge policy settings, closes #758. 2011-03-08 21:53:33 +02:00
kimchy 4bdae621f9 Scripts: Allow to register native scripts (Java) for better script execution performance, closes #752. 2011-03-07 13:09:07 +02:00
kimchy 578b752425 Twitter River: Automatically reconnect when disconnected from twitter stream, closes #735. 2011-03-02 04:00:12 +02:00
kimchy 3bac33e69e don't use AfterTest / BeforeTest in any tests 2011-02-28 22:28:55 +02:00
kimchy 24e95ea7e4 upgrade to aws sdk 1.1.7 2011-02-25 21:33:50 +02:00
kimchy bcaeb226d5 Twitter river: "user.screen_name" should not be analyzed, closes #715. 2011-02-23 19:55:48 +02:00
kimchy 45ec2c6e21 Allow to register custom rivers under a custom type name (And not full class names), closes #712. 2011-02-22 22:13:31 +02:00
kimchy a4978bc67e Support for other exchange types and options in AMQP river, closes #709. 2011-02-22 20:06:43 +02:00
Charles Duffy d0780f0f62 Allow exchange type and durability, queue durability and queue auto-delete to be specified; closes #696 2011-02-22 20:02:25 +02:00
kimchy 1bffe432a0 fix loading bytes to parse in mapper attachment test 2011-02-20 01:49:37 +02:00
Alberto Paro b5068baf63 Updated tika to 0.9 2011-02-20 00:47:29 +02:00
kimchy 5e2ca6fb5d support servlet path as well 2011-02-18 05:12:26 +02:00
kimchy 8d867dc24c explicitly set the cat under which jdk logging is logged 2011-02-18 05:00:08 +02:00
kimchy dab23a4d51 fix thrift test to take into account that index can return CREATED status code now 2011-02-18 00:24:50 +02:00
kimchy d1d3f8c4ca REST codes: Improve returned error codes on REST APIs, associate codes with internal exceptions, closes #690. 2011-02-16 01:41:01 +02:00
kimchy d054c8c14e use cached thread pool to do cluster state gateway snapshotting 2011-02-11 03:14:13 +02:00
kimchy 57108c8575 REST API: Failure to index docs that have their ids URL encoded and contain `/`, closes #681. 2011-02-10 03:18:01 +02:00
kimchy 5a75964fc3 upgrade to groovy 1.7.7 2011-02-09 22:30:55 +02:00
kimchy 05283c7f6d NPE during ES startup when using S3 gateway with the europe region specified, closes #659. 2011-02-08 11:31:33 +02:00
kimchy 0dfa3dc8a2 Groovy client doesn't bind to any variables outside the closure, closes #654. 2011-02-01 14:16:27 +02:00
kimchy 8927e1dee4 Search Scripts: Allow to access score in facet related scripts using `doc.score`, closes #663. 2011-02-01 13:41:58 +02:00
kimchy cebdae5707 refactor script execution handling to improve performance, also introduce specific search script executor 2011-01-31 16:08:06 +02:00
kimchy 94c632b79b Java Client - Allow to set facets in binary format, closes #442. 2011-01-30 15:53:10 +02:00
kimchy 3f8933fb7b add filter setting with clojure in groovy 2011-01-28 11:28:41 +02:00
kimchy 87d5a92edb move handling of recovered metadata to GatewayService, reducing code duplication in different gateway implementations 2011-01-18 14:38:10 +02:00
kimchy 4750ccdc1c move nullable annotation to the common package, and move javax inject (from guice 3) to internal common as well 2011-01-17 19:45:37 +02:00
kimchy 64e5784623 Twitter updates have broken Twitter River, Update to latest version of Twitter4J, closes #627. 2011-01-14 20:48:09 +02:00
kimchy a0a714e6a5 Shared Gateway: Allow to set the number of concurrent streams doing snapshot operations, closes #621. 2011-01-11 22:03:44 +02:00
kimchy 50cdf2920f Make ToXContent return a builder 2011-01-10 22:11:12 +02:00
kimchy a450deee5f Groovy Plugin not loaded (groovy not enabled as pluggable script provider), closes #581. 2010-12-30 16:21:08 +02:00
kimchy 8e8a3a894f upgrade testing framework jars, improve build scripts to share the testing jars 2010-12-30 16:08:38 +02:00
kimchy 976d14705a add a warn and don't apply ec2 unicast discovery if not found (will not really happen) 2010-12-30 13:18:00 +02:00
kimchy abe33d59a5 use Closeables 2010-12-30 12:29:54 +02:00
kimchy f4a30fdc84 better stream close handling in couchdb river 2010-12-30 12:25:50 +02:00
kimchy ec2f0e05f9 upgrade to jython 2.5.2rc2 2010-12-27 10:23:01 +02:00
kimchy a00f99e7c6 upgrade to groovy 1.7.6 2010-12-27 08:21:25 +02:00
kimchy 27fe076175 upgrade to rabbitmq client 2.2.0 2010-12-26 12:50:52 +02:00
kimchy 9361e3bd2b Cloud AWS: Change endpoint parameters to distinguish between ec2 and s3, closes #574. 2010-12-23 09:13:44 +02:00
kimchy 698f67a31a EC2 Discover: Support filtering instances by tags, closes #551. 2010-12-16 05:14:49 +02:00
kimchy ff0eeb3d1a improve getting setting as array, automatically support comma delimited values under the exact setting 2010-12-16 05:02:24 +02:00
kimchy 085066ed19 set, by default, the send and receive buffers to 32k on tcp 2010-12-15 05:54:09 +02:00
kimchy b6277ac14d increase netty worker count to default to the updated value netty defaults to 2010-12-15 01:16:00 +02:00
kimchy f25eebb249 update to not use deprecated method 2010-12-08 00:16:20 +02:00
kimchy aa00fe6a83 upgrade twitter4j to 2.1.7 2010-12-05 06:39:22 +02:00
kimchy f048353046 upgrade to aws java sdk 1.1.1 2010-12-04 21:19:36 +02:00
kimchy a90684aaa5 Upgrade to Lucene 3.0.3, closes #549. 2010-12-03 20:43:51 +02:00
kimchy 992b37b8fb upgrade to tika 0.8 2010-11-28 15:27:54 +02:00
kimchy 577f06fd43 add indices API to groovy client 2010-11-26 22:19:57 +02:00
kimchy 73e5eb9e14 clean compile warnings 2010-11-26 16:03:25 +02:00
kimchy e340388a5d upgrde to amazen aws sdk 1.1.0 2010-11-11 01:44:16 +02:00
kimchy 4c6af6afa5 Cluster health API should return RED status (on applicable levels) when an index has not recovered from the gateway, closes #507. 2010-11-09 21:25:22 +02:00
kimchy cf51fbcdc6 change hdfs location test 2010-11-03 21:19:49 +02:00
kimchy dd9553e7cc add debug and trace logs to couchdb river 2010-11-02 01:07:06 +02:00
kimchy 0ec79e6645 upgrade to aws 1.0.14 2010-10-31 11:35:24 +02:00
kimchy b8708f276d Transport Thrift: Upgrade to thrift 0.5.0, closes #457. 2010-10-27 23:12:53 +02:00
kimchy 2460ee8072 Thrift: Response might get corrupted with extra data, closes #452. 2010-10-26 14:58:57 +02:00
kimchy bad45de7af fix wrong handling of empty param in thrift/memcached transport 2010-10-18 14:47:28 +02:00
kimchy ed9d9aa358 CouchDB River: Allow to define a javascript that can munge the changes stream, closes #431. 2010-10-14 17:57:52 +02:00
kimchy 81fd17b035 CouchDB River: Deletes not handles correctly 2010-10-14 17:38:28 +02:00
kimchy eb44910047 add py as lang 2010-10-14 16:22:12 +02:00
kimchy ae05ce0551 Scripting: Allow to define scripts within `config/scripts`, automatically compiled and can be referenced by name, closes #429. 2010-10-14 16:14:23 +02:00
kimchy 503b023eac remove attempt to get ruby in scripting, problems embedding it... 2010-10-14 14:11:13 +02:00
kimchy 1f4aa5d9d2 handle cases when the body is not set in thrift 2010-10-13 18:35:52 +02:00
kimchy 18d8e9dcdd add more script tests 2010-10-10 20:05:37 +02:00
kimchy a754ebacd4 Python Plugin: Allow to use python for scripts, closes #418. 2010-10-09 20:59:41 +02:00
kimchy 05e413a7f1 handle cases when address is null when discovering 2010-10-09 17:37:52 +02:00
kimchy 8b03b914f9 Twitter River: Support filter stream, closes #416. 2010-10-09 00:39:10 +02:00
kimchy ee2fabb9dd Thrift: Rename Status.CONTINUE to Status.CONT (reserved word), closes #415. 2010-10-08 23:06:30 +02:00
kimchy 6314c2460c Geo Overhaul (work with multiple locations), closes #414. 2010-10-08 22:31:21 +02:00
kimchy 523a8b4c3e rename xonctent mappers to just mappers 2010-10-08 15:05:07 +02:00
kimchy af3599fe47 upgrade to aws sdk 1.0.11 2010-10-08 11:45:27 +02:00
kimchy d0bf743ab4 Query DSL: query_string / field to use the optimized match_all query when using * (or *:*), closes #413. 2010-10-07 16:48:24 +02:00
kimchy 504a5458c5 add trace logging for thrift 2010-10-07 11:53:13 +02:00
kimchy bc4543a5e9 add multi threaded test execution for groovy and javascript 2010-10-06 22:00:27 +02:00
kimchy abf1855509 change logging level 2010-10-05 15:52:18 +02:00
Mahendra M a0d48487c1 Couchdb river plugin - ignore design documents 2010-10-05 15:51:36 +02:00
kimchy c4d17860a1 Wikipedia River: A river to index wikipedia, closes #403. 2010-10-03 22:22:45 +02:00
kimchy 6371ed7d78 build structure for ruby support, problems in figuring out how to execute the ruby scripts in the most optimal manner 2010-10-03 15:52:44 +02:00
kimchy 7180636df6 add close to script services 2010-10-03 14:31:36 +02:00
kimchy 80b8898542 add support for java List usage as javascript Array in scripts 2010-10-03 13:10:33 +02:00
kimchy 5b8bc333bd JavaScript Plugin: Allow to use javascript for scripts, closes #401. 2010-10-03 02:20:37 +02:00
kimchy 5a7c8fe2cb allow script engines to have several types 2010-10-02 21:18:01 +02:00
kimchy 542a85090f add _source script field search 2010-10-02 17:36:26 +02:00
kimchy 7a78374398 fix wrong refactoring... 2010-10-02 01:29:28 +02:00
kimchy 9e8ebd46e8 Groovy Plugin: Allow to run use groovy for scripts (where applicable), closes #398. 2010-10-02 01:22:05 +02:00
kimchy 5c1c580b84 upgrade to groovy 1.7.5 2010-10-01 22:29:08 +02:00
Mahendra M c657c7c6d0 Filter parameters not formed properly in couchdb river plugin, closes #394 2010-10-01 13:56:07 +02:00
kimchy 1af53bce0d Support http auth in couchdb river plugin, closes #390. 2010-09-30 20:58:04 +02:00
kimchy 735ad0d43d CouchDB River: Support couchdb filter query parameters, closes #389. 2010-09-30 20:47:05 +02:00
kimchy 06c7c4a9ac thrift definition `params` is conflict with c#'s keyword, rename to `parameters`, closes #392. 2010-09-30 10:07:02 +02:00
kimchy 1bcecd7bb7 fix rabbitmq params parsing 2010-09-28 17:12:34 +02:00
kimchy f01f5ab323 remove double & in the url, though seems like couchdb does not mind... 2010-09-27 23:04:44 +02:00
kimchy 48bd9a2076 don't try adn connect to couch until we manage to check if there is a last_seq 2010-09-27 15:21:26 +02:00
kimchy efe5b5734c rename client-groovy to lang-groovy 2010-09-26 18:13:45 +02:00
kimchy 3a5938b2d1 better state control, store under couchdb obj 2010-09-23 02:45:32 +02:00
kimchy ecaaeb5250 River CouchDB Plugin, closes #382. 2010-09-23 02:26:12 +02:00
kimchy d0b29fe3ef allow to set exhange and routing_key 2010-09-21 22:19:36 +02:00
kimchy 8cce3d6cce rabbitmq river 2010-09-21 17:41:19 +02:00
kimchy aa68667d63 rabbitmq river 2010-09-21 17:32:34 +02:00
kimchy 4fe7cbccca rename indexer to river 2010-09-21 13:35:09 +02:00
kimchy 2715212868 better handling of creation of index 2010-09-21 01:20:37 +02:00
kimchy 5f574013fd add a twitter indexer 2010-09-20 23:06:59 +02:00
kimchy 94a77b69d6 add a twitter indexer 2010-09-20 18:17:02 +02:00
kimchy ed96d161a6 upgrade to amazon aws jdk 1.0.10 2010-09-20 12:09:17 +02:00
kimchy 38aeba438d XContent refactoring, closes #367. 2010-09-12 23:20:15 +02:00
kimchy 4f08801bb9 Thrift Plugin: Expose REST interface using thrift, closes #354. 2010-09-04 02:45:37 +03:00
kimchy 042af200e8 Gateway: Default to `local` gateway (replace `none` gateway), closes #347. 2010-09-01 23:21:26 +03:00
kimchy 46b58ce77f Memcached transport does not support version, npe when no uri, closes #342. 2010-09-01 15:16:03 +03:00
kimchy 38cae95ebc EC2 Discovery should optionally bind to nodes who are members of all groups, closes #345. 2010-09-01 15:07:26 +03:00
kimchy 163b7be639 refactor gateway service to allow for more custom gateway implemenations 2010-08-28 00:34:15 +03:00
kimchy c85019fb86 upgrade to aws 1.0.008 2010-08-24 03:58:45 +03:00
kimchy 02b74dfb63 Memcach: StreamCorruptedException when loading a cluster, closes #300. 2010-08-23 22:21:35 +03:00
kimchy 8079b5def5 Should escape \r\n in exception message, closes #332. 2010-08-23 22:19:40 +03:00
kimchy 1461da5b49 move prefetch allocation to be a NodeAllocation 2010-08-23 17:22:44 +03:00
kimchy 1517fa3d28 initial chunk of work on refactoring the gateway, syntatic gateway files names, commit points that include translog information 2010-08-23 01:45:03 +03:00
kimchy 664f28492d improvements to the module system, allow for a module to spawn other modules, and pre process modules before injector creation 2010-08-22 10:42:25 +03:00
kimchy aa28b93610 refactor how throttling is done, instead of doing it after a shard is allocated to a node, and then wait till its allowed to recover, do it on the allocation level, and don't allocate a shard to a node that has N number of recoveries going on it 2010-08-22 02:47:34 +03:00
kimchy c40935ae14 store the mapping definition in compressed form internally to save memory 2010-08-19 17:06:36 +03:00
kimchy 1ee2f80e68 Transport: add global compression support compressing all internal transport communication (using lzf), closes #321. 2010-08-15 02:57:22 +03:00
kimchy 23b8b81e15 EC2 Discovery ignoring instances with more than one security group, closes #311. 2010-08-10 22:16:13 +03:00
kimchy 8223418b04 better handling of non supported commands / opcodes 2010-08-09 17:52:24 +03:00
kimchy d4547c629f New API, update settings, allowing to change specific runtime settings of the cluster (indices). `number_of_replicas` is the only settings supported, allowing to change the number of repliacs of one or more indices. 2010-08-08 09:17:09 +03:00
kimchy d72de60b6f Add the ability to store the index name in the doc, closes #292. 2010-08-04 11:41:56 +03:00
kimchy 457b56937e small improvements to groovy client, allows for closure in the search request 2010-07-25 10:32:22 +03:00
kimchy 747aa2e30a only close client if it was started 2010-07-25 10:28:27 +03:00
kimchy 77b6d1d8b8 remove cloud plugin, reimplement an AWS specific cloud plugin with S3 gateway and EC2 discovery 2010-07-24 23:39:43 +03:00
kimchy 0072dd816b nicer logging, and use sync streams 2010-07-23 23:10:59 +03:00
kimchy 09bbf11605 fix dep on hamcrest for memcached plugin 2010-07-22 21:13:47 +03:00
kimchy c1ab9f290f remove compile warnings 2010-07-22 00:25:25 +03:00
kimchy 300f38ee3c improve memcached test 2010-07-20 21:12:26 +03:00
kimchy 2eeb4ebd8c improve memcached test 2010-07-20 20:53:00 +03:00
kimchy 5f0470d68b Support Cross-Origin resource in http/rest module, closes #218. 2010-07-19 15:06:13 +03:00
kimchy d657d4447b more shard relocation tests, create a cached executor that can be used to allocate threads that are not affected by the actual thread pool impl (can always fork, no blocking) 2010-07-19 01:45:09 +03:00
kimchy 7d29896190 add more info 2010-07-17 19:10:06 +03:00
kimchy 08ca383fd5 more work on cloud gateway 2010-07-17 15:20:13 +03:00
kimchy 1fccaf06e9 start work on reimplementing cloud gateway 2010-07-17 13:12:53 +03:00
kimchy 52ac24fa23 more debug statr on recovery from gateway 2010-07-11 21:51:45 +03:00
kimchy e7a8da8236 do flush within the finalization of index shard recovery 2010-07-11 21:20:36 +03:00
kimchy 84af9f5681 improve handling of translog snapshotting 2010-07-08 20:51:37 +03:00
kimchy d4f86899e3 more work on reuse work dir, improved transaction log to move to stream based 2010-07-06 00:12:40 +03:00
kimchy b078c9206a more work on reuse work dir, added md5 logic to identify what need to be recovered or not, note, requires reindexing 2010-07-05 14:13:55 +03:00
kimchy d848ab3df3 rename executors to esexecutors 2010-07-01 00:06:34 +03:00
kimchy 66096e97f2 Remove the terms API (replaced by facets in search), closes #242. 2010-06-30 19:49:41 +03:00
kimchy 04ad93e8d6 update project run target to add hadoop plugin as well 2010-06-29 21:42:47 +03:00
kimchy 3f6cd46736 allow to configure tcp network modules (transport, memcached and http) to use blocking io (just enabling it to do some performance tests) 2010-06-29 21:07:38 +03:00
kimchy 703657699a refactor new thread pools in, remove dynamic ones 2010-06-29 18:20:31 +03:00
kimchy 3770924300 allow to control the buffer size of the gateway blob container 2010-06-27 23:26:32 +03:00
kimchy edf0075025 more work on reusing work node level data, now when recovering from peers 2010-06-24 15:34:02 +03:00
kimchy 57169d4233 initial work on reusing work node level data when recovering from gateway 2010-06-24 00:32:05 +03:00
kimchy 3d84af2a40 refactor hdfs gateway to use the new common blobstore 2010-06-22 09:10:00 +03:00
kimchy 96d08cc641 remove the jgroups plugin 2010-06-21 22:51:54 +03:00
kimchy 7ed7c6db4e Gateway: Internal refactoring, requires manual upgrade when using fs gateway, closes #232. 2010-06-21 22:40:12 +03:00
kimchy 41e570d89d add prepare methods to the rest of the groovy APIs 2010-06-20 09:31:22 +03:00
kimchy abde45bb82 refactor util.xcontent to common.xcontent in groovy cliet 2010-06-20 08:53:45 +03:00
kimchy 0f2147aeec add some prepare APIs to the groovy APIs 2010-06-19 21:09:03 +03:00
kimchy a18e58b394 move size value/unit to bytes size value/unit, and create a ten based size value/unit 2010-06-15 18:16:10 +03:00
kimchy f75abbaa00 big refactoring thanks to proper jarjar built from source with asm 3.3 allowing to jarjar guice and others, includes package relocations 2010-06-15 17:59:04 +03:00
kimchy d5bd77cc38 big refactoring thanks to proper jarjar built from source with asm 3.3 allowing to jarjar guice and others, includes package relocations 2010-06-15 17:28:05 +03:00
kimchy 636bfe8466 big refactoring thanks to proper jarjar built from source with asm 3.3 allowing to jarjar guice and others, includes package relocations 2010-06-15 16:51:38 +03:00
kimchy 48979ab6c8 improve gateway recovery when using delay index creation, close the loophole when the master was shut down before the delay expired and now other node becoming master will do the recovery 2010-06-15 10:27:26 +03:00
kimchy 66c9f2f834 Search Facets: Field Facets, closes #207 2010-06-04 02:31:49 +03:00
kimchy ec662cc019 always start the unicast ping discovery, so unicast discovery will work even when using multicast 2010-05-31 22:24:51 +03:00
kimchy 1749775414 update build files to reference hamcrest as well 2010-05-30 23:26:17 +03:00
kimchy ef9e6d369c memcahced should use its own openchannels handler 2010-05-27 18:51:11 +03:00
kimchy 7e5bfb5d3b share the open channels handler 2010-05-27 18:25:59 +03:00
kimchy ad5a4dde83 upgrade to jclouds 1-beta6 2010-05-27 02:28:31 +03:00
kimchy b7d11f1303 Gateway Storage: Improve it to support non breaking changes in the future, closes #191. 2010-05-24 18:27:48 +03:00
kimchy 2cdb7bc05a change jclouds to use cached thread pool 2010-05-24 10:24:16 +03:00
kimchy 28fa384b32 Hadoop Plugin: Use HDFS as gateway storage, closes #189. 2010-05-23 17:02:06 +03:00
kimchy 116cfce6f2 FS Gateway: Change indices location (Requires manual upgrade), closes #188. 2010-05-23 08:37:41 +03:00
kimchy 32829aeba5 change index directory in the cloud to be under "indices" 2010-05-23 08:18:49 +03:00
kimchy 5c6864e8b3 inital work on hadoop plugin - gateway hdfs support 2010-05-23 08:17:52 +03:00
kimchy ecc74f225e Cloud Plugin: Cloud gateway default chunk size change to 1g, closes #186. 2010-05-22 01:08:43 +03:00
kimchy a8a4bbc30e internal optimization - share built in analyzers on the node level and not on index level 2010-05-20 00:55:31 +03:00
kimchy 40fdcc43b7 update all to use LUCENE MONITOR 2010-05-19 03:55:07 +03:00
kimchy 2881d5851d remote use of deprecated methods 2010-05-19 03:35:24 +03:00
kimchy c7075c1600 Cloud Plugin: Gateway should store meta data and indices under the same container, closes #180. 2010-05-18 23:38:56 +03:00
kimchy 216dda3f9c Throttling of recovery (both gateway recovery and peer node recovery), closes #176. 2010-05-16 23:37:56 +03:00
kimchy 013e7699c3 Index Request wrongly stores extra bytes as part of the document (trailing null bytes), closes #175. 2010-05-16 17:56:52 +03:00
kimchy b816ed5cf2 add thread pool stats and info to nodes stats / info api 2010-05-15 18:10:24 +03:00
kimchy 723e47a54b Consolidate network settings, common tcp settings, and generalized port settings, closes #174. 2010-05-15 16:30:02 +03:00
kimchy c59945eec2 remove the need for global defined grooby library, use the one gradle downloaded 2010-05-15 02:26:44 +03:00
kimchy 5db5b9f4b2 better logging 2010-05-13 22:51:21 +03:00
kimchy 529edd6b38 better trace logging of nodes processed 2010-05-13 22:45:32 +03:00
kimchy 6f74e9fc04 moreve non ascii chars 2010-05-13 21:37:58 +03:00
kimchy 6cd3fc92ed reduce bytes allocation when doing http 2010-05-13 20:42:59 +03:00
kimchy e87a4117b6 expose settings builder in the node builder API 2010-05-13 15:17:49 +03:00
kimchy f6777f1e03 jarjar netty as well, so it won't be exposed to users using elasticsearch embedded 2010-05-13 14:41:50 +03:00
kimchy 7edb3f8d54 nicer code 2010-05-12 16:48:22 +03:00
kimchy a0b25ec4c3 abstract non blocking hashset 2010-05-12 04:06:44 +03:00
kimchy f6509930c7 upgrade to netty 3.2.0 CR1 2010-05-12 04:03:20 +03:00
kimchy 9c042a2b25 allow to set settings on the groovy client 2010-05-11 18:05:11 +03:00
kimchy c759eb34a8 chen the default delegation for the builder to be delegate first so it can be used easily in scripts. 2010-05-11 18:00:44 +03:00
kimchy 040030dac8 reafctor inject to util from util.guice 2010-05-10 01:34:22 +03:00
kimchy 3e405c3ec7 Nodes Stats API, closes #165, 2010-05-09 09:59:43 +03:00
kimchy 473b46f5ef fix NPE since we need to provide the nodes provider 2010-05-08 02:44:06 +03:00
kimchy 66f011ae76 allow to filter out settings from REST serivces 2010-05-06 09:06:32 +03:00
kimchy 596cfd273d move to beta-5 of jclouds 2010-05-05 15:22:15 +03:00
kimchy 8053237643 move from gcommon package 2010-05-04 16:02:26 +03:00
kimchy f88e01614a update with more cloud providers 2010-05-04 15:57:13 +03:00
kimchy 7d9f55309e cloud gateway implemenation working against s3 2010-05-04 14:02:36 +03:00
kimchy 3ba4370477 verify that parsing works for dates with slash 2010-05-03 16:51:15 +03:00
kimchy 5d743383c7 expose content type in client 2010-05-03 16:00:14 +03:00
kimchy 2d20ba0b42 make resolving of "logical" (#...#) hosts pluggable (so we can later support something like #cloud:privateip# 2010-05-03 00:50:44 +03:00
kimchy bac0ef98c4 more refactoring and proper exception when using cloud plugin 2010-05-02 23:33:57 +03:00
kimchy b81e3de85e start work on cloud gateway 2010-05-02 21:58:14 +03:00
kimchy fc30467b72 add jclouds logger 2010-05-02 17:23:59 +03:00
kimchy 02bfa9c4cb rename hell 2010-05-02 16:44:47 +03:00
kimchy 1119bffc5a rename hell 2010-05-02 16:40:51 +03:00
kimchy 95becccece more work on cloud 2010-05-02 16:36:51 +03:00
kimchy 4c53422428 more work on cloud 2010-05-02 16:36:05 +03:00
kimchy 1323fe8b5e minor restructering of plugins, create the cloud plugin 2010-05-02 01:28:28 +03:00
kimchy e81d559f5f update memcached name to be transport-memcached 2010-05-01 16:34:32 +03:00
kimchy ebded19dc1 Restart API: Allow to restart one or more nodes, closes #155. 2010-05-01 03:00:06 +03:00
kimchy 34d99c39a5 XContent - An abstraction on top of content (JSON inspired), closes #152. 2010-04-29 23:10:47 +03:00
kimchy f8f65c991a finalize abstracting json into xcontent 2010-04-29 02:11:53 +03:00
kimchy 37dfc443aa continue abstracting json into xcontent 2010-04-29 00:05:55 +03:00
kimchy cdc33e18f3 start abstaction of xconten over json 2010-04-28 21:29:30 +03:00
kimchy c48851f49c start abstaction of json 2010-04-28 11:20:41 +03:00
kimchy 11e4ad9bd6 Analysis ICU Plugin, closes #151 2010-04-27 23:54:30 +03:00
kimchy 2a19160ad6 internalize guice (no need to aop) and reduce deps 2010-04-26 02:10:42 +03:00
kimchy e56321b414 add google collections to elasticsearch as source and remove binary dep 2010-04-26 01:02:31 +03:00
kimchy d177c78d4f add junit to test compile in groovy plugin so it will compile (strange...) 2010-04-26 00:10:22 +03:00
kimchy 9b4d64011a update files 2010-04-25 23:42:44 +03:00
kimchy c7e4ec6369 update project files, remove sources from jar files 2010-04-25 23:40:58 +03:00
kimchy 10f0eaad68 refactor plugins into sub groups 2010-04-25 23:01:00 +03:00
kimchy b09f6c7b6b move client-groovy to an updated location 2010-04-25 22:20:18 +03:00
kimchy 6975f5d15a move zen discovery to be the default discovery, and move jgroups to a plugin 2010-04-25 21:52:28 +03:00
kimchy cb0d7d4735 inital support for zen discovery module (multicast discovery implemented) 2010-04-24 23:48:45 +03:00
kimchy 609af0da60 update test resources build file 2010-04-21 01:17:19 +03:00
kimchy bda476eee8 Remove dependency on slf4j for logging, create own internal abstraction, closes #146. 2010-04-21 00:29:42 +03:00
kimchy 9a35ddcb61 add memcached.enabled setting allowing to disable memcached even if its added as a plugin (by default, it is enabled) 2010-04-18 00:16:45 +03:00
kimchy d997389444 add annotation documentation for memcached handlers 2010-04-17 22:09:16 +03:00
kimchy f46c643c63 add Map as a parameter where Json can be passed 2010-04-17 20:10:15 +03:00
kimchy 9c1f2fdec5 allow to change resolve strategy on jsonbuilder 2010-04-17 19:05:30 +03:00
kimchy b49a1c441c node.client setting should automatically affect node.data (if not set), fix (for now) for the JsonBuilder to resolve first to the delegate (is that right?) 2010-04-17 16:39:00 +03:00
kimchy 3e430c2ca9 memcached: add binary protocol support 2010-04-17 13:31:45 +03:00
kimchy 51aac0cdf7 memcached initial work 2010-04-16 22:01:16 +03:00
kimchy 02cb297691 more groovy client work 2010-04-15 17:45:26 +03:00
kimchy ad9549462e more groovy work 2010-04-15 06:45:46 +03:00
kimchy 0da66ba367 groovy plugin - add search API 2010-04-14 19:10:29 +03:00
kimchy 96a185e107 more work on the groovy client - count/terms api 2010-04-14 13:57:40 +03:00
kimchy 7e041c43e0 more work on the groovy client 2010-04-14 12:17:52 +03:00
kimchy cb7e92b0f8 start work on the groovy plugin 2010-04-14 08:34:47 +03:00
kimchy f10a2d428d move to 0.7.0 2010-04-09 18:19:37 +03:00
kimchy 2fd36fdbf8 add local node to node builder 2010-04-09 03:17:29 +03:00
kimchy a9cd00e287 rename Server to Node to better reflect its usage (it can be a client node), also add on the NodeBuilder helper methods to set common settings 2010-04-09 00:54:54 +03:00
kimchy b760ab18b6 update maven upload to also produce javadoc and source jars 2010-04-06 11:44:41 +03:00
kimchy 11e8141069 upgrade to tika 0.7 2010-04-06 02:20:47 +03:00
kimchy 3f8acbd994 Mapper: Rename pathType to path, closes #106. 2010-04-04 12:02:34 +03:00
kimchy 58d2e2e1fc update maven support 2010-04-02 21:24:28 +03:00
kimchy 7c904dcd0e better pom generation 2010-04-02 19:08:33 +03:00
kimchy 6ed23744fc upgrade to gradle 0.9 preview 1 2010-04-02 15:47:27 +03:00
kimchy 05d85b2ae4 add source files to dist jar files 2010-04-01 23:06:11 +03:00
kimchy 8faf8c2169 add source files to dist jar files 2010-04-01 23:05:05 +03:00
kimchy 336a272c6f fix build 2010-03-29 12:45:13 +03:00
kimchy 3decb2a61e nice(er) code 2010-03-29 11:27:38 +03:00
kimchy 651cd78456 add control over the base64 variant 2010-03-29 00:39:13 +03:00
kimchy 913a486f99 more work on attachments, have basic types support external set values 2010-03-29 00:19:33 +03:00
kimchy b799b7a9d7 plugins support + start work on attachments plugin 2010-03-27 23:43:59 +03:00