-
-
Save efurman/c1400655e0d8728cac49 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package com.edmunds.training.real_time_logger; | |
import java.io.IOException; | |
import org.elasticsearch.action.bulk.BulkResponse; | |
import org.elasticsearch.client.Client; | |
import org.elasticsearch.client.Requests; | |
import org.elasticsearch.client.action.bulk.BulkRequestBuilder; | |
import org.elasticsearch.client.transport.TransportClient; | |
import org.elasticsearch.common.transport.InetSocketTransportAddress; | |
import org.elasticsearch.common.xcontent.XContentBuilder; | |
import org.elasticsearch.common.xcontent.XContentFactory; | |
public class BulkProcessorTest { | |
/** | |
* @param args | |
*/ | |
public static void main(String[] args) { | |
try { | |
Client client = new TransportClient().addTransportAddress(new InetSocketTransportAddress("localhost", 9300)); | |
XContentBuilder builder = XContentFactory.jsonBuilder().startObject(); | |
builder.field("firstname", "John"); | |
builder.field("lastname", "Lee"); | |
builder.endObject(); | |
XContentBuilder builder2 = XContentFactory.jsonBuilder().startObject(); | |
builder2.field("firstname", "Rick"); | |
builder2.field("lastname", "Hammer"); | |
builder2.endObject(); | |
BulkRequestBuilder request = client.prepareBulk(); | |
request.add(Requests.indexRequest("testindex").type("my_type") | |
.source(builder)); | |
request.add(Requests.indexRequest("testindex").type("my_type") | |
.source(builder2)); | |
BulkResponse response = request.execute().actionGet(); | |
if (response.hasFailures()) { | |
System.out.println("Bulk request failed"); | |
} | |
} catch (IOException e) { | |
e.printStackTrace(); | |
} | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package com.edmunds.training.real_time_logger; | |
import java.io.IOException; | |
import org.elasticsearch.action.bulk.BulkResponse; | |
import org.elasticsearch.client.Client; | |
import org.elasticsearch.client.Requests; | |
import org.elasticsearch.client.action.bulk.BulkRequestBuilder; | |
import org.elasticsearch.client.transport.TransportClient; | |
import org.elasticsearch.common.transport.InetSocketTransportAddress; | |
import org.elasticsearch.common.xcontent.XContentBuilder; | |
import org.elasticsearch.common.xcontent.XContentFactory; | |
public class BulkProcessorTest { | |
/** | |
* @param args | |
*/ | |
public static void main(String[] args) { | |
try { | |
Client client = new TransportClient().addTransportAddress(new InetSocketTransportAddress("localhost", 9300)); | |
XContentBuilder builder = XContentFactory.jsonBuilder().startObject(); | |
builder.field("firstname", "John"); | |
builder.field("lastname", "Smith"); | |
builder.endObject(); | |
builder.startObject(); | |
builder.field("firstname", "Tomas"); | |
builder.field("lastname", "Jane"); | |
builder.endObject(); | |
BulkRequestBuilder request = client.prepareBulk(); | |
request.add(Requests.indexRequest("testindex").type("my_type") | |
.source(builder)); | |
BulkResponse response = request.execute().actionGet(); | |
if (response.hasFailures()) { | |
System.out.println("Bulk request failed"); | |
} | |
} catch (IOException e) { | |
e.printStackTrace(); | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
I posted two versions of BulkProcessorTest.java. When I run the version that fails (it creates two separate XContenBuilder's), I am getting the following exception when executing the line "BulkResponse response = request.execute().actionGet();":
Failed to process bulk - [Tigra][inet[/10.32.40.17:9300]][indices/bulk]
org.elasticsearch.transport.RemoteTransportException: [Tigra][inet[/10.32.40.17:9300]][indices/bulk]
Caused by: java.io.EOFException
at org.elasticsearch.common.io.stream.LZFStreamInput.readBytes(LZFStreamInput.java:97)
at org.elasticsearch.common.io.stream.StreamInput.readUTF(StreamInput.java:123)
at org.elasticsearch.common.io.stream.HandlesStreamInput.readUTF(HandlesStreamInput.java:49)
at org.elasticsearch.action.support.replication.ShardReplicationOperationRequest.readFrom(ShardReplicationOperationRequest.java:132)
at org.elasticsearch.action.index.IndexRequest.readFrom(IndexRequest.java:573)
at org.elasticsearch.action.bulk.BulkRequest.readFrom(BulkRequest.java:261)
at org.elasticsearch.transport.netty.MessageChannelHandler.handleRequest(MessageChannelHandler.java:180)
at org.elasticsearch.transport.netty.MessageChannelHandler.messageReceived(MessageChannelHandler.java:85)
at org.elasticsearch.common.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:80)
at org.elasticsearch.common.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:545)
at org.elasticsearch.common.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:754)
at org.elasticsearch.common.netty.channel.Channels.fireMessageReceived(Channels.java:302)
at org.elasticsearch.common.netty.handler.codec.frame.FrameDecoder.unfoldAndFireMessageReceived(FrameDecoder.java:317)
at org.elasticsearch.common.netty.handler.codec.frame.FrameDecoder.callDecode(FrameDecoder.java:299)
at org.elasticsearch.common.netty.handler.codec.frame.FrameDecoder.messageReceived(FrameDecoder.java:216)
at org.elasticsearch.common.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:80)
at org.elasticsearch.common.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:545)
at org.elasticsearch.common.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:754)
at org.elasticsearch.common.netty.OpenChannelsHandler.handleUpstream(OpenChannelsHandler.java:51)
at org.elasticsearch.common.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:545)
at org.elasticsearch.common.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:540)
at org.elasticsearch.common.netty.channel.Channels.fireMessageReceived(Channels.java:274)
at org.elasticsearch.common.netty.channel.Channels.fireMessageReceived(Channels.java:261)
at org.elasticsearch.common.netty.channel.socket.nio.NioWorker.read(NioWorker.java:349)
at org.elasticsearch.common.netty.channel.socket.nio.NioWorker.processSelectedKeys(NioWorker.java:280)
at org.elasticsearch.common.netty.channel.socket.nio.NioWorker.run(NioWorker.java:200)
at org.elasticsearch.common.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108)
at org.elasticsearch.common.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:44)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)