Attached patch solves issue when DS was restarted but code still tried to use old invalid connection.

--
Martin Basti

From b6ab7ddc531bf119c1b9c119fa4d725df3714a69 Mon Sep 17 00:00:00 2001
From: Martin Basti <mba...@redhat.com>
Date: Mon, 29 Jun 2015 17:22:24 +0200
Subject: [PATCH] server upgrade: disconnect ldap2 connection before DS restart

ldap2 connection must be disconnected to prevent errors caused by trying
to reuse nonvalid connection
---
 ipaserver/install/upgradeinstance.py | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/ipaserver/install/upgradeinstance.py b/ipaserver/install/upgradeinstance.py
index 10f7c2ce0c25e733fb572502add82eedadf73d05..e443ce7c90f4dc18ccab38a36619697ff67aad2e 100644
--- a/ipaserver/install/upgradeinstance.py
+++ b/ipaserver/install/upgradeinstance.py
@@ -23,6 +23,8 @@ import sys
 import shutil
 import random
 import traceback
+
+from ipalib import api
 from ipaplatform.paths import paths
 from ipaplatform import services
 from ipapython.ipa_log_manager import *
@@ -177,6 +179,10 @@ class IPAUpgrade(service.Service):
 
     def __stop_instance(self):
         """Stop only the main DS instance"""
+        # disconnect before restart, otherwise NetworkErrors will be raised
+        # later
+        if api.Backend.ldap2.isconnected():
+            api.Backend.ldap2.disconnect()
         super(IPAUpgrade, self).stop(self.serverid)
 
     def create_instance(self):
-- 
2.4.3

-- 
Manage your subscription for the Freeipa-devel mailing list:
https://www.redhat.com/mailman/listinfo/freeipa-devel
Contribute to FreeIPA: http://www.freeipa.org/page/Contribute/Code

Reply via email to