+ Multiplexing channel selector. 

-- 
Hari Shreedharan


On Wednesday, March 14, 2012 at 3:34 PM, Hari Shreedharan wrote:

> Verified by functional testing:
> AvroSource
> AvroSink
> SeqSource
> NetcatSource
> ExecSource
> MemoryChannel
> JdbcChannel
> AvroSink
> LoggerSink
> RollingFileSink
> 
> I will continue verification, as and when I get time.
> 
> Thanks
> Hari
> 
> 
> 
> -- 
> Hari Shreedharan
> 
> 
> On Wednesday, March 14, 2012 at 2:18 PM, Hari Shreedharan wrote:
> 
> > 
> > -----------------------------------------------------------
> > This is an automatically generated e-mail. To reply, visit:
> > https://reviews.apache.org/r/4115/
> > -----------------------------------------------------------
> > 
> > (Updated 2012-03-14 21:18:41.095856)
> > 
> > 
> > Review request for Flume.
> > 
> > 
> > Changes
> > -------
> > 
> > Added stubs for Jdbc channel and Hdfs sink which do not have any 
> > implementation. I am leaving it for the original implementer to update it.
> > 
> > 
> > Summary
> > -------
> > 
> > Currently the configuration of each component sits deep inside the 
> > component themselves. There is no way to verify if a configuration is valid 
> > before run time. In most systems like Flume, it is likely that these confs 
> > will be deployed from one single host, on to the machines where flume 
> > agents are running. Only when each agent starts, invalid confs are 
> > identified because the Agents would terminate by throwing exceptions. This 
> > is a first attempt to make a component-aware configuration system which is 
> > independent of the Flume, and does not require the Flume jar to be 
> > installed. Each component needs a configuration manager, which configures 
> > the components. 
> > 
> > I have not completed the validation part yet, but have completed the 
> > configuration managers for all the components that come in the flume jar. I 
> > will add support for the other components, such as HDFS sink, JDBC channel 
> > etc soon. I will also add the validation support to the classes, but would 
> > like a review of the model being proposed here.
> > 
> > Note that I do know of a couple of bugs in the existing diff(like that if 
> > the name of a config key starts with an Upper case letter, an exception is 
> > thrown) - I will fix and upload the review here soon.
> > 
> > 
> > This addresses bug FLUME-992.
> > https://issues.apache.org/jira/browse/FLUME-992
> > 
> > 
> > Diffs (updated)
> > -----
> > 
> > flume-ng-channels/flume-file-channel/src/main/java/org/apache/flume/channel/file/FileChannel.java
> >  a279453 
> > flume-ng-channels/flume-jdbc-channel/src/main/java/org/apache/flume/channel/jdbc/JdbcChannel.java
> >  bca0c50 
> > flume-ng-channels/flume-jdbc-channel/src/main/java/org/apache/flume/channel/jdbc/JdbcChannelProvider.java
> >  e445d61 
> > flume-ng-channels/flume-jdbc-channel/src/main/java/org/apache/flume/channel/jdbc/JdbcChannelProviderFactory.java
> >  6fbd6ef 
> > flume-ng-channels/flume-jdbc-channel/src/main/java/org/apache/flume/channel/jdbc/impl/JdbcChannelProviderImpl.java
> >  307ae89 
> > flume-ng-channels/flume-jdbc-channel/src/test/java/org/apache/flume/channel/jdbc/TestJdbcChannelProvider.java
> >  7710d46 
> > flume-ng-clients/flume-ng-log4jappender/src/test/java/org/apache/flume/clients/log4jappender/TestLog4jAppender.java
> >  68d95fb 
> > flume-ng-configuration/pom.xml PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/ComponentConfiguration.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/ComponentConfigurationFactory.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/ConfigurationException.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/Context.java 
> > PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/FlumeConfiguration.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/FlumeConfigurationError.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/FlumeConfigurationErrorType.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/channel/ChannelConfiguration.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/channel/ChannelSelectorConfiguration.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/channel/ChannelSelectorType.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/channel/ChannelType.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/channel/MemoryChannelConfiguration.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/channel/MultiplexingChannelSelectorConfiguration.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/channel/PseudoTxnMemoryChannelConfiguration.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/sink/AvroSinkConfiguration.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/sink/FailoverSinkProcessorConfiguration.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/sink/RollingFileSinkConfiguration.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/sink/SinkConfiguration.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/sink/SinkGroupConfiguration.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/sink/SinkProcessorConfiguration.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/sink/SinkProcessorType.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/sink/SinkType.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/source/AvroSourceConfiguration.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/source/ExecSourceConfiguration.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/source/NetcatSourceConfiguration.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/source/SourceConfiguration.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/main/java/org/apache/flume/conf/source/SourceType.java
> >  PRE-CREATION 
> > flume-ng-configuration/src/test/resources/flume-ng-error-test PRE-CREATION 
> > flume-ng-configuration/src/test/resources/flume-ng-test.conf PRE-CREATION 
> > flume-ng-core/pom.xml 247df37 
> > flume-ng-core/src/main/java/org/apache/flume/ChannelSelector.java fba2dcb 
> > flume-ng-core/src/main/java/org/apache/flume/Context.java 5294e31 
> > flume-ng-core/src/main/java/org/apache/flume/SinkProcessor.java ea6000b 
> > flume-ng-core/src/main/java/org/apache/flume/SinkProcessorType.java be1891b 
> > flume-ng-core/src/main/java/org/apache/flume/channel/AbstractChannel.java 
> > 352bf08 
> > flume-ng-core/src/main/java/org/apache/flume/channel/ChannelSelectorFactory.java
> >  800f471 
> > flume-ng-core/src/main/java/org/apache/flume/channel/ChannelSelectorType.java
> >  511fc65 
> > flume-ng-core/src/main/java/org/apache/flume/channel/ChannelType.java 
> > d8419e8 
> > flume-ng-core/src/main/java/org/apache/flume/channel/DefaultChannelFactory.java
> >  963a6a3 
> > flume-ng-core/src/main/java/org/apache/flume/channel/MemoryChannel.java 
> > bfa1fde 
> > flume-ng-core/src/main/java/org/apache/flume/channel/MultiplexingChannelSelector.java
> >  83928b7 
> > flume-ng-core/src/main/java/org/apache/flume/channel/PseudoTxnMemoryChannel.java
> >  489d3e5 
> > flume-ng-core/src/main/java/org/apache/flume/channel/ReplicatingChannelSelector.java
> >  8f22746 
> > flume-ng-core/src/main/java/org/apache/flume/conf/Configurable.java 0fa4839 
> > flume-ng-core/src/main/java/org/apache/flume/conf/ConfigurableComponent.java
> >  PRE-CREATION 
> > flume-ng-core/src/main/java/org/apache/flume/conf/Configurables.java 
> > 84492e5 
> > flume-ng-core/src/main/java/org/apache/flume/sink/AvroSink.java 3edc563 
> > flume-ng-core/src/main/java/org/apache/flume/sink/DefaultSinkFactory.java 
> > b89dfa0 
> > flume-ng-core/src/main/java/org/apache/flume/sink/DefaultSinkProcessor.java 
> > 257bab3 
> > flume-ng-core/src/main/java/org/apache/flume/sink/FailoverSinkProcessor.java
> >  9f5b856 
> > flume-ng-core/src/main/java/org/apache/flume/sink/RollingFileSink.java 
> > 7f1d3b3 
> > flume-ng-core/src/main/java/org/apache/flume/sink/SinkGroup.java 0dffd69 
> > flume-ng-core/src/main/java/org/apache/flume/sink/SinkProcessorFactory.java 
> > 6160a17 
> > flume-ng-core/src/main/java/org/apache/flume/sink/SinkType.java 6b08c09 
> > flume-ng-core/src/main/java/org/apache/flume/source/AvroSource.java 903889d 
> > flume-ng-core/src/main/java/org/apache/flume/source/DefaultSourceFactory.java
> >  a610e6f 
> > flume-ng-core/src/main/java/org/apache/flume/source/ExecSource.java b6b1181 
> > flume-ng-core/src/main/java/org/apache/flume/source/NetcatSource.java 
> > 94245ac 
> > flume-ng-core/src/main/java/org/apache/flume/source/SourceType.java 9082470 
> > flume-ng-core/src/main/java/org/apache/flume/source/SyslogTcpSource.java 
> > d78d27f 
> > flume-ng-core/src/main/java/org/apache/flume/source/SyslogUDPSource.java 
> > 34818f0 
> > flume-ng-core/src/test/java/org/apache/flume/TestContext.java 51c350f 
> > flume-ng-core/src/test/java/org/apache/flume/channel/AbstractBasicChannelSemanticsTest.java
> >  6e71e46 
> > flume-ng-core/src/test/java/org/apache/flume/channel/MockChannel.java 
> > 24b01e2 
> > flume-ng-core/src/test/java/org/apache/flume/channel/TestMemoryChannel.java 
> > e070864 
> > flume-ng-core/src/test/java/org/apache/flume/channel/TestMemoryChannelConcurrency.java
> >  8dad0b2 
> > flume-ng-core/src/test/java/org/apache/flume/channel/TestMemoryChannelTransaction.java
> >  bc81f26 
> > flume-ng-core/src/test/java/org/apache/flume/sink/TestAvroSink.java 3765924 
> > flume-ng-core/src/test/java/org/apache/flume/sink/TestFailoverSinkProcessor.java
> >  195c121 
> > flume-ng-core/src/test/java/org/apache/flume/sink/TestLoggerSink.java 
> > 92ff6fe 
> > flume-ng-core/src/test/java/org/apache/flume/sink/TestRollingFileSink.java 
> > 7e26e2a 
> > flume-ng-core/src/test/java/org/apache/flume/source/TestAvroSource.java 
> > c5c3f2f 
> > flume-ng-core/src/test/java/org/apache/flume/source/TestExecSource.java 
> > 6035270 
> > flume-ng-core/src/test/java/org/apache/flume/source/TestPollableSourceRunner.java
> >  c27f82c 
> > flume-ng-core/src/test/java/org/apache/flume/source/TestSequenceGeneratorSource.java
> >  579b257 
> > flume-ng-core/src/test/java/org/apache/flume/source/TestSyslogUdpSource.java
> >  d1db49d 
> > flume-ng-legacy-sources/flume-avro-source/src/main/java/org/apache/flume/source/avroLegacy/AvroLegacySource.java
> >  dde8f28 
> > flume-ng-legacy-sources/flume-avro-source/src/test/java/org/apache/flume/source/avroLegacy/TestLegacyAvroSource.java
> >  6e3eb53 
> > flume-ng-legacy-sources/flume-thrift-source/src/main/java/org/apache/flume/source/thriftLegacy/ThriftLegacySource.java
> >  fbf7362 
> > flume-ng-legacy-sources/flume-thrift-source/src/test/java/org/apache/flume/source/thriftLegacy/TestThriftLegacySource.java
> >  ddd9478 
> > flume-ng-node/src/main/java/org/apache/flume/conf/properties/FlumeConfiguration.java
> >  d66f6d1 
> > flume-ng-node/src/main/java/org/apache/flume/conf/properties/PropertiesFileConfigurationProvider.java
> >  97f72e1 
> > flume-ng-node/src/test/java/org/apache/flume/node/TestAbstractLogicalNodeManager.java
> >  521b586 
> > flume-ng-node/src/test/java/org/apache/flume/source/TestNetcatSource.java 
> > fb2a960 
> > flume-ng-node/src/test/resources/flume-conf.properties 848caca 
> > flume-ng-sinks/flume-hdfs-sink/src/main/java/org/apache/flume/sink/hdfs/HDFSEventSink.java
> >  da82f7e 
> > flume-ng-sinks/flume-hdfs-sink/src/test/java/org/apache/flume/sink/hdfs/TestHDFSEventSink.java
> >  8fa72a1 
> > flume-ng-sinks/flume-irc-sink/src/main/java/org/apache/flume/sink/irc/IRCSink.java
> >  8e77218 
> > pom.xml 794ebe3 
> > 
> > Diff: https://reviews.apache.org/r/4115/diff
> > 
> > 
> > Testing
> > -------
> > 
> > All existing unit tests for the components whose configuration has now been 
> > moved to these stubs pass.
> > 
> > 
> > Thanks,
> > 
> > Hari 
> 

Reply via email to