Program: 90857
Project: 90857
Buggy source:
public static void compute(final Model model){
  final ListenableGraph<Spot,Link> graph=model.getGraph();
  final Spot tmp1=graph.vertexRef();
  final Spot tmp2=graph.vertexRef();
  final double[] s=new double[3];
  final double[] t=new double[3];
  for (  final Link link : graph.edges()) {
    link.getSource(tmp1).localize(s);
    link.getTarget(tmp2).localize(t);
    double dr2=0.;
    for (int d=0; d < 3; d++) {
      final double dx=s[d] - t[d];
      dr2=dx * dx;
    }
    link.feature(DISP).set(Math.sqrt(dr2));
  }
  final RefSet<Spot> roots=RefCollections.createRefSet(graph.vertices());
  for (  final Spot spot : graph.vertices()) {
    if (spot.incomingEdges().isEmpty())     roots.add(spot);
  }
  final DepthFirstSearch<Spot,Link> linkCollector=new DepthFirstSearch<>(graph,SearchDirection.UNDIRECTED);
  for (  final Spot root : roots) {
    final DoubleType dr=new DoubleType(0);
    final DoubleType tmp=new DoubleType(0);
    final LongType n=new LongType(0);
    linkCollector.setTraversalListener(new SearchListener<Spot,Link,DepthFirstSearch<Spot,Link>>(){
      @Override public void processVertexLate(      final Spot vertex,      final DepthFirstSearch<Spot,Link> search){
      }
      @Override public void processVertexEarly(      final Spot vertex,      final DepthFirstSearch<Spot,Link> search){
      }
      @Override public void processEdge(      final Link edge,      final Spot from,      final Spot to,      final DepthFirstSearch<Spot,Link> search){
        tmp.set(edge.feature(DISP).getDouble());
        dr.add(tmp);
        n.inc();
      }
    }
);
    linkCollector.start(root);
    if (linkCollector.wasAborted())     System.out.println("String_Node_Str" + root.getLabel() + "String_Node_Str");
 else     System.out.println(String.format(Locale.US,"String_Node_Str",root.getLabel(),(dr.get() / n.get()),n.get()));
  }
}

Fixed version (ground truth):
public static void compute(final Model model){
  final ListenableGraph<Spot,Link> graph=model.getGraph();
  final DoublePropertyMap<Link> displacement=new DoublePropertyMap<>(graph.edges(),Double.NaN);
  final Spot tmp1=graph.vertexRef();
  final Spot tmp2=graph.vertexRef();
  final double[] s=new double[3];
  final double[] t=new double[3];
  for (  final Link link : graph.edges()) {
    link.getSource(tmp1).localize(s);
    link.getTarget(tmp2).localize(t);
    double dr2=0.;
    for (int d=0; d < 3; d++) {
      final double dx=s[d] - t[d];
      dr2=dx * dx;
    }
    displacement.set(link,Math.sqrt(dr2));
  }
  final RefSet<Spot> roots=RefCollections.createRefSet(graph.vertices());
  for (  final Spot spot : graph.vertices()) {
    if (spot.incomingEdges().isEmpty())     roots.add(spot);
  }
  final DepthFirstSearch<Spot,Link> linkCollector=new DepthFirstSearch<>(graph,SearchDirection.UNDIRECTED);
  for (  final Spot root : roots) {
    final DoubleType dr=new DoubleType(0);
    final DoubleType tmp=new DoubleType(0);
    final LongType n=new LongType(0);
    linkCollector.setTraversalListener(new SearchListener<Spot,Link,DepthFirstSearch<Spot,Link>>(){
      @Override public void processVertexLate(      final Spot vertex,      final DepthFirstSearch<Spot,Link> search){
      }
      @Override public void processVertexEarly(      final Spot vertex,      final DepthFirstSearch<Spot,Link> search){
      }
      @Override public void processEdge(      final Link edge,      final Spot from,      final Spot to,      final DepthFirstSearch<Spot,Link> search){
        tmp.set(displacement.getDouble(edge));
        dr.add(tmp);
        n.inc();
      }
    }
);
    linkCollector.start(root);
    if (linkCollector.wasAborted())     System.out.println("String_Node_Str" + root.getLabel() + "String_Node_Str");
 else     System.out.println(String.format(Locale.US,"String_Node_Str",root.getLabel(),(dr.get() / n.get()),n.get()));
  }
}