use of org.elasticsearch.common.io.stream.InputStreamStreamInput in project crate by crate.
the class NodeStatsContextTest method testStreamContextWithNullPorts.
@Test
public void testStreamContextWithNullPorts() throws Exception {
NodeStatsContext ctx1 = new NodeStatsContext(false);
ctx1.port(new HashMap<String, Integer>() {
{
put("http", null);
put("transport", 4300);
}
});
ByteArrayOutputStream outBuffer = new ByteArrayOutputStream();
StreamOutput out = new OutputStreamStreamOutput(outBuffer);
ctx1.writeTo(out);
ByteArrayInputStream inBuffer = new ByteArrayInputStream(outBuffer.toByteArray());
InputStreamStreamInput in = new InputStreamStreamInput(inBuffer);
NodeStatsContext ctx2 = new NodeStatsContext(false);
ctx2.readFrom(in);
assertThat(ctx2.port().get("http"), nullValue());
assertThat(ctx2.port().get("transport"), is(4300));
}
use of org.elasticsearch.common.io.stream.InputStreamStreamInput in project crate by crate.
the class NodeStatsContextTest method testStreamThreadPools.
@Test
public void testStreamThreadPools() throws Exception {
ThreadPools pools1 = ThreadPools.newInstance();
int size = 3;
for (int i = 0; i < size; i++) {
ThreadPools.ThreadPoolExecutorContext ctx = new ThreadPools.ThreadPoolExecutorContext(10 * i + 1, 10 * i + 2, 10 * i + 3, 10 * i + 4, 100L * i + 1L, 100L * i + 2L);
pools1.add(String.format("threadpool-%d", i), ctx);
}
ByteArrayOutputStream outBuffer = new ByteArrayOutputStream();
StreamOutput out = new OutputStreamStreamOutput(outBuffer);
pools1.writeTo(out);
ByteArrayInputStream inBuffer = new ByteArrayInputStream(outBuffer.toByteArray());
InputStreamStreamInput in = new InputStreamStreamInput(inBuffer);
ThreadPools pools2 = ThreadPools.newInstance();
pools2.readFrom(in);
assertThat(pools1, is(pools2));
}
use of org.elasticsearch.common.io.stream.InputStreamStreamInput in project crate by crate.
the class NodeStatsContextTest method testStreamThreadPoolsContext.
@Test
public void testStreamThreadPoolsContext() throws Exception {
ThreadPools.ThreadPoolExecutorContext ctx1 = new ThreadPools.ThreadPoolExecutorContext(10, 15, 20, 50, 1_000_000_000_000_000L, 1L);
ByteArrayOutputStream outBuffer = new ByteArrayOutputStream();
StreamOutput out = new OutputStreamStreamOutput(outBuffer);
ctx1.writeTo(out);
ByteArrayInputStream inBuffer = new ByteArrayInputStream(outBuffer.toByteArray());
InputStreamStreamInput in = new InputStreamStreamInput(inBuffer);
ThreadPools.ThreadPoolExecutorContext ctx2 = new ThreadPools.ThreadPoolExecutorContext();
ctx2.readFrom(in);
assertThat(ctx1, is(ctx2));
}
use of org.elasticsearch.common.io.stream.InputStreamStreamInput in project crate by crate.
the class NodeStatsContextTest method testStreamContext.
@Test
public void testStreamContext() throws Exception {
NodeStatsContext ctx1 = new NodeStatsContext(true);
ctx1.id(BytesRefs.toBytesRef("93c7ff92-52fa-11e6-aad8-3c15c2d3ad18"));
ctx1.name(BytesRefs.toBytesRef("crate1"));
ctx1.hostname(BytesRefs.toBytesRef("crate1.example.com"));
ctx1.timestamp(100L);
ctx1.version(Version.CURRENT);
ctx1.build(Build.CURRENT);
ctx1.restUrl(BytesRefs.toBytesRef("10.0.0.1:4200"));
ctx1.port(new HashMap<String, Integer>(2) {
{
put("http", 4200);
put("transport", 4300);
}
});
ctx1.jvmStats(JvmStats.jvmStats());
ctx1.osInfo(DummyOsInfo.INSTANCE);
ProcessProbe processProbe = ProcessProbe.getInstance();
ctx1.processStats(processProbe.processStats());
OsProbe osProbe = OsProbe.getInstance();
ctx1.osStats(osProbe.osStats());
ctx1.extendedOsStats(extendedNodeInfo.osStats());
ctx1.networkStats(extendedNodeInfo.networkStats());
ctx1.extendedProcessCpuStats(extendedNodeInfo.processCpuStats());
ctx1.extendedFsStats(extendedNodeInfo.fsStats());
ctx1.threadPools(ThreadPools.newInstance(threadPool));
ByteArrayOutputStream outBuffer = new ByteArrayOutputStream();
StreamOutput out = new OutputStreamStreamOutput(outBuffer);
ctx1.writeTo(out);
ByteArrayInputStream inBuffer = new ByteArrayInputStream(outBuffer.toByteArray());
InputStreamStreamInput in = new InputStreamStreamInput(inBuffer);
NodeStatsContext ctx2 = new NodeStatsContext(true);
ctx2.readFrom(in);
assertThat(ctx1.id(), is(ctx2.id()));
assertThat(ctx1.name(), is(ctx2.name()));
assertThat(ctx1.hostname(), is(ctx2.hostname()));
assertThat(ctx1.timestamp(), is(100L));
assertThat(ctx1.version(), is(ctx2.version()));
assertThat(ctx1.build().hash(), is(ctx2.build().hash()));
assertThat(ctx1.restUrl(), is(ctx2.restUrl()));
assertThat(ctx1.port(), is(ctx2.port()));
assertThat(ctx1.jvmStats().getTimestamp(), is(ctx2.jvmStats().getTimestamp()));
assertThat(ctx1.osInfo().getArch(), is(ctx2.osInfo().getArch()));
assertThat(ctx1.processStats().getTimestamp(), is(ctx2.processStats().getTimestamp()));
assertThat(ctx1.osStats().getTimestamp(), is(ctx2.osStats().getTimestamp()));
assertThat(ctx1.extendedOsStats().uptime(), is(ctx2.extendedOsStats().uptime()));
assertThat(ctx1.networkStats().timestamp(), is(ctx2.networkStats().timestamp()));
assertThat(ctx1.extendedProcessCpuStats().percent(), is(ctx2.extendedProcessCpuStats().percent()));
assertThat(ctx1.extendedFsStats().size(), is(ctx2.extendedFsStats().size()));
assertThat(ctx1.threadPools(), is(ctx2.threadPools()));
}
use of org.elasticsearch.common.io.stream.InputStreamStreamInput in project elasticsearch by elastic.
the class ScriptExceptionTests method testRoundTrip.
/** ensure we can round trip in serialization */
public void testRoundTrip() throws IOException {
ScriptException e = new ScriptException("messageData", new Exception("causeData"), Arrays.asList("stack1", "stack2"), "sourceData", "langData");
ByteArrayOutputStream bytes = new ByteArrayOutputStream();
StreamOutput output = new DataOutputStreamOutput(new DataOutputStream(bytes));
e.writeTo(output);
output.close();
StreamInput input = new InputStreamStreamInput(new ByteArrayInputStream(bytes.toByteArray()));
ScriptException e2 = new ScriptException(input);
input.close();
assertEquals(e.getMessage(), e2.getMessage());
assertEquals(e.getScriptStack(), e2.getScriptStack());
assertEquals(e.getScript(), e2.getScript());
assertEquals(e.getLang(), e2.getLang());
}
Aggregations