Program: 160392
Project: 160392
Buggy source:
private void updatePlugins(DatabaseSession session) throws BimserverDatabaseException {
  Map<PluginContext,Plugin> allPlugins=pluginManager.getAllPlugins(false);
  for (  PluginContext pluginContext : allPlugins.keySet()) {
    Plugin plugin=pluginContext.getPlugin();
    System.out.println(pluginContext.getIdentifier());
    Condition pluginCondition=new AttributeCondition(StorePackage.eINSTANCE.getPluginDescriptor_Identifier(),new StringLiteral(pluginContext.getIdentifier()));
    Map<Long,PluginDescriptor> results=session.query(pluginCondition,PluginDescriptor.class,OldQuery.getDefault());
    if (results.size() == 0) {
      PluginDescriptor pluginDescriptor=session.create(PluginDescriptor.class);
      pluginDescriptor.setIdentifier(pluginContext.getIdentifier());
      pluginDescriptor.setPluginClassName(plugin.getClass().getName());
      pluginDescriptor.setSimpleName(plugin.getClass().getSimpleName());
      pluginDescriptor.setDescription(pluginContext.getDescription() + "String_Node_Str" + pluginContext.getVersion());
      pluginDescriptor.setLocation(pluginContext.getLocation().toString());
      pluginDescriptor.setPluginInterfaceClassName(getPluginInterface(plugin.getClass()).getName());
      pluginDescriptor.setEnabled(true);
    }
 else     if (results.size() == 1) {
      PluginDescriptor pluginDescriptor=results.values().iterator().next();
      pluginDescriptor.setIdentifier(pluginContext.getIdentifier());
      pluginDescriptor.setPluginClassName(plugin.getClass().getName());
      pluginDescriptor.setSimpleName(plugin.getClass().getSimpleName());
      pluginDescriptor.setDescription(pluginContext.getDescription() + "String_Node_Str" + pluginContext.getVersion());
      pluginDescriptor.setLocation(pluginContext.getLocation().toString());
      pluginDescriptor.setPluginInterfaceClassName(getPluginInterface(plugin.getClass()).getName());
      session.store(pluginDescriptor);
      pluginManager.getPluginContext(plugin).setEnabled(pluginDescriptor.getEnabled(),false);
    }
 else {
      LOGGER.error("String_Node_Str" + plugin.getClass().getName());
    }
  }
}

Fixed version (ground truth):
private void updatePlugins(DatabaseSession session) throws BimserverDatabaseException {
  Map<PluginContext,Plugin> allPlugins=pluginManager.getAllPlugins(false);
  for (  PluginContext pluginContext : allPlugins.keySet()) {
    Plugin plugin=pluginContext.getPlugin();
    Condition pluginCondition=new AttributeCondition(StorePackage.eINSTANCE.getPluginDescriptor_Identifier(),new StringLiteral(pluginContext.getIdentifier()));
    Map<Long,PluginDescriptor> results=session.query(pluginCondition,PluginDescriptor.class,OldQuery.getDefault());
    if (results.size() == 0) {
      PluginDescriptor pluginDescriptor=session.create(PluginDescriptor.class);
      pluginDescriptor.setIdentifier(pluginContext.getIdentifier());
      pluginDescriptor.setPluginClassName(plugin.getClass().getName());
      pluginDescriptor.setSimpleName(plugin.getClass().getSimpleName());
      pluginDescriptor.setDescription(pluginContext.getDescription() + "String_Node_Str" + pluginContext.getVersion());
      pluginDescriptor.setLocation(pluginContext.getLocation().toString());
      pluginDescriptor.setPluginInterfaceClassName(getPluginInterface(plugin.getClass()).getName());
      pluginDescriptor.setEnabled(true);
    }
 else     if (results.size() == 1) {
      PluginDescriptor pluginDescriptor=results.values().iterator().next();
      pluginDescriptor.setIdentifier(pluginContext.getIdentifier());
      pluginDescriptor.setPluginClassName(plugin.getClass().getName());
      pluginDescriptor.setSimpleName(plugin.getClass().getSimpleName());
      pluginDescriptor.setDescription(pluginContext.getDescription() + "String_Node_Str" + pluginContext.getVersion());
      pluginDescriptor.setLocation(pluginContext.getLocation().toString());
      pluginDescriptor.setPluginInterfaceClassName(getPluginInterface(plugin.getClass()).getName());
      session.store(pluginDescriptor);
      pluginManager.getPluginContext(plugin).setEnabled(pluginDescriptor.getEnabled(),false);
    }
 else {
      LOGGER.error("String_Node_Str" + plugin.getClass().getName());
    }
  }
}