Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1484902

Summary: Satellite 5.7: IntegrityError: new row for relation "rhnserverdmi" violates check constraint "vn_rhnserverdmi_product"
Product: Red Hat Satellite 5 Reporter: Patrik Segedy <psegedy>
Component: ServerAssignee: Tomáš Kašpárek <tkasparek>
Status: CLOSED DEFERRED QA Contact: Red Hat Satellite QA List <satqe-list>
Severity: low Docs Contact:
Priority: unspecified    
Version: 570CC: tlestach
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-05-04 13:01:07 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1391420    
Attachments:
Description Flags
Output from dmidecode and /usr/share/rhn/up2date_client/hardware.py none

Description Patrik Segedy 2017-08-24 13:51:23 UTC
Created attachment 1317700 [details]
Output from dmidecode and /usr/share/rhn/up2date_client/hardware.py

Description of problem:
When I want to register system to Satellite 5.7 I get Internal Server Error in /var/log/up2date. On server side there is IntegrityError: new row for relation "rhnserverdmi" violates check constraint "vn_rhnserverdmi_product", because 'product' value is missing in a row.

Version-Release number of selected component (if applicable):
spacewalk-backend-2.3.3-53.el6sat.noarch

How reproducible:
always

Steps to Reproduce:
1. rhnreg_ks --username admin --password nimda --sslCACert=/usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT --serverUrl=https://<satellite url>/XMLRPC --force
2. It fails with 
Error communicating with server. The message was:
Internal Server Error
See /var/log/up2date for more information

Client:
Outputs from dmidecode and /usr/share/rhn/up2date_client/hardware.py in attachment.

==> /var/log/up2date <==
[Thu Aug 24 08:17:49 2017] up2date A protocol error occurred: Internal Server Error , attempt #1,
[Thu Aug 24 08:17:49 2017] up2date 
Traceback (most recent call last):
  File "/usr/sbin/rhnreg_ks", line 218, in <module>
    cli.run()
  File "/usr/share/rhn/up2date_client/rhncli.py", line 96, in run
    sys.exit(self.main() or 0)
  File "/usr/sbin/rhnreg_ks", line 148, in main
    rhnreg.sendHardware(systemId, hardwareList)
  File "/usr/share/rhn/up2date_client/rhnreg.py", line 475, in sendHardware
    s.registration.add_hw_profile(systemId, _encode_characters(hardwareList))
  File "/usr/share/rhn/up2date_client/rhnserver.py", line 63, in __call__
    return rpcServer.doCall(method, *args, **kwargs)
  File "/usr/share/rhn/up2date_client/rpcServer.py", line 204, in doCall
    ret = method(*args, **kwargs)
  File "/usr/lib64/python2.7/xmlrpclib.py", line 1233, in __call__
    return self.__send(self.__name, args)
  File "/usr/share/rhn/up2date_client/rpcServer.py", line 38, in _request1
    ret = self._request(methodname, params)
  File "/usr/lib/python2.7/site-packages/rhn/rpclib.py", line 384, in _request
    self._handler, request, verbose=self._verbose)
  File "/usr/lib/python2.7/site-packages/rhn/transports.py", line 171, in request
    headers, fd = req.send_http(host, handler)
  File "/usr/lib/python2.7/site-packages/rhn/transports.py", line 730, in send_http
    response.status, response.reason, response.msg)
<class 'up2date_client.up2dateErrors.CommunicationError'>: Error communicating with server. The message was:
Internal Server Error


------------------------------------------------------------
Server:
==> /var/opt/rh/rh-postgresql95/lib/pgsql/data/pg_log/postgresql-Thu.log <==
2017-08-24 08:16:13.280 EDT ERROR:  new row for relation "rhnserverdmi" violates check constraint "vn_rhnserverdmi_product"
2017-08-24 08:16:13.280 EDT DETAIL:  Failing row contains (242245, 1000159681, Hewlett-Packard, , , Hewlett-Packard, 786F2 v01.53, 08/27/2008, (chassis: CSL20100
11) (chassis: CSL2010011) (board: CSL2010011) ..., Hewlett-Packard, 2017-08-24 08:16:13.24125-04, 2017-08-24 08:16:13.24125-04).
2017-08-24 08:16:13.280 EDT STATEMENT:  insert into rhnServerDMI ( id, product, bios_release, vendor, board, bios_version, bios_vendor, asset, server_id, system 
) values ( 242245, '', '08/27/2008', 'Hewlett-Packard', 'Hewlett-Packard', '786F2 v01.53', 'Hewlett-Packard', '(chassis: CSL2010011) (chassis: CSL2010011) (board
: CSL2010011) (system: CSL2010011)', 1000159681, '' )

==> /var/log/httpd/error_log <==
[Thu Aug 24 08:16:13 2017] [error] Exception Handler Information
[Thu Aug 24 08:16:13 2017] [error] Traceback (most recent call last):
[Thu Aug 24 08:16:13 2017] [error]   File "/usr/lib/python2.6/site-packages/spacewalk/server/apacheRequest.py", line 122, in call_function
[Thu Aug 24 08:16:13 2017] [error]     response = func(*params)
[Thu Aug 24 08:16:13 2017] [error]   File "/usr/share/rhn/server/handlers/xmlrpc/registration.py", line 1020, in add_hw_profile
[Thu Aug 24 08:16:13 2017] [error]     self.__add_hw_profile_no_auth(server, hwlist)
[Thu Aug 24 08:16:13 2017] [error]   File "/usr/share/rhn/server/handlers/xmlrpc/registration.py", line 1014, in __add_hw_profile_no_auth
[Thu Aug 24 08:16:13 2017] [error]     server.save_hardware()
[Thu Aug 24 08:16:13 2017] [error]   File "/usr/lib/python2.6/site-packages/spacewalk/server/rhnServer/server_wrapper.py", line 90, in save_hardware
[Thu Aug 24 08:16:13 2017] [error]     ret = self.save_hardware_byid(self.server["id"])
[Thu Aug 24 08:16:13 2017] [error]   File "/usr/lib/python2.6/site-packages/spacewalk/server/rhnServer/server_hardware.py", line 942, in save_hardware_byid
[Thu Aug 24 08:16:13 2017] [error]     hw.save(sysid)
[Thu Aug 24 08:16:13 2017] [error]   File "/usr/lib/python2.6/site-packages/spacewalk/server/rhnServer/server_hardware.py", line 213, in save
[Thu Aug 24 08:16:13 2017] [error]     t[devid] = self.data
[Thu Aug 24 08:16:13 2017] [error]   File "/usr/lib/python2.6/site-packages/spacewalk/server/rhnSQL/sql_table.py", line 189, in __setitem__
[Thu Aug 24 08:16:13 2017] [error]     h.execute(**pdict)
[Thu Aug 24 08:16:13 2017] [error]   File "/usr/lib/python2.6/site-packages/spacewalk/server/rhnSQL/sql_base.py", line 147, in execute
[Thu Aug 24 08:16:13 2017] [error]     return self._execute_wrapper(self._execute, *p, **kw)
[Thu Aug 24 08:16:13 2017] [error]   File "/usr/lib/python2.6/site-packages/spacewalk/server/rhnSQL/driver_postgresql.py", line 286, in _execute_wrapper
[Thu Aug 24 08:16:13 2017] [error]     retval = function(*p, **kw)
[Thu Aug 24 08:16:13 2017] [error]   File "/usr/lib/python2.6/site-packages/spacewalk/server/rhnSQL/sql_base.py", line 201, in _execute
[Thu Aug 24 08:16:13 2017] [error]     return self._execute_(args, kwargs)
[Thu Aug 24 08:16:13 2017] [error]   File "/usr/lib/python2.6/site-packages/spacewalk/server/rhnSQL/driver_postgresql.py", line 305, in _execute_
[Thu Aug 24 08:16:13 2017] [error]     self._real_cursor.execute(self.sql, params)
[Thu Aug 24 08:16:13 2017] [error] IntegrityError: new row for relation "rhnserverdmi" violates check constraint "vn_rhnserverdmi_product"
[Thu Aug 24 08:16:13 2017] [error] DETAIL:  Failing row contains (242245, 1000159681, Hewlett-Packard, , , Hewlett-Packard, 786F2 v01.53, 08/27/2008, (chassis: CSL2010011) (chassis: CSL2010011) (board: CSL2010011) ..., Hewlett-Packard, 2017-08-24 08:16:13.24125-04, 2017-08-24 08:16:13.24125-04).


Actual results:
It is not possible to register this client.

Expected results:
Client should be registrable.

Additional info:
Registering this client to Satellite 5.8 works.