The following exception is generated when attempting to install a package on a 
system, which is a pretty basic function for Spacewalk.  I believe it was 
reported before at 
https://www.redhat.com/archives/spacewalk-list/2011-November/msg00055.html.

[Thu Jan 12 11:12:34 2012] [error] Execution of 
/var/www/html/network/software/packages/install_confirm.pxt failed at Thu Jan 
12 11:12:34 2012: RHN::Exception: DBD::Pg::st execute failed: ERROR:  function 
evr_t(unknown, integer, integer) does not exist\nLINE 23:                      
AND SP.evr_id = PE.id), EVR_T(NULL, 0, ...\n                                    
                  ^\nHINT:  No function matches the given name and argument 
types. You might need to add explicit type casts.\n  RHN::DB 
/usr/share/perl5/vendor_perl/RHN/DB.pm 228 

Gurjeet Singh suggested a fix for the instantiation of the EVR_T at: 
http://www.redhat.com/archives/spacewalk-devel/2009-February/001536.html

--- Scheduler.pm.orig   2012-01-06 08:05:25.000000000 -0500
+++ Scheduler.pm        2012-01-12 11:49:27.820683130 -0500
@@ -660,7 +660,7 @@
                     FROM rhnServerPackage SP, rhnPackageEvr PE
                    WHERE SP.name_id = P.name_id
                      AND SP.server_id = S.id
-                     AND SP.evr_id = PE.id), ${rhn_class}EVR_T(NULL, 0, 0))
+                     AND SP.evr_id = PE.id), ${rhn_class}(NULL, 0, 0)::EVR_T)
              <
              (SELECT EVR FROM rhnPackageEVR PE WHERE PE.id = P.evr_id)
             )

Fixing DB/Scheduler.pm gets around that issue and EVR_T is instantiated fine.  
However, a new issue pops up:

[Thu Jan 12 11:49:37 2012] [error] Execution of 
/var/www/html/network/software/packages/install_confirm.pxt failed at Thu Jan 
12 11:49:37 2012: RHN::Exception: DBD::Pg::st execute failed: ERROR:  function 
nvl(evr_t, evr_t) does not exist\nLINE 19:    AND  (   (NVL((SELECT 
MAX(PE.evr)\n                      ^\nHINT:  No function matches the given name 
and argument types. You might need to add explicit type casts.

Any input?

How to reproduce:
- Go to a package
- Go to target systems
- Select any number of systems
- Confirm
- Exception occurs after the final confirmation

/aron

_______________________________________________
Spacewalk-devel mailing list
Spacewalk-devel@redhat.com
https://www.redhat.com/mailman/listinfo/spacewalk-devel

Reply via email to