[
https://issues.apache.org/jira/browse/FLUME-1026?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13233940#comment-13233940
]
[email protected] commented on FLUME-1026:
------------------------------------------------------
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/4400/#review6153
-----------------------------------------------------------
Juhani, looks great. I added a few suggestions around wording.
I agree with the general concerns. I'm not yet sure what I think we should do
about it though.
flume-ng-core/src/main/java/org/apache/flume/Channel.java
<https://reviews.apache.org/r/4400/#comment13238>
"...they may be simultaneously accessed by" (missing "by")
flume-ng-core/src/main/java/org/apache/flume/PollableSource.java
<https://reviews.apache.org/r/4400/#comment13239>
How about:
"guaranteed to be called only by a single thread at a time, with no
concurrency. Any other mechanism driving a pollable source must follow the same
semantics."
This sounds a lot like a synchronized call and I wonder if it makes sense
to call this out as required by PollableSource implementations.
flume-ng-core/src/main/java/org/apache/flume/Sink.java
<https://reviews.apache.org/r/4400/#comment13242>
How about switching a couple words around:
"While the Sink process call is guaranteed to only be accessed by a single
thread, other calls may be concurrently accessed and should thus be protected."
- Mike
On 2012-03-19 03:59:00, Juhani Connolly wrote:
bq.
bq. -----------------------------------------------------------
bq. This is an automatically generated e-mail. To reply, visit:
bq. https://reviews.apache.org/r/4400/
bq. -----------------------------------------------------------
bq.
bq. (Updated 2012-03-19 03:59:00)
bq.
bq.
bq. Review request for Flume.
bq.
bq.
bq. Summary
bq. -------
bq.
bq. I went over the basic interfaces and added some javadoc for developers of
new components.
bq.
bq. I am pretty concerned about the fact that pretty much everything is not
thread safe because off the lack of guarantees provided by some of the
interfaces(Configurable in particular).
bq.
bq. A lot of existing components assume thread safety(which is somewhat given
by isolation of process() type methods to a single runner thread). Should we be
fixing these components, or making some more guarantees about when and how
configuration calls should be called(e.g. only callable on a stopped
component?)
bq.
bq.
bq. This addresses bug Flume-1026.
bq. https://issues.apache.org/jira/browse/Flume-1026
bq.
bq.
bq. Diffs
bq. -----
bq.
bq. flume-ng-core/src/main/java/org/apache/flume/Channel.java 9d1c14c
bq. flume-ng-core/src/main/java/org/apache/flume/PollableSource.java 8806040
bq. flume-ng-core/src/main/java/org/apache/flume/Sink.java 4a706cf
bq. flume-ng-core/src/main/java/org/apache/flume/SinkProcessor.java ea6000b
bq. flume-ng-core/src/main/java/org/apache/flume/Source.java f4e9481
bq. flume-ng-core/src/main/java/org/apache/flume/Transaction.java 5b1fee5
bq. flume-ng-core/src/main/java/org/apache/flume/conf/Configurable.java
0fa4839
bq.
bq. Diff: https://reviews.apache.org/r/4400/diff
bq.
bq.
bq. Testing
bq. -------
bq.
bq. Doc only patch
bq.
bq.
bq. Thanks,
bq.
bq. Juhani
bq.
bq.
> Document Thread Safety Guarantees
> ---------------------------------
>
> Key: FLUME-1026
> URL: https://issues.apache.org/jira/browse/FLUME-1026
> Project: Flume
> Issue Type: Bug
> Components: Docs
> Affects Versions: v1.1.0
> Reporter: Will McQueen
> Assignee: Juhani Connolly
> Fix For: v1.2.0
>
>
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira