GitHub user Ethanlm opened a pull request:
https://github.com/apache/storm/pull/2325
[STORM-2738] The number of ackers should default to the number of actual
running workers on RAS cluster
**Problem**:
If `topology.acker.executors` is not set, the number of ackers will be
equal to `topology.workers`. But on RAS cluster, we don't set
`topology.workers` because the number of workers will be determined by the
scheduler. So in this case, the number of ackers will always be 1.
For example, there are 5 workers but only 1 acker.

**Analysis**:
The number of ackers has to be computed before scheduling happens, so it
knows how to schedule the topology. The number of workers is not set until the
topology is scheduled, so it is a bit of a chicken and egg problem.
**Solution**:
We could probably use the total amount of requested memory when the
topology is submitted divided by the memory per worker to get an estimate that
is better than 1.
JIRA at https://issues.apache.org/jira/browse/STORM-2738
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/Ethanlm/storm STORM-2738
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/storm/pull/2325.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #2325
----
commit 9a1f86182fc8c15c3fe170c5da32f15e37463717
Author: Ethan Li <[email protected]>
Date: 2017-09-13T18:55:47Z
[STORM-2738] The number of ackers should default to the number of actual
running workers on RAS cluster
----
---