use of org.elasticsearch.action.admin.indices.get.GetIndexRequest in project crate by crate.
the class PartitionedTableIntegrationTest method testInsertIntoClosedPartition.
@Test
public void testInsertIntoClosedPartition() throws Exception {
execute("create table t (n integer) partitioned by (n)");
ensureYellow();
execute("insert into t (n) values (1)");
ensureYellow();
String[] indices = client().admin().indices().getIndex(new GetIndexRequest()).actionGet().getIndices();
client().admin().indices().close(new CloseIndexRequest(indices[0])).actionGet();
expectedException.expect(SQLActionException.class);
expectedException.expectMessage(String.format("Unable to access the partition %s, it is closed", indices[0]));
execute("insert into t (n) values (1)");
}
use of org.elasticsearch.action.admin.indices.get.GetIndexRequest in project crate by crate.
the class PartitionedTableIntegrationTest method testSelectFromClosedPartition.
@Test
public void testSelectFromClosedPartition() throws Exception {
execute("create table t (n integer) partitioned by (n)");
ensureYellow();
execute("insert into t (n) values (1)");
ensureGreen();
String[] indices = client().admin().indices().getIndex(new GetIndexRequest()).actionGet().getIndices();
client().admin().indices().close(new CloseIndexRequest(indices[0])).actionGet();
expectedException.expect(SQLActionException.class);
expectedException.expectMessage(String.format("Unable to access the partition %s, it is closed", indices[0]));
execute("select count(*) from t");
}
use of org.elasticsearch.action.admin.indices.get.GetIndexRequest in project graylog2-server by Graylog2.
the class Indices method indexCreationDate.
@Nullable
public DateTime indexCreationDate(String index) {
final GetIndexRequest indexRequest = c.admin().indices().prepareGetIndex().addFeatures(GetIndexRequest.Feature.SETTINGS).addIndices(index).request();
try {
final GetIndexResponse response = c.admin().indices().getIndex(indexRequest).actionGet();
final Settings settings = response.settings().get(index);
if (settings == null) {
return null;
}
return new DateTime(settings.getAsLong("index.creation_date", 0L), DateTimeZone.UTC);
} catch (ElasticsearchException e) {
LOG.warn("Unable to read creation_date for index " + index, e.getRootCause());
return null;
}
}
use of org.elasticsearch.action.admin.indices.get.GetIndexRequest in project incubator-sdap-mudrod by apache.
the class ESDriver method getIndexListWithPrefix.
public List<String> getIndexListWithPrefix(Object object) {
LOG.info("Retrieving index list with prefix: {}", object.toString());
String[] indices = client.admin().indices().getIndex(new GetIndexRequest()).actionGet().getIndices();
ArrayList<String> indexList = new ArrayList<>();
for (String indexName : indices) {
if (indexName.startsWith(object.toString())) {
indexList.add(indexName);
}
}
return indexList;
}
use of org.elasticsearch.action.admin.indices.get.GetIndexRequest in project elasticsearch by elastic.
the class RestGetIndicesAction method prepareRequest.
@Override
public RestChannelConsumer prepareRequest(final RestRequest request, final NodeClient client) throws IOException {
String[] indices = Strings.splitStringByCommaToArray(request.param("index"));
String[] featureParams = request.paramAsStringArray("type", null);
// Work out if the indices is a list of features
if (featureParams == null && indices.length > 0 && indices[0] != null && indices[0].startsWith("_") && !"_all".equals(indices[0])) {
featureParams = indices;
indices = new String[] { "_all" };
}
final GetIndexRequest getIndexRequest = new GetIndexRequest();
getIndexRequest.indices(indices);
if (featureParams != null) {
Feature[] features = Feature.convertToFeatures(featureParams);
getIndexRequest.features(features);
}
getIndexRequest.indicesOptions(IndicesOptions.fromRequest(request, getIndexRequest.indicesOptions()));
getIndexRequest.local(request.paramAsBoolean("local", getIndexRequest.local()));
getIndexRequest.humanReadable(request.paramAsBoolean("human", false));
final boolean defaults = request.paramAsBoolean("include_defaults", false);
return channel -> client.admin().indices().getIndex(getIndexRequest, new RestBuilderListener<GetIndexResponse>(channel) {
@Override
public RestResponse buildResponse(final GetIndexResponse response, final XContentBuilder builder) throws Exception {
builder.startObject();
{
for (final String index : response.indices()) {
builder.startObject(index);
{
for (final Feature feature : getIndexRequest.features()) {
switch(feature) {
case ALIASES:
writeAliases(response.aliases().get(index), builder, request);
break;
case MAPPINGS:
writeMappings(response.mappings().get(index), builder);
break;
case SETTINGS:
writeSettings(response.settings().get(index), builder, request, defaults);
break;
default:
throw new IllegalStateException("feature [" + feature + "] is not valid");
}
}
}
builder.endObject();
}
}
builder.endObject();
return new BytesRestResponse(OK, builder);
}
private void writeAliases(final List<AliasMetaData> aliases, final XContentBuilder builder, final Params params) throws IOException {
builder.startObject("aliases");
{
if (aliases != null) {
for (final AliasMetaData alias : aliases) {
AliasMetaData.Builder.toXContent(alias, builder, params);
}
}
}
builder.endObject();
}
private void writeMappings(final ImmutableOpenMap<String, MappingMetaData> mappings, final XContentBuilder builder) throws IOException {
builder.startObject("mappings");
{
if (mappings != null) {
for (final ObjectObjectCursor<String, MappingMetaData> typeEntry : mappings) {
builder.field(typeEntry.key);
builder.map(typeEntry.value.sourceAsMap());
}
}
}
builder.endObject();
}
private void writeSettings(final Settings settings, final XContentBuilder builder, final Params params, final boolean defaults) throws IOException {
builder.startObject("settings");
{
settings.toXContent(builder, params);
}
builder.endObject();
if (defaults) {
builder.startObject("defaults");
{
settingsFilter.filter(indexScopedSettings.diff(settings, RestGetIndicesAction.this.settings)).toXContent(builder, request);
}
builder.endObject();
}
}
});
}
Aggregations