Merge branch 'master' into feature/query-refactoring
This commit is contained in:
commit
2da1baf546
|
@ -18,7 +18,6 @@
|
||||||
*/
|
*/
|
||||||
package org.elasticsearch.common.util;
|
package org.elasticsearch.common.util;
|
||||||
|
|
||||||
import com.google.common.primitives.Ints;
|
|
||||||
import org.apache.lucene.store.DataInput;
|
import org.apache.lucene.store.DataInput;
|
||||||
import org.apache.lucene.store.DataOutput;
|
import org.apache.lucene.store.DataOutput;
|
||||||
import org.apache.lucene.store.IndexInput;
|
import org.apache.lucene.store.IndexInput;
|
||||||
|
@ -325,7 +324,7 @@ public class BloomFilter {
|
||||||
private static int size(long bits) {
|
private static int size(long bits) {
|
||||||
long quotient = bits / 64;
|
long quotient = bits / 64;
|
||||||
long remainder = bits - quotient * 64;
|
long remainder = bits - quotient * 64;
|
||||||
return Ints.checkedCast(remainder == 0 ? quotient : 1 + quotient);
|
return Math.toIntExact(remainder == 0 ? quotient : 1 + quotient);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Used by serialization
|
// Used by serialization
|
||||||
|
|
|
@ -277,6 +277,11 @@ public enum CollectionUtils {
|
||||||
}.sort(0, array.size());
|
}.sort(0, array.size());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static int[] toArray(Collection<Integer> ints) {
|
||||||
|
Objects.requireNonNull(ints);
|
||||||
|
return ints.stream().mapToInt(s -> s).toArray();
|
||||||
|
}
|
||||||
|
|
||||||
private static class RotatedList<T> extends AbstractList<T> implements RandomAccess {
|
private static class RotatedList<T> extends AbstractList<T> implements RandomAccess {
|
||||||
|
|
||||||
private final List<T> in;
|
private final List<T> in;
|
||||||
|
|
|
@ -18,8 +18,6 @@
|
||||||
*/
|
*/
|
||||||
package org.elasticsearch.common.util;
|
package org.elasticsearch.common.util;
|
||||||
|
|
||||||
import java.nio.charset.StandardCharsets;
|
|
||||||
import com.google.common.primitives.Ints;
|
|
||||||
import org.apache.lucene.index.CheckIndex;
|
import org.apache.lucene.index.CheckIndex;
|
||||||
import org.apache.lucene.index.IndexWriter;
|
import org.apache.lucene.index.IndexWriter;
|
||||||
import org.apache.lucene.store.Directory;
|
import org.apache.lucene.store.Directory;
|
||||||
|
@ -43,19 +41,10 @@ import org.elasticsearch.index.shard.ShardStateMetaData;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.PrintStream;
|
import java.io.PrintStream;
|
||||||
import java.nio.file.DirectoryStream;
|
import java.nio.charset.StandardCharsets;
|
||||||
import java.nio.file.FileStore;
|
import java.nio.file.*;
|
||||||
import java.nio.file.FileVisitResult;
|
|
||||||
import java.nio.file.FileVisitor;
|
|
||||||
import java.nio.file.Files;
|
|
||||||
import java.nio.file.Path;
|
|
||||||
import java.nio.file.StandardCopyOption;
|
|
||||||
import java.nio.file.attribute.BasicFileAttributes;
|
import java.nio.file.attribute.BasicFileAttributes;
|
||||||
import java.util.ArrayList;
|
import java.util.*;
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.HashSet;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Set;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
|
@ -369,16 +358,15 @@ public class MultiDataPathUpgrader {
|
||||||
try (DirectoryStream<Path> stream = Files.newDirectoryStream(indexPath)) {
|
try (DirectoryStream<Path> stream = Files.newDirectoryStream(indexPath)) {
|
||||||
String currentIndex = indexPath.getFileName().toString();
|
String currentIndex = indexPath.getFileName().toString();
|
||||||
for (Path shardPath : stream) {
|
for (Path shardPath : stream) {
|
||||||
if (Files.isDirectory(shardPath)) {
|
String fileName = shardPath.getFileName().toString();
|
||||||
Integer shardId = Ints.tryParse(shardPath.getFileName().toString());
|
if (Files.isDirectory(shardPath) && fileName.chars().allMatch(Character::isDigit)) {
|
||||||
if (shardId != null) {
|
int shardId = Integer.parseInt(fileName);
|
||||||
ShardId id = new ShardId(currentIndex, shardId);
|
ShardId id = new ShardId(currentIndex, shardId);
|
||||||
shardIds.add(id);
|
shardIds.add(id);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
return shardIds;
|
return shardIds;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -20,15 +20,9 @@
|
||||||
package org.elasticsearch.env;
|
package org.elasticsearch.env;
|
||||||
|
|
||||||
import com.google.common.collect.ImmutableSet;
|
import com.google.common.collect.ImmutableSet;
|
||||||
import com.google.common.primitives.Ints;
|
|
||||||
import org.apache.lucene.index.IndexWriter;
|
import org.apache.lucene.index.IndexWriter;
|
||||||
import org.apache.lucene.index.SegmentInfos;
|
import org.apache.lucene.index.SegmentInfos;
|
||||||
import org.apache.lucene.store.Directory;
|
import org.apache.lucene.store.*;
|
||||||
import org.apache.lucene.store.FSDirectory;
|
|
||||||
import org.apache.lucene.store.Lock;
|
|
||||||
import org.apache.lucene.store.LockObtainFailedException;
|
|
||||||
import org.apache.lucene.store.NativeFSLockFactory;
|
|
||||||
import org.apache.lucene.store.SimpleFSDirectory;
|
|
||||||
import org.apache.lucene.util.IOUtils;
|
import org.apache.lucene.util.IOUtils;
|
||||||
import org.elasticsearch.ElasticsearchException;
|
import org.elasticsearch.ElasticsearchException;
|
||||||
import org.elasticsearch.cluster.metadata.IndexMetaData;
|
import org.elasticsearch.cluster.metadata.IndexMetaData;
|
||||||
|
@ -48,21 +42,8 @@ import org.elasticsearch.monitor.fs.FsProbe;
|
||||||
|
|
||||||
import java.io.Closeable;
|
import java.io.Closeable;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.nio.file.AtomicMoveNotSupportedException;
|
import java.nio.file.*;
|
||||||
import java.nio.file.DirectoryStream;
|
import java.util.*;
|
||||||
import java.nio.file.FileStore;
|
|
||||||
import java.nio.file.Files;
|
|
||||||
import java.nio.file.Path;
|
|
||||||
import java.nio.file.StandardCopyOption;
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.Collection;
|
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.HashSet;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Locale;
|
|
||||||
import java.util.Map;
|
|
||||||
import java.util.Set;
|
|
||||||
import java.util.concurrent.Semaphore;
|
import java.util.concurrent.Semaphore;
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
import java.util.concurrent.atomic.AtomicBoolean;
|
import java.util.concurrent.atomic.AtomicBoolean;
|
||||||
|
@ -711,16 +692,15 @@ public class NodeEnvironment extends AbstractComponent implements Closeable {
|
||||||
try (DirectoryStream<Path> stream = Files.newDirectoryStream(indexPath)) {
|
try (DirectoryStream<Path> stream = Files.newDirectoryStream(indexPath)) {
|
||||||
String currentIndex = indexPath.getFileName().toString();
|
String currentIndex = indexPath.getFileName().toString();
|
||||||
for (Path shardPath : stream) {
|
for (Path shardPath : stream) {
|
||||||
if (Files.isDirectory(shardPath)) {
|
String fileName = shardPath.getFileName().toString();
|
||||||
Integer shardId = Ints.tryParse(shardPath.getFileName().toString());
|
if (Files.isDirectory(shardPath) && fileName.chars().allMatch(Character::isDigit)) {
|
||||||
if (shardId != null) {
|
int shardId = Integer.parseInt(fileName);
|
||||||
ShardId id = new ShardId(currentIndex, shardId);
|
ShardId id = new ShardId(currentIndex, shardId);
|
||||||
shardIds.add(id);
|
shardIds.add(id);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
return shardIds;
|
return shardIds;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -19,11 +19,11 @@
|
||||||
package org.elasticsearch.test.discovery;
|
package org.elasticsearch.test.discovery;
|
||||||
|
|
||||||
import com.carrotsearch.randomizedtesting.RandomizedTest;
|
import com.carrotsearch.randomizedtesting.RandomizedTest;
|
||||||
import com.google.common.primitives.Ints;
|
|
||||||
import org.elasticsearch.ElasticsearchException;
|
import org.elasticsearch.ElasticsearchException;
|
||||||
import org.elasticsearch.common.SuppressForbidden;
|
import org.elasticsearch.common.SuppressForbidden;
|
||||||
import org.elasticsearch.common.network.NetworkUtils;
|
import org.elasticsearch.common.network.NetworkUtils;
|
||||||
import org.elasticsearch.common.settings.Settings;
|
import org.elasticsearch.common.settings.Settings;
|
||||||
|
import org.elasticsearch.common.util.CollectionUtils;
|
||||||
import org.elasticsearch.test.InternalTestCluster;
|
import org.elasticsearch.test.InternalTestCluster;
|
||||||
import org.elasticsearch.test.NodeConfigurationSource;
|
import org.elasticsearch.test.NodeConfigurationSource;
|
||||||
|
|
||||||
|
@ -82,7 +82,7 @@ public class ClusterDiscoveryConfiguration extends NodeConfigurationSource {
|
||||||
while (ordinals.size() != numOfUnicastHosts) {
|
while (ordinals.size() != numOfUnicastHosts) {
|
||||||
ordinals.add(RandomizedTest.randomInt(numOfNodes - 1));
|
ordinals.add(RandomizedTest.randomInt(numOfNodes - 1));
|
||||||
}
|
}
|
||||||
unicastHostOrdinals = Ints.toArray(ordinals);
|
unicastHostOrdinals = CollectionUtils.toArray(ordinals);
|
||||||
}
|
}
|
||||||
this.unicastHostPorts = unicastHostPorts(numOfNodes);
|
this.unicastHostPorts = unicastHostPorts(numOfNodes);
|
||||||
assert unicastHostOrdinals.length <= unicastHostPorts.length;
|
assert unicastHostOrdinals.length <= unicastHostPorts.length;
|
||||||
|
|
|
@ -125,6 +125,7 @@ com.google.common.collect.ArrayListMultimap
|
||||||
com.google.common.collect.HashMultimap
|
com.google.common.collect.HashMultimap
|
||||||
com.google.common.collect.FluentIterable
|
com.google.common.collect.FluentIterable
|
||||||
com.google.common.io.Files
|
com.google.common.io.Files
|
||||||
|
com.google.common.primitives.Ints
|
||||||
|
|
||||||
@defaultMessage Do not violate java's access system
|
@defaultMessage Do not violate java's access system
|
||||||
java.lang.reflect.AccessibleObject#setAccessible(boolean)
|
java.lang.reflect.AccessibleObject#setAccessible(boolean)
|
||||||
|
|
|
@ -54,6 +54,18 @@ discovery:
|
||||||
type: azure
|
type: azure
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
||||||
|
[IMPORTANT]
|
||||||
|
.Binding the network host
|
||||||
|
==============================================
|
||||||
|
|
||||||
|
It's important to define `network.host` as by default it's bound to `localhost`.
|
||||||
|
|
||||||
|
You can use {ref}/modules-network.html[core network host settings]. For example `_non_loopback_` or `_en0_`.
|
||||||
|
|
||||||
|
==============================================
|
||||||
|
|
||||||
|
|
||||||
[[cloud-azure-discovery-short]]
|
[[cloud-azure-discovery-short]]
|
||||||
===== How to start (short story)
|
===== How to start (short story)
|
||||||
|
|
||||||
|
|
|
@ -57,14 +57,14 @@ public class AzureStorageServiceImpl extends AbstractLifecycleComponent<AzureSto
|
||||||
// We try to load storage API settings from `cloud.azure.`
|
// We try to load storage API settings from `cloud.azure.`
|
||||||
account = settings.get(ACCOUNT);
|
account = settings.get(ACCOUNT);
|
||||||
key = settings.get(KEY);
|
key = settings.get(KEY);
|
||||||
blob = "http://" + account + ".blob.core.windows.net/";
|
blob = "https://" + account + ".blob.core.windows.net/";
|
||||||
|
|
||||||
try {
|
try {
|
||||||
if (account != null) {
|
if (account != null) {
|
||||||
logger.trace("creating new Azure storage client using account [{}], key [{}], blob [{}]", account, key, blob);
|
logger.trace("creating new Azure storage client using account [{}], key [{}], blob [{}]", account, key, blob);
|
||||||
|
|
||||||
String storageConnectionString =
|
String storageConnectionString =
|
||||||
"DefaultEndpointsProtocol=http;"
|
"DefaultEndpointsProtocol=https;"
|
||||||
+ "AccountName="+ account +";"
|
+ "AccountName="+ account +";"
|
||||||
+ "AccountKey=" + key;
|
+ "AccountKey=" + key;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue