Bug 1126496

Summary: The UI should handle the error properly when puppet class created with name more than 255 chars
Product: Red Hat Satellite Reporter: Kedar Bidarkar <kbidarka>
Component: WebUIAssignee: orabin
Status: CLOSED CURRENTRELEASE QA Contact: sthirugn <sthirugn>
Severity: low Docs Contact:
Priority: unspecified    
Version: 6.0.3CC: dcleal, jmontleo, sthirugn
Target Milestone: UnspecifiedKeywords: Triaged
Target Release: Unused   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-09-11 12:19:09 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: 1120271    
Bug Blocks:    

Description Kedar Bidarkar 2014-08-04 15:14:19 UTC
Description of problem:


The UI throws, the below error message.

Error
PGError: ERROR: value too long for type character varying(255) : INSERT INTO "puppetclasses" ("created_at", "global_class_params_count", "hostgroups_count", "hosts_count", "lookup_keys_count", "name", "updated_at") VALUES ($1, $2, $3, $4, $5, $6, $7) RETURNING "id"

tail -f /var/log/foreman/production.log

Processing by PuppetclassesController#create as HTML
  Parameters: {"utf8"=>"✓", "authenticity_token"=>"ZUu7JwWwi9oIxqW9tXw7OONp9Ea54Y8MF2gfGMFOcjc=", "puppetclass"=>{"name"=>"ffffffffffffffffffffffffffffffffffddddddddddddddddddddhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhggggggggggggggggggggggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxgggggggggggggggggggggggggggggggggggggggggggggggggggggggyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyypppppppppppppppppppppppppppppppppppmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm", "hostgroup_ids"=>[""], "lookup_keys_attributes"=>{"new_lookup_keys"=>{"_destroy"=>"false", "key"=>"", "description"=>"", "key_type"=>"string", "default_value"=>"[FILTERED]", "validator_type"=>"", "path"=>"fqdn\r\nhostgroup\r\nos\r\ndomain", "lookup_values_attributes"=>"[FILTERED]"}}}, "commit"=>"Submit"}
Operation FAILED: PGError: ERROR:  value too long for type character varying(255)
: INSERT INTO "puppetclasses" ("created_at", "global_class_params_count", "hostgroups_count", "hosts_count", "lookup_keys_count", "name", "updated_at") VALUES ($1, $2, $3, $4, $5, $6, $7) RETURNING "id"
  Rendered common/500.html.erb within layouts/application (15.1ms)
  Rendered layouts/base.html.erb (3.3ms)
Completed 500 Internal Server Error in 71ms (Views: 24.5ms | ActiveRecord: 6.7ms)


Version-Release number of selected component (if applicable):
sat6-GA-snap3

How reproducible:
always

Steps to Reproduce:
1.
2.
3.

Actual results:
UI throws the PGError as mentioned above.

Expected results:
The PGError needs to be handled gracefully when more than 256 chars are used.

Additional info:

Comment 2 orabin 2014-08-05 15:39:21 UTC
see 1120199

Comment 4 sthirugn@redhat.com 2014-09-04 14:51:50 UTC
Verified. Now error message is displayed: is too long (maximum is 255 characters)

Version Tested:
GA Snap 7 - Satellite-6.0.4-RHEL-6-20140829.0

* apr-util-ldap-1.3.9-3.el6_0.1.x86_64
* candlepin-0.9.23-1.el6_5.noarch
* candlepin-common-1.0.1-1.el6_5.noarch
* candlepin-scl-1-5.el6_4.noarch
* candlepin-scl-quartz-2.1.5-5.el6_4.noarch
* candlepin-scl-rhino-1.7R3-1.el6_4.noarch
* candlepin-scl-runtime-1-5.el6_4.noarch
* candlepin-selinux-0.9.23-1.el6_5.noarch
* candlepin-tomcat6-0.9.23-1.el6_5.noarch
* elasticsearch-0.90.10-6.el6sat.noarch
* foreman-1.6.0.42-1.el6sat.noarch
* foreman-compute-1.6.0.42-1.el6sat.noarch
* foreman-gce-1.6.0.42-1.el6sat.noarch
* foreman-libvirt-1.6.0.42-1.el6sat.noarch
* foreman-ovirt-1.6.0.42-1.el6sat.noarch
* foreman-postgresql-1.6.0.42-1.el6sat.noarch
* foreman-proxy-1.6.0.30-1.el6sat.noarch
* foreman-selinux-1.6.0.14-1.el6sat.noarch
* foreman-vmware-1.6.0.42-1.el6sat.noarch
* katello-1.5.0-30.el6sat.noarch
* katello-ca-1.0-1.noarch
* katello-certs-tools-1.5.6-1.el6sat.noarch
* katello-installer-0.0.62-1.el6sat.noarch
* openldap-2.4.23-34.el6_5.1.x86_64
* openldap-devel-2.4.23-34.el6_5.1.x86_64
* pulp-katello-0.3-4.el6sat.noarch
* pulp-nodes-common-2.4.1-0.5.rc1.el6sat.noarch
* pulp-nodes-parent-2.4.1-0.5.rc1.el6sat.noarch
* pulp-puppet-plugins-2.4.1-0.5.rc1.el6sat.noarch
* pulp-puppet-tools-2.4.1-0.5.rc1.el6sat.noarch
* pulp-rpm-plugins-2.4.1-0.5.rc1.el6sat.noarch
* pulp-selinux-2.4.1-0.5.rc1.el6sat.noarch
* pulp-server-2.4.1-0.5.rc1.el6sat.noarch
* python-ldap-2.3.10-1.el6.x86_64
* ruby193-rubygem-net-ldap-0.3.1-3.el6sat.noarch
* ruby193-rubygem-runcible-1.1.0-2.el6sat.noarch

Comment 5 Bryan Kearney 2014-09-11 12:19:09 UTC
This was delivered with Satellite 6.0 which was released on 10 September 2014.