[ 
https://issues.apache.org/jira/browse/FLUME-721?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13088064#comment-13088064
 ] 

[email protected] commented on FLUME-721:
-----------------------------------------------------


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/1604/#review1577
-----------------------------------------------------------

Ship it!


We now expose Jetty dependencies (and enforce them) on consumers of 
InternalHttpServer. We've further deviated from normal war deployment 
complicating things for developers. Once again, we need to modify the core of 
Flume to add / remove / update its web applications which completely defeats 
the purpose of the original refactoring. The correct way to solve the missing 
log view and stacks servlet errors was to just create two wars (or even one) 
with the applications and drop it into the webapps directory; none of that 
works anymore. I disagree with the approach entirely but I'm positive it works 
as advertised. If we were going to just rewrite this back to StatusHttpServer, 
we should have just reverted the InternalHttpServer patch (because that's what 
this and the last change effectively do).


flume-core/src/main/java/com/cloudera/flume/agent/FlumeNode.java
<https://reviews.apache.org/r/1604/#comment3556>

    The whole point of InternalHttpServer was to eliminate Jetty references 
from FlumeNode.



flume-core/src/main/java/com/cloudera/flume/agent/FlumeNode.java
<https://reviews.apache.org/r/1604/#comment3557>

    A nicer way to handle this would be with dependencies injection. This just 
hard codes the binding here (rather than in InternalHttpServer) so it doesn't 
buy us anything in terms of abstraction or control.



flume-core/src/main/java/com/cloudera/flume/master/FlumeMaster.java
<https://reviews.apache.org/r/1604/#comment3558>

    A clean way to do this would be to configure a factory and have it return 
configured instances of InternalHttpServer. What's missing is a DI container to 
externalize the wiring of contexts -> http server -> flume node.



flume-core/src/main/java/com/cloudera/util/InternalHttpServer.java
<https://reviews.apache.org/r/1604/#comment3560>

    By removing this we've effectively moved back out of the normal deployment 
model. I don't understand why we can't adhere to conventions.



flume-core/src/main/java/com/cloudera/util/InternalHttpServer.java
<https://reviews.apache.org/r/1604/#comment3559>

    Further exposure of Jetty dependency.


- Eric


On 2011-08-19 22:07:34, jmhsieh wrote:
bq.  
bq.  -----------------------------------------------------------
bq.  This is an automatically generated e-mail. To reply, visit:
bq.  https://reviews.apache.org/r/1604/
bq.  -----------------------------------------------------------
bq.  
bq.  (Updated 2011-08-19 22:07:34)
bq.  
bq.  
bq.  Review request for Flume, Arvind Prabhakar and Eric Sammer.
bq.  
bq.  
bq.  Summary
bq.  -------
bq.  
bq.  This was previously posted at https://review.cloudera.org/r/1894/ and 
pushed because of timeout.  The patch actually was later then reverted because 
it had some problems with imports.  Since the previous patch had timed-out as 
opposed to being actually reviewed, I'm reposting for review.
bq.  
bq.  
bq.    FLUME-721: Webapps 'autofindport' feature does not work
bq.      
bq.      This refactors the internal http server so that context are created by 
a callback object.
bq.  
bq.  
bq.  This addresses bug flume-721.
bq.      https://issues.apache.org/jira/browse/flume-721
bq.  
bq.  
bq.  Diffs
bq.  -----
bq.  
bq.    flume-core/src/main/java/com/cloudera/flume/agent/FlumeNode.java b8f2b67 
bq.    flume-core/src/main/java/com/cloudera/flume/master/FlumeMaster.java 
5c99c43 
bq.    flume-core/src/main/java/com/cloudera/util/HttpServerTestUtils.java 
PRE-CREATION 
bq.    flume-core/src/main/java/com/cloudera/util/InternalHttpServer.java 
1f41460 
bq.    flume-core/src/main/java/com/cloudera/util/StatusHttpServer.java 58c0ece 
bq.    flume-core/src/test/java/com/cloudera/flume/agent/TestNodeJersey.java 
2625a99 
bq.    flume-core/src/test/java/com/cloudera/flume/master/TestMasterJersey.java 
146cd33 
bq.    flume-core/src/test/java/com/cloudera/util/InternalHttpServerTest.java 
b6a4cdd 
bq.    flume-core/src/test/java/com/cloudera/util/TestStatusHttpServer.java 
ac47ac5 
bq.    flume-node-web/src/test/java/com/cloudera/flume/agent/TestBootstrap.java 
8d241dd 
bq.  
bq.  Diff: https://reviews.apache.org/r/1604/diff
bq.  
bq.  
bq.  Testing
bq.  -------
bq.  
bq.  ran tests, they passed.
bq.  
bq.  
bq.  Thanks,
bq.  
bq.  jmhsieh
bq.  
bq.



> Webapps 'autofindport' feature does not work
> --------------------------------------------
>
>                 Key: FLUME-721
>                 URL: https://issues.apache.org/jira/browse/FLUME-721
>             Project: Flume
>          Issue Type: Bug
>    Affects Versions: v0.9.4
>            Reporter: Jonathan Hsieh
>            Assignee: Jonathan Hsieh
>            Priority: Critical
>             Fix For: v0.9.5
>
>         Attachments: 
> 0001-FLUME-721-Webapps-autofindport-feature-does-not-work.patch, 
> 0001-FLUME-721-Webapps-autofindport-feature-does-not-work.patch
>
>
> This is a regression in the upgrade and changes to the webapps from 0.9.3 to 
> 0.9.4. In previous versions the default was to enable an option that 
> automatically increment http server port in order if the desired port was had 
> something bound to it.  This made it easier to run and test multiple physical 
> nodes on a single machine.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to