I'm sorry for the inconvenience caused. I have now fixed this issue and
checked in the modification to remote git.
if (statsPublisher.isEnabled()) {
Collection<String> partitionIds;
for (Service service :
TopologyManager.getTopology().getServices()) {
for (Cluster cluster : service.getClusters()) {
partitionIds = cluster.findPartitionIds();
for(String partitionId : partitionIds) {
statsPublisher.publish(cluster.getClusterId(), partitionId,
statsReader.getInFlightRequestCount(cluster.getClusterId(), partitionId));
}
}
}
}
Thanks
Imesh
On Wed, Dec 11, 2013 at 2:57 AM, chris snow <[email protected]> wrote:
> There was a recent change to the LoadBalancerStatsReader that is resulting
> in a build error:
>
> - int getInFlightRequestCount(String clusterId);
> + int getInFlightRequestCount(String clusterId, String partitionId);
>
>
> This is the build error:
>
>
> Waiting for Jenkins to finish collecting data[ERROR] Failed to execute
> goal org.apache.maven.plugins:maven-compiler-plugin:2.5.1:compile
> (default-compile) on project
> org.apache.stratos.load.balancer.extension.api: Compilation failure [ERROR]
> /var/lib/jenkins/jobs/stratos/workspace/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/LoadBalancerInFlightRequestCountNotifier.java:[62,86]
> error: method getInFlightRequestCount in interface LoadBalancerStatsReader
> cannot be applied to given types; [ERROR] -> [Help 1] [ERROR]
>
> I've put a temporary fix into LoadBalancerInFlightRequestCountNotifier by
> providing an empty partitionId string value:
>
> @Override
> public void run() {
> while (!terminated) {
> try {
> try {
> Thread.sleep(statsPublisherInterval);
> } catch (InterruptedException ignore) {
> }
>
> if (statsPublisher.isEnabled()) {
> for (Service service :
> TopologyManager.getTopology().getServices()) {
> for (Cluster cluster : service.getClusters()) {
> statsPublisher.publish(
> cluster.getClusterId(),
> "", /* FIXME: how to get the partitionId? */
>
> statsReader.getInFlightRequestCount(cluster.getClusterId(),
> "") /* FIXME: how to get the partitionId? */
> );
> }
> }
> } else if (log.isWarnEnabled()) {
> log.warn("CEP statistics publisher is disabled");
> }
> } catch (Exception e) {
> if (log.isErrorEnabled()) {
> log.error("Could not publish in-flight request count",
> e);
> }
> }
> }
> }
>
> I'll do some more investigation ...
>