Repository: flume Updated Branches: refs/heads/trunk 9f0abea02 -> 9968f0fb0
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/9968f0fb Tree: http://git-wip-us.apache.org/repos/asf/flume/tree/9968f0fb Diff: http://git-wip-us.apache.org/repos/asf/flume/diff/9968f0fb Branch: refs/heads/trunk Commit: 9968f0fb00f8d25245067242a48040229952e46f Parents: 9f0abea Author: Hari Shreedharan <[email protected]> Authored: Wed Oct 8 20:21:25 2014 -0700 Committer: Hari Shreedharan <[email protected]> Committed: Wed Oct 8 20:22:03 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/9968f0fb/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/9968f0fb/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>();
