Andy Speagle wrote:
> On Wed, 2009-08-12 at 17:15 -0500, Andy Speagle wrote:
>> On Tue, 2009-08-11 at 15:42 -0500, Pradeep Kilambi wrote:
>>> So lookong through the code, I think I know what I problem is. The
>>> perl 
>>> code when settup up the channel cloning process does'nt not account
>>> for 
>>> checksum value. So what ends up happening is, after the perl pxt
>>> setup 
>>> page it navigates to edit.do which makes assumptions based on
>> channel 
>>> creation and edits and ends up trying to set the value thats not in
>>> the 
>>> form to being with. A workaround fix to get the cloning working for
>>> now 
>>> is to do something like,
>>>
>>> --- 
>>>
>> a/java/code/src/com/redhat/rhn/frontend/action/channel/manage/EditChannelAct
>>> +++ 
>>>
>> b/java/code/src/com/redhat/rhn/frontend/action/channel/manage/EditChannelAct
>>> @@ -568,7 +568,9 @@ public class EditChannelAction extends
>> RhnAction 
>>> implements
>>>              form.set("maintainer_phone", c.getMaintainerPhone());
>>>              form.set("maintainer_email", c.getMaintainerEmail());
>>>              form.set("support_policy", c.getSupportPolicy());
>>> -            form.set("checksum", c.getChecksum().getLabel());
>>> +            if (!c.isCloned()) {
>>> +                form.set("checksum", c.getChecksum().getLabel());
>>> +            }
>>>              if
>>> (c.isGloballySubscribable(ctx.getLoggedInUser().getOrg())) {
>>>                  form.set("per_user_subscriptions", "all");
>>>              }
>>>
>>> eventually once the cloning logic in perl supports the checksum
>>> stuff, 
>>> we can remove this additional check.
>>>
>>> I'll looking into adding this ability for the cloned channels.
>> Please 
>>> open a bug on this and I'll knock it out asap.
>>>
>>> Thanks,
>>> ~ Prad
>> Prad,
>>
>> I filed a bug as requested, grabbed the source and patched as
>> suggested.
>> This definitely fixed the problem short term.  Thanks for helping me
>> through this.
> 
> Ack,
> 
> Looks like I spoke too soon.  This changed allowed me to get into the
> channels that I had created before, but couldn't manage.  I deleted
> those cloned channels and cloned a new one.  It didn't give me any guff
> cloning a channel.  When I went to make ANY change to the newly cloned
> channel, it returned an internal server error and didn't save the
> change.  I was able to delete the channel though.  Just can't make any
> changes to it.
> 
> Thoughts?
> 

I think re-running this sql script will fix all the currently broken
channels, but you'll have to rerun it to fix newly created channels
every time (until a permanent fix gets created):

SQL> UPDATE rhnChannel SET
       checksum_type_id = (select id
                            from rhnChecksumType
                           where LABEL = 'sha1')
    WHERE checksum_type_id is null;



-Justin

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


-- 
Justin Sherrill, RHCA          1801 Varsity Drive.
Software Engineer                Raleigh, NC 27603
Red Hat, Inc.

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

Reply via email to