AttributeError on client machine

Questions about WAPT Server / Requests and help related to the WAPT server
Forum Rules
Community Forum Rules
* English support on www.reddit.com/r/wapt
* French community support is available on this forum
* Please prefix the topic title with [RESOLVED] if it is resolved.
* Please do not edit a topic that is tagged [RESOLVED]. Open a new topic referencing the old one.
* Specify the installed WAPT version, full version, and build number (2.2.1.11957 / 2.2.2.12337 / etc.) as well as the Enterprise/Discovery edition.
* Versions 1.8.2 and earlier are no longer supported. The only questions accepted regarding version 1.8.2 are related to upgrading to a supported version (2.1, 2.2, etc.).
* Specify the server OS (Linux/Windows) and version (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019).
* Specify the OS of the administration/package creation machine and the machine with the problematic agent, if applicable (Windows 7/10/11/Debian 11/etc.).
* Avoid asking multiple questions when opening a topic, otherwise it may be ignored. If there are multiple topics, open separate topics, preferably one after the other and not all at the same time (i.e., do not spam the forum).
* Include code snippets, screenshots, and other images directly in the post. Links to Pastebin, Bitly, and other third-party sites will be systematically removed.
* As with any community forum, support is provided voluntarily by members. If you require commercial support, you can contact Tranquil IT's sales department at 02.40.97.57.55
Locked
Floflobel
Messages: 135
Registration: Oct 15, 2015 - 5:32 p.m.

July 29, 2016 - 6:52 PM

Good morning,

The WAPT systems present locally on the workstations are starting to make mistakes.
When I try to "Upgrade the system" the page displays in white with a "Server Error" message.

The error in the task list is as follows:

Code: Select all

AttributeError: type object 'exceptions.Exception' has no attribute 'create'
I tried looking at the server side (Debian) but everything is working. I can access the repository from the workstations, I can ping it.

I tried using the command prompt by running "wapt-get update" then "wapt-get upgrade" and it displays this error:

Code: Select all

Exception at 005755E5: EIdHTTPProtocolException:
HTTP/1.1 500 Server Error.
The issue is occurring on several machines (70/1500), the problem is starting to become critical as I can no longer perform any updates.

Thank you,
Floflobel
Messages: 135
Registration: Oct 15, 2015 - 5:32 p.m.

August 25, 2016 - 12:16

I'm adding the logs in the hope that someone can figure out where the problem is coming from.
Almost my entire fleet can no longer receive updates.
I attempted a complete reinstallation of WAPT on the client machine manually but I still get the same error message.

Code: Select all

2016-08-25 11:54:47,973 ERROR Traceback (most recent call last):

  File "C:\wapt\lib\site-packages\rocket\worker.py", line 170, in run
    self.run_app(conn)

  File "C:\wapt\lib\site-packages\rocket\methods\wsgi.py", line 244, in run_app
    output = self.app(environ, self.start_response)

  File "C:\wapt\lib\site-packages\flask\app.py", line 1836, in __call__
    return self.wsgi_app(environ, start_response)

  File "C:\wapt\lib\site-packages\flask\app.py", line 1820, in wsgi_app
    response = self.make_response(self.handle_exception(e))

  File "C:\wapt\lib\site-packages\flask\app.py", line 1403, in handle_exception
    reraise(exc_type, exc_value, tb)

  File "C:\wapt\lib\site-packages\flask\app.py", line 1817, in wsgi_app
    response = self.full_dispatch_request()

  File "C:\wapt\lib\site-packages\flask\app.py", line 1477, in full_dispatch_request
    rv = self.handle_user_exception(e)

  File "C:\wapt\lib\site-packages\flask\app.py", line 1381, in handle_user_exception
    reraise(exc_type, exc_value, tb)

  File "C:\wapt\lib\site-packages\flask\app.py", line 1475, in full_dispatch_request
    rv = self.dispatch_request()

  File "C:\wapt\lib\site-packages\flask\app.py", line 1461, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)

  File "C:\wapt\waptservice\waptservice.py", line 621, in decorated
    return f(*args, **kwargs)

  File "C:\wapt\waptservice\waptservice.py", line 934, in upgrade
    wapt().update()

  File "C:\wapt\common.py", line 3435, in update
    "upgrades": self.list_upgrade(),

  File "C:\wapt\common.py", line 4042, in list_upgrade
    depends = self.check_depends(result['install']+result['upgrade']+result['additional'])

  File "C:\wapt\common.py", line 3516, in check_depends
    (depends,missing) = self.waptdb.build_depends([p[0] for p in packages])

  File "C:\wapt\common.py", line 1673, in build_depends
    alldepends = dodepends(explored,packages,depth,missing)

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1663, in dodepends
    alldepends.extend(dodepends(explored,available_depends,depth+1,missing))

  File "C:\wapt\common.py", line 1645, in dodepends
    raise Exception.create('Max depth in build dependencies reached, aborting')

AttributeError: type object 'exceptions.Exception' has no attribute 'create'

Floflobel
Messages: 135
Registration: Oct 15, 2015 - 5:32 p.m.

August 26, 2016 - 10:16

I tried restarting the server, but it didn't change anything.
The logs located in /var/log don't give me any more information.
Floflobel
Messages: 135
Registration: Oct 15, 2015 - 5:32 p.m.

August 31, 2016 - 12:33

I tried looking on the git repository and the only link I found is https://github.com/tranquilit/WAPT/blob ... _init__.py.
Unfortunately, I am unable to read this code.

Line 465:

Code: Select all

	def __getattr__(self, attr):
		args=self._prop_map_get_.get(attr)
		if args is None:
			raise AttributeError("'%s' object has no attribute '%s'" % (repr(self), attr))
		return self._ApplyTypes_(*args)

	def __setattr__(self, attr, value):
		if attr in self.__dict__: self.__dict__[attr] = value; return
		try:
			args, defArgs=self._prop_map_put_[attr]
		except KeyError:
			raise AttributeError("'%s' object has no attribute '%s'" % (repr(self), attr))
		self._oleobj_.Invoke(*(args + (value,) + defArgs))
	def _get_good_single_object_(self, obj, obUserName=None, resultCLSID=None):
		return _get_good_single_object_(obj, obUserName, resultCLSID)
	def _get_good_object_(self, obj, obUserName=None, resultCLSID=None):
return _get_good_object_(obj, obUserName, resultCLSID)
Floflobel
Messages: 135
Registration: Oct 15, 2015 - 5:32 p.m.

August 31, 2016 - 5:48 PM

For your information, I just solved the problem.
A group had its own group as a dependency. I simply removed it, and WAPT is working again.
The error explained that there was an infinite loop in the dependencies.
Locked