[server] fix 'cnx' variable confusion in DBG_SQL exception case
The rollback handling expects 'cnx' to be the cubicweb Connection, but
the DBG_SQL block was replacing it with an sql connection, leading to
lulz down the line. Also remove obsolete getattr (the sqlite wrapping
is now done at the cnxset level, so cnx.cnxset.cnx should be the right
thing already).
frombase64importb64decode,b64encodetry:uri,newdn=__args__exceptValueError:print'USAGE: cubicweb-ctl shell <instance> ldap_change_base_dn.py -- <ldap source uri> <new dn>'printprint'you should not have updated your sources file yet'olddn=repo.sources_by_uri[uri].config['user-base-dn']assertolddn!=newdnraw_input("Ensure you've stopped the instance, type enter when done.")foreid,extidinsql("SELECT eid, extid FROM entities WHERE source='%s'"%uri):olduserdn=b64decode(extid)newuserdn=olduserdn.replace(olddn,newdn)ifnewuserdn!=olduserdn:printolduserdn,'->',newuserdnsql("UPDATE entities SET extid='%s' WHERE eid=%s"%(b64encode(newuserdn),eid))commit()print'you can now update the sources file to the new dn and restart the instance'