Repository: flume Updated Branches: refs/heads/flume-1.6 6f3cb541c -> 6dbf51562
FLUME-2466. Embedded agent name cannot contain spaces (Johny Rufus via Hari) Project: http://git-wip-us.apache.org/repos/asf/flume/repo Commit: http://git-wip-us.apache.org/repos/asf/flume/commit/6dbf5156 Tree: http://git-wip-us.apache.org/repos/asf/flume/tree/6dbf5156 Diff: http://git-wip-us.apache.org/repos/asf/flume/diff/6dbf5156 Branch: refs/heads/flume-1.6 Commit: 6dbf51562e6c65ec8271b8b5ab44e5b0d269b1f8 Parents: 6f3cb54 Author: Hari Shreedharan <[email protected]> Authored: Wed Oct 8 20:21:25 2014 -0700 Committer: Hari Shreedharan <[email protected]> Committed: Wed Oct 8 20:21:25 2014 -0700 ---------------------------------------------------------------------- .../embedded/EmbeddedAgentConfiguration.java | 7 ++--- .../flume/agent/embedded/TestEmbeddedAgent.java | 27 ++++++++++++++++++++ 2 files changed, 31 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/flume/blob/6dbf5156/flume-ng-embedded-agent/src/main/java/org/apache/flume/agent/embedded/EmbeddedAgentConfiguration.java ---------------------------------------------------------------------- diff --git a/flume-ng-embedded-agent/src/main/java/org/apache/flume/agent/embedded/EmbeddedAgentConfiguration.java b/flume-ng-embedded-agent/src/main/java/org/apache/flume/agent/embedded/EmbeddedAgentConfiguration.java index 06ea7c0..02182dd 100644 --- a/flume-ng-embedded-agent/src/main/java/org/apache/flume/agent/embedded/EmbeddedAgentConfiguration.java +++ b/flume-ng-embedded-agent/src/main/java/org/apache/flume/agent/embedded/EmbeddedAgentConfiguration.java @@ -206,9 +206,10 @@ public class EmbeddedAgentConfiguration { } String sinkNames = properties.remove(SINKS); - String sourceName = "source-" + name; - String channelName = "channel-" + name; - String sinkGroupName = "sink-group-" + name; + String strippedName = name.replaceAll("\\s+",""); + String sourceName = "source-" + strippedName; + String channelName = "channel-" + strippedName; + String sinkGroupName = "sink-group-" + strippedName; /* * Now we are going to process the user supplied configuration http://git-wip-us.apache.org/repos/asf/flume/blob/6dbf5156/flume-ng-embedded-agent/src/test/java/org/apache/flume/agent/embedded/TestEmbeddedAgent.java ---------------------------------------------------------------------- diff --git a/flume-ng-embedded-agent/src/test/java/org/apache/flume/agent/embedded/TestEmbeddedAgent.java b/flume-ng-embedded-agent/src/test/java/org/apache/flume/agent/embedded/TestEmbeddedAgent.java index 975ba8d..241e2b5 100644 --- a/flume-ng-embedded-agent/src/test/java/org/apache/flume/agent/embedded/TestEmbeddedAgent.java +++ b/flume-ng-embedded-agent/src/test/java/org/apache/flume/agent/embedded/TestEmbeddedAgent.java @@ -165,6 +165,33 @@ public class TestEmbeddedAgent { Assert.assertEquals(newHeaders, event.getHeaders()); } + + @Test(timeout = 30000L) + public void testEmbeddedAgentName() throws Exception { + EmbeddedAgent embedAgent = new EmbeddedAgent("test 1 2" + serialNumber.incrementAndGet()); + List<Event> events = Lists.newArrayList(); + events.add(EventBuilder.withBody(body, headers)); + embedAgent.configure(properties); + embedAgent.start(); + embedAgent.putAll(events); + + Event event; + while((event = eventCollector.poll()) == null) { + Thread.sleep(500L); + } + Assert.assertNotNull(event); + Assert.assertArrayEquals(body, event.getBody()); + Assert.assertEquals(headers, event.getHeaders()); + if(embedAgent != null) { + try { + embedAgent.stop(); + } catch (Exception e) { + LOGGER.debug("Error shutting down agent", e); + } + } + } + + static class EventCollector implements AvroSourceProtocol { private final Queue<AvroFlumeEvent> eventQueue = new LinkedBlockingQueue<AvroFlumeEvent>();
