JPPF Issue Tracker
star_faded.png
Please log in to bookmark issues
bug_report_small.png
CLOSED  Bug report JPPF-92  -  Regression: results returned by the driver should depend on the driver load-balancer
Posted Oct 27, 2012 - updated Dec 07, 2012
This issue is blocking the next release
icon_info.png This issue has been closed with status "Closed" and resolution "WON'T FIX".
Issue details
  • Type of issue
    Bug report
  • Status
     
    Closed
  • Assigned to
     lolo4j
  • Progress
       
  • Type of bug
    Not triaged
  • Likelihood
    Not triaged
  • Effect
    Not triaged
  • Posted by
     lolo4j
  • Owned by
    Not owned by anyone
  • Time spent
    1 week, 2 days, 22 hours
  • Category
    Server
  • Resolution
    WON'T FIX
  • Priority
    Critical
  • Reproducability
    Always
  • Severity
    Critical
  • Targetted for
    icon_milestones.png JPPF 3.2
Issue description
I'm using the following setup:
  • 1 driver + 1 node (local or remote, doesn't matter)
  • driver load-balancing parameters: manual algorithm, size = 100
  • client load-balancing parameters: manual algorithm, size = 1000000 (1 million)
  • only one remote channel, no local executor
  • submitting one job with 4000 tasks
In this configuration, the job's result listener resultsReceived() should be called 40 times with 100 tasks, but it is called 1 time with 4000 tasks.
Steps to reproduce this issue
Follow instructions in the description

#4
Comment posted by
 jandam
Oct 28, 19:22
This is new feature of new load balancer implemented in driver. Received bundles are isolated from bundles sent to node. So far receiving bundles and returning results is not optimized. Results are returned only once when whole bundle is completed. This is not optimal from performance and memory consumption view. Will be fixed to return partial results.
#7
Comment posted by
 lolo4j
Dec 07, 07:59
Fixed in SVN trunk revision 2555

I also implemented the foundation for customizable strategies for returning results back to the client.

For now, I have simply added a "resultsStrategy" attribute to the job's server-side SLA. With 2 predefined values:
  • SendResultsStrategy.NODE_RESULTS returns results as they come from the node (the default behavior, as in previous versions)
  • SendResultsStrategy.ALL_RESULTS returns results only when all have been received from the nodes
This means that the strategy is defined on a per job basis, and defaults to the "standard" behavior if left unspecified.

The issue was updated with the following change(s):
  • This issue has been closed
  • The status has been updated, from Being worked on to Closed.
  • This issue's progression has been updated to 100 percent completed.
  • The resolution has been updated, from Not determined to WON'T FIX.
  • Information about the user working on this issue has been changed, from lolo4j to Not being worked on.
  • Time spent on this issue, from No time spent to 1 week, 2 days, 22 hours.