On RHN Satellite, while changing software channel repository sync schedule it fails with ISE and traceback

Solution Unverified - Updated -

Issue

  • On RHN Satellite while changing software channel repository sync schedule it fails with ISE and  traceback :

    The user <ORGADMIN> is the not a RHN Satellite Administrator. Only users with RHN Satellite Administrator role can grant  or revoke RHN Satellite
     Administrator roles from other users.
    

Environment

  • Red Hat Network Satellite v5.4

Resolution

Root Cause

  • It is a bug where OrgAdmin is not allowed to update the reposync schedule.

Diagnostic Steps

  • From satellite web interface, select Channels -> Manage  Software Channels -> select one of  software channels which is bind  to repository -> Repositories -> Sync -> Under Select a  schedule: Change schedule from daily to Disable Schedule and press Schedule. It errors out with internal server error.

    "Internal Server Error
    
    The server experienced a problem which prevented your request 
    from being filled out. It may not be possible to execute this action at 
    this time.
    
    Please help us correct this problem by contacting us with details of how you received this message."
    
  • Received trace back:

    The following exception occurred while executing this request:
    POST /rhn/channels/manage/Sync.do
    
    Date:8/12/11 1:34:11 PM EEST
    Headers:
      host: satellite.csc.fi
      user-agent: Mozilla/5.0 (X11; Linux x86_64; rv:5.0) Gecko/20100101 Firefox/5.0
      accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
      accept-language: en-us,en;q=0.5
      accept-encoding: gzip, deflate
      accept-charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
      connection: keep-alive
      referer: https://satellite.csc.fi/rhn/channels/manage/Sync.do?cid=1206
      cookie: JSESSIONID=7AEC1EBA0DBABD26AA8EFA229CCF809D; __utma=105197073.257941345.1291029042.1308725565.1312811626.12;
    __utmz=105197073.1312811626.12.4.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmctr=grep%20-o%20;
     pxt-session-cookie=3581030x0c97413436932f518980bff9bc45e488
      content-type: application/x-www-form-urlencoded
      content-length: 503
    
    Request:
    Local Name = satellite.csc.fi
    Server Name = satellite.csc.fi
    Requested Session Id came from Cookie
    Requested Session Valid = true
    Session = org.apache.catalina.session.StandardSessionFacade@5b095b09[session=StandardSession[7AEC1EBA0DBABD26AA8EFA229CCF809D]]
    Protocol = https
    Request Locale = en_US
    Request Character Encoding = UTF-8
    Attribute
     Names = rhnActiveLang, javax.servlet.jsp.jstl.fmt.timeZone.request, 
    javax.servlet.request.key_size, javax.servlet.request.ssl_session, 
    org.apache.struts.action.MESSAGE,
    javax.servlet.request.cipher_suite,
     parentUrl, channel_name, date, org.apache.struts.action.MODULE, 
    __sitemesh__filterapplied, session, 
    org.apache.struts.action.mapping.instance, dataset, requestedUri, cid,
    
    Form Variables:
      date_day_week: 1
      csrf_token: 1722414814206173192
      1154021400_PAGE_SIZE_LABEL_SELECTED: null
      list_1154021400_parent_is_an_element: true
      date_weekly_hour: 2
      date_daily_hour: 2
      1154021400_PAGE_SIZE_LABEL: 25
      date_daily_minute: 10
      cid: 1206
      list_1154021400_sortdir: 
      list_1154021400_sortby: 
      list_1154021400_search_child: false
      date_monthly_hour: 2
      date_weekly_minute: 10
      date_monthly_minute: 10
      submitted: true
      date_status: daily
      date_cron: 0 10 2 ? * *
      date_day_month: 1
      dispatch: Schedule
      list_1154021400_search_parent: true
    
    
    User Information:
    User rheladmin (id 21, org_id 2)
    Exception:
    javax.servlet.ServletException: ERRORS:
    The user
     rheladmin is the not a RHN Satellite Administrator. Only users with RHN Satellite Administrator role can grant  or revoke RHN Satellite Administrator roles from other users.
            at org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:535)
            at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:433)
            at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:237)
            at com.redhat.rhn.frontend.struts.RhnRequestProcessor.process(RhnRequestProcessor.java:114)
            at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
            at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
            at com.redhat.rhn.frontend.servlets.AuthFilter.doFilter(AuthFilter.java:101)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
            at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:142)
            at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:58)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
            at com.redhat.rhn.frontend.servlets.LocalizedEnvironmentFilter.doFilter(LocalizedEnvironmentFilter.java:67)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
            at com.redhat.rhn.frontend.servlets.EnvironmentFilter.doFilter(EnvironmentFilter.java:108)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
            at com.redhat.rhn.frontend.servlets.SessionFilter.doFilter(SessionFilter.java:55)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
            at com.redhat.rhn.frontend.servlets.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:97)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
            at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
            at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
            at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
            at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
            at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:200)
            at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291)
            at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:775)
            at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:704)
            at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:897)
            at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
            at java.lang.Thread.run(Thread.java:736)
    Caused by: com.redhat.rhn.common.validator.ValidatorException: ERRORS:
    The
     user rheladmin is the not a RHN Satellite Administrator. Only users with RHN Satellite Administrator role can grant  or revoke RHN Satellite
     Administrator roles from other users.
            at com.redhat.rhn.common.validator.ValidatorException.raiseException(ValidatorException.java:79)
            at com.redhat.rhn.taskomatic.TaskomaticApi.ensureSatAdminRole(TaskomaticApi.java:135)
            at com.redhat.rhn.taskomatic.TaskomaticApi.unscheduleTask(TaskomaticApi.java:170)
            at com.redhat.rhn.taskomatic.TaskomaticApi.scheduleRepoSync(TaskomaticApi.java:111)
            at com.redhat.rhn.frontend.action.channel.manage.SyncRepositoriesAction.execute(SyncRepositoriesAction.java:124)
            at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
            ... 40 more
    

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.

Comments