Program: 55198
Project: 55198
Buggy source:
@Ignore("String_Node_Str") @Test public void testTopologicalEvents() throws IOException, InterruptedException {
  final BlockingQueue<TopologicalEvent> eventsQueue=new LinkedBlockingQueue<>();
  yamlLoggger(() -> {
    try {
      YamlLogging.writeMessage("String_Node_Str" + "String_Node_Str");
      Subscriber<TopologicalEvent> subscription=eventsQueue::add;
      clientAssetTree.registerSubscriber("String_Node_Str",TopologicalEvent.class,subscription);
{
        TopologicalEvent take=eventsQueue.poll(1,SECONDS);
        Assert.assertEquals(ExistingAssetEvent.of(null,"String_Node_Str"),take);
      }
{
        clientAssetTree.acquireMap("String_Node_Str" + NAME,String.class,String.class).size();
{
          TopologicalEvent take=eventsQueue.poll(1,SECONDS);
          Assert.assertEquals(ExistingAssetEvent.of("String_Node_Str","String_Node_Str"),take);
        }
{
          TopologicalEvent take=eventsQueue.poll(1,SECONDS);
          Assert.assertEquals(AddedAssetEvent.of("String_Node_Str","String_Node_Str"),take);
        }
{
          TopologicalEvent take=eventsQueue.poll(1,SECONDS);
          Assert.assertEquals(AddedAssetEvent.of("String_Node_Str",NAME),take);
        }
      }
{
        serverAssetTree.acquireMap("String_Node_Str" + NAME + 2,String.class,String.class);
        TopologicalEvent take3=eventsQueue.poll(1,SECONDS);
        Assert.assertEquals(AddedAssetEvent.of("String_Node_Str",NAME + 2),take3);
      }
{
        serverAssetTree.acquireAsset("String_Node_Str").removeChild(NAME);
        TopologicalEvent take4=eventsQueue.poll(1,SECONDS);
        Assert.assertEquals(RemovedAssetEvent.of("String_Node_Str",NAME),take4);
      }
      clientAssetTree.unregisterSubscriber(NAME,subscription);
    }
 catch (    Exception e) {
      throw Jvm.rethrow(e);
    }
  }
);
}

Fixed version (ground truth):
@Ignore("String_Node_Str") @Test public void testTopologicalEvents() throws IOException, InterruptedException {
  final BlockingQueue<TopologicalEvent> eventsQueue=new LinkedBlockingQueue<>();
  yamlLoggger(() -> {
    try {
      YamlLogging.writeMessage("String_Node_Str" + "String_Node_Str");
      Subscriber<TopologicalEvent> subscription=eventsQueue::add;
      clientAssetTree.registerSubscriber("String_Node_Str",TopologicalEvent.class,subscription);
{
        TopologicalEvent take=eventsQueue.poll(1,SECONDS);
        Assert.assertEquals(ExistingAssetEvent.of(null,"String_Node_Str",Collections.emptySet()),take);
      }
{
        clientAssetTree.acquireMap("String_Node_Str" + NAME,String.class,String.class).size();
{
          TopologicalEvent take=eventsQueue.poll(1,SECONDS);
          Assert.assertEquals(ExistingAssetEvent.of("String_Node_Str","String_Node_Str",Collections.emptySet()),take);
        }
{
          TopologicalEvent take=eventsQueue.poll(1,SECONDS);
          Assert.assertEquals(AddedAssetEvent.of("String_Node_Str","String_Node_Str",Collections.emptySet()),take);
        }
{
          TopologicalEvent take=eventsQueue.poll(1,SECONDS);
          Assert.assertEquals(AddedAssetEvent.of("String_Node_Str",NAME,Collections.emptySet()),take);
        }
      }
{
        serverAssetTree.acquireMap("String_Node_Str" + NAME + 2,String.class,String.class);
        TopologicalEvent take3=eventsQueue.poll(1,SECONDS);
        Assert.assertEquals(AddedAssetEvent.of("String_Node_Str",NAME + 2,Collections.emptySet()),take3);
      }
{
        serverAssetTree.acquireAsset("String_Node_Str").removeChild(NAME);
        TopologicalEvent take4=eventsQueue.poll(1,SECONDS);
        Assert.assertEquals(RemovedAssetEvent.of("String_Node_Str",NAME,Collections.emptySet()),take4);
      }
      clientAssetTree.unregisterSubscriber(NAME,subscription);
    }
 catch (    Exception e) {
      throw Jvm.rethrow(e);
    }
  }
);
}