Bug 1229308 - comparison of Array with Array failed [ops/db_list] while sorting VMDB client connections on Waiting resource
Summary: comparison of Array with Array failed [ops/db_list] while sorting VMDB clien...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat CloudForms Management Engine
Classification: Red Hat
Component: UI - OPS
Version: 5.4.0
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: GA
: 5.5.0
Assignee: Martin Hradil
QA Contact: Nandini Chandra
URL:
Whiteboard:
Depends On:
Blocks: 1255059
TreeView+ depends on / blocked
 
Reported: 2015-06-08 12:41 UTC by Nandini Chandra
Modified: 2015-12-08 13:16 UTC (History)
6 users (show)

Fixed In Version: 5.5.0.1
Doc Type: Bug Fix
Doc Text:
Clone Of:
: 1255059 (view as bug list)
Environment:
Last Closed: 2015-12-08 13:16:38 UTC
Category: ---
Cloudforms Team: ---
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2015:2551 0 normal SHIPPED_LIVE Moderate: CFME 5.5.0 bug fixes and enhancement update 2015-12-08 17:58:09 UTC

Description Nandini Chandra 2015-06-08 12:41:14 UTC
Description of problem:
-----------------------



Version-Release number of selected component (if applicable):
--------------------
5.4.0.5


How reproducible:
----------------
Always


Steps to Reproduce:
------------------
1.Navigate to Configure->Configuration->Database
2.Click 'Client Connections' tab.
3.Sort on 'Waiting resource'.


Actual results:
---------------
Error occurs


Expected results:
----------------
Error shouldn't occur.


Additional info:
---------------
Snippet from production.log:

[----] I, [2015-06-08T07:52:06.723454 #2666:78dea8]  INFO -- : Started POST "/ops/db_list?sort_choice=Waiting+Resource" for 127.0.0.1 at 2015-06-08 07:52:06 -0400
[----] I, [2015-06-08T07:52:06.727904 #2666:78dea8]  INFO -- : Processing by OpsController#db_list as JS
[----] I, [2015-06-08T07:52:06.728008 #2666:78dea8]  INFO -- :   Parameters: {"sort_choice"=>"Waiting Resource"}
[----] F, [2015-06-08T07:52:06.918105 #2666:78dea8] FATAL -- : Error caught: [ArgumentError] comparison of Array with Array failed
/var/www/miq/vmdb/lib/patches/ruport_patch.rb:18:in `sort_by'
/var/www/miq/vmdb/lib/patches/ruport_patch.rb:18:in `sort_rows_by'
/var/www/miq/vmdb/app/models/miq_report/generator/sorting.rb:9:in `sort_table'
/var/www/miq/vmdb/app/models/miq_report/generator/sorting.rb:38:in `build_sort_table'
/var/www/miq/vmdb/app/models/miq_report/generator.rb:383:in `build_table'
/var/www/miq/vmdb/app/models/miq_report/search.rb:122:in `paged_view_search'
/var/www/miq/vmdb/app/controllers/application_controller.rb:1944:in `get_view'
/var/www/miq/vmdb/app/controllers/ops_controller/db.rb:40:in `db_list'
/opt/rh/cfme-gemset/bundler/gems/rails-4842a8377644/actionpack/lib/action_controller/metal/implicit_render.rb:4:in `send_action'
/opt/rh/cfme-gemset/bundler/gems/rails-4842a8377644/actionpack/lib/abstract_controller/base.rb:167:in `process_action'
/opt/rh/cfme-gemset/bundler/gems/rails-4842a8377644/actionpack/lib/action_controller/metal/rendering.rb:10:in `process_action'
/opt/rh/cfme-gemset/bundler/gems/rails-4842a8377644/actionpack/lib/abstract_controller/callbacks.rb:18:in `block in process_action'
/opt/rh/cfme-gemset/bundler/gems/rails-4842a8377644/activesupport/lib/active_support/callbacks.rb:568:in `_run__3500232528208459928__process_action__909299370269807664__callbacks'
/opt/rh/cfme-gemset/bundler/gems/rails-4842a8377644/activesupport/lib/active_support/callbacks.rb:405:in `__run_callback'
/opt/rh/cfme-gemset/bundler/gems/rails-4842a8377644/activesupport/lib/active_support/callbacks.rb:385:in `_run_process_action_callbacks'
/opt/rh/cfme-gemset/bundler/gems/rails-4842a8377644/activesupport/lib/active_support/callbacks.rb:81:in `run_callbacks'
/opt/rh/cfme-gemset/bundler/gems/rails-4842a8377644/actionpack/lib/abstract_controller/callbacks.rb:17:in `process_action'
/opt/rh/cfme-gemset/bundler/gems/rails-4842a8377644/actionpack/lib/action_controller/metal/rescue.rb:29:in `process_action'
/opt/rh/cfme-gemset/bundler/gems/rails-4842a8377644/actionpack/lib/action_controller/metal/instrumentation.rb:30:in `block in process_action'
/opt/rh/cfme-gemset/bundler/gems/rails-4842a8377644/activesupport/lib/active_support/notifications.rb:123:in `block in instrument'
/opt/rh/cfme-gemset/bundler/gems/rails-4842a8377644/activesupport/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
/opt/rh/cfme-gemset/bundler/gems/rails-4842a8377644/activesupport/lib/active_support/notifications.rb:123:in `instrument'
/opt/rh/cfme-gemset/bundler/gems/rails-4842a8377644/actionpack/lib/action_controller/metal/instrumentation.rb:29:in `process_action'
/opt/rh/cfme-gemset/bundler/gems/rails-4842a8377644/actionpack/lib/action_controller/metal/params_wrapper.rb:207:in `process_action'
/opt/rh/cfme-gemset/bundler/gems/rails-4842a8377644/activerecord/lib/active_record/railties/controller_runtime.rb:18:in `process_action'
/opt/rh/cfme-gemset/bundler/gems/rails-4842a8377644/actionpack/lib/abstract_controller/base.rb:121:in `process'

Comment 4 CFME Bot 2015-06-23 17:59:02 UTC
New commit detected on manageiq/master:
https://github.com/ManageIQ/manageiq/commit/aa402bc5f89dd8adc3ab95bd6941e73e3fb2c8cc

commit aa402bc5f89dd8adc3ab95bd6941e73e3fb2c8cc
Author:     Martin Hradil <mhradil>
AuthorDate: Wed Jun 10 12:45:29 2015 +0000
Commit:     Martin Hradil <mhradil>
CommitDate: Wed Jun 10 12:52:37 2015 +0000

    VmdbDatabaseConnection - wait_resource is :integer, not :string
    
    Because pg_locks.relation is of type oid, at least since 7.4 and up to
    9.5 including. And oid is an integer.
    
    This fixes an "comparison of Array with Array failed" that would happen
    when trying to sort the client connections table by wait_resource, and
    one client had a lock (thus, integer value), and other didn't (nil -
    converted to "\xFF" in MiqReport::Generator::Sorting#build_sort_table,
    because of the false type).
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1229308

 vmdb/app/models/miq_report/generator/sorting.rb | 2 +-
 vmdb/app/models/vmdb_database_connection.rb     | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

Comment 5 CFME Bot 2015-08-19 23:02:02 UTC
New commit detected on cfme/5.4.z:
https://code.engineering.redhat.com/gerrit/gitweb?p=cfme.git;a=commitdiff;h=4cfbdeed3995f4a817ddda76daaa0ae71f65a835

commit 4cfbdeed3995f4a817ddda76daaa0ae71f65a835
Author:     Martin Hradil <mhradil>
AuthorDate: Wed Jun 10 12:45:29 2015 +0000
Commit:     Martin Hradil <mhradil>
CommitDate: Wed Aug 19 14:36:27 2015 +0000

    VmdbDatabaseConnection - wait_resource is :integer, not :string
    
    Because pg_locks.relation is of type oid, at least since 7.4 and up to
    9.5 including. And oid is an integer.
    
    This fixes an "comparison of Array with Array failed" that would happen
    when trying to sort the client connections table by wait_resource, and
    one client had a lock (thus, integer value), and other didn't (nil -
    converted to "\xFF" in MiqReport::Generator::Sorting#build_sort_table,
    because of the false type).
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1229308
    (cherry picked from commit aa402bc5f89dd8adc3ab95bd6941e73e3fb2c8cc)

 vmdb/app/models/miq_report/generator/sorting.rb | 2 +-
 vmdb/app/models/vmdb_database_connection.rb     | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

Comment 6 CFME Bot 2015-08-19 23:02:12 UTC
New commit detected on cfme/5.4.z:
https://code.engineering.redhat.com/gerrit/gitweb?p=cfme.git;a=commitdiff;h=4013cf2e8177ec8cd004e50de665e272443c1bbd

commit 4013cf2e8177ec8cd004e50de665e272443c1bbd
Merge: 3c64218 4cfbdee
Author:     Dan Clarizio <dclarizi>
AuthorDate: Wed Aug 19 12:08:50 2015 -0400
Commit:     Dan Clarizio <dclarizi>
CommitDate: Wed Aug 19 12:08:50 2015 -0400

    Merge branch 'bz1255059' into '5.4.z'
    
    VmdbDatabaseConnection - wait_resource is :integer, not :string
    
    Because pg_locks.relation is of type oid, at least since 7.4 and up to
    9.5 including. And oid is an integer.
    
    This fixes an "comparison of Array with Array failed" that would happen
    when trying to sort the client connections table by wait_resource, and
    one client had a lock (thus, integer value), and other didn't (nil -
    converted to "\xFF" in MiqReport::Generator::Sorting#build_sort_table,
    because of the false type).
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1229308
    (cherry picked from commit aa402bc5f89dd8adc3ab95bd6941e73e3fb2c8cc)
    
    5.4 bz: https://bugzilla.redhat.com/show_bug.cgi?id=1255059
    clean cherry pick
    
    See merge request !233

 vmdb/app/models/miq_report/generator/sorting.rb | 2 +-
 vmdb/app/models/vmdb_database_connection.rb     | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

Comment 7 CFME Bot 2015-08-20 00:31:39 UTC
New commit detected on cfme/5.4.z:
https://code.engineering.redhat.com/gerrit/gitweb?p=cfme.git;a=commitdiff;h=4cfbdeed3995f4a817ddda76daaa0ae71f65a835

commit 4cfbdeed3995f4a817ddda76daaa0ae71f65a835
Author:     Martin Hradil <mhradil>
AuthorDate: Wed Jun 10 12:45:29 2015 +0000
Commit:     Martin Hradil <mhradil>
CommitDate: Wed Aug 19 14:36:27 2015 +0000

    VmdbDatabaseConnection - wait_resource is :integer, not :string
    
    Because pg_locks.relation is of type oid, at least since 7.4 and up to
    9.5 including. And oid is an integer.
    
    This fixes an "comparison of Array with Array failed" that would happen
    when trying to sort the client connections table by wait_resource, and
    one client had a lock (thus, integer value), and other didn't (nil -
    converted to "\xFF" in MiqReport::Generator::Sorting#build_sort_table,
    because of the false type).
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1229308
    (cherry picked from commit aa402bc5f89dd8adc3ab95bd6941e73e3fb2c8cc)

 vmdb/app/models/miq_report/generator/sorting.rb | 2 +-
 vmdb/app/models/vmdb_database_connection.rb     | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

Comment 8 CFME Bot 2015-08-20 00:31:48 UTC
New commit detected on cfme/5.4.z:
https://code.engineering.redhat.com/gerrit/gitweb?p=cfme.git;a=commitdiff;h=4013cf2e8177ec8cd004e50de665e272443c1bbd

commit 4013cf2e8177ec8cd004e50de665e272443c1bbd
Merge: 3c64218 4cfbdee
Author:     Dan Clarizio <dclarizi>
AuthorDate: Wed Aug 19 12:08:50 2015 -0400
Commit:     Dan Clarizio <dclarizi>
CommitDate: Wed Aug 19 12:08:50 2015 -0400

    Merge branch 'bz1255059' into '5.4.z'
    
    VmdbDatabaseConnection - wait_resource is :integer, not :string
    
    Because pg_locks.relation is of type oid, at least since 7.4 and up to
    9.5 including. And oid is an integer.
    
    This fixes an "comparison of Array with Array failed" that would happen
    when trying to sort the client connections table by wait_resource, and
    one client had a lock (thus, integer value), and other didn't (nil -
    converted to "\xFF" in MiqReport::Generator::Sorting#build_sort_table,
    because of the false type).
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1229308
    (cherry picked from commit aa402bc5f89dd8adc3ab95bd6941e73e3fb2c8cc)
    
    5.4 bz: https://bugzilla.redhat.com/show_bug.cgi?id=1255059
    clean cherry pick
    
    See merge request !233

 vmdb/app/models/miq_report/generator/sorting.rb | 2 +-
 vmdb/app/models/vmdb_database_connection.rb     | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

Comment 9 CFME Bot 2015-08-20 01:48:29 UTC
New commit detected on cfme/5.4.z:
https://code.engineering.redhat.com/gerrit/gitweb?p=cfme.git;a=commitdiff;h=4cfbdeed3995f4a817ddda76daaa0ae71f65a835

commit 4cfbdeed3995f4a817ddda76daaa0ae71f65a835
Author:     Martin Hradil <mhradil>
AuthorDate: Wed Jun 10 12:45:29 2015 +0000
Commit:     Martin Hradil <mhradil>
CommitDate: Wed Aug 19 14:36:27 2015 +0000

    VmdbDatabaseConnection - wait_resource is :integer, not :string
    
    Because pg_locks.relation is of type oid, at least since 7.4 and up to
    9.5 including. And oid is an integer.
    
    This fixes an "comparison of Array with Array failed" that would happen
    when trying to sort the client connections table by wait_resource, and
    one client had a lock (thus, integer value), and other didn't (nil -
    converted to "\xFF" in MiqReport::Generator::Sorting#build_sort_table,
    because of the false type).
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1229308
    (cherry picked from commit aa402bc5f89dd8adc3ab95bd6941e73e3fb2c8cc)

 vmdb/app/models/miq_report/generator/sorting.rb | 2 +-
 vmdb/app/models/vmdb_database_connection.rb     | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

Comment 10 CFME Bot 2015-08-20 01:48:35 UTC
New commit detected on cfme/5.4.z:
https://code.engineering.redhat.com/gerrit/gitweb?p=cfme.git;a=commitdiff;h=4013cf2e8177ec8cd004e50de665e272443c1bbd

commit 4013cf2e8177ec8cd004e50de665e272443c1bbd
Merge: 3c64218 4cfbdee
Author:     Dan Clarizio <dclarizi>
AuthorDate: Wed Aug 19 12:08:50 2015 -0400
Commit:     Dan Clarizio <dclarizi>
CommitDate: Wed Aug 19 12:08:50 2015 -0400

    Merge branch 'bz1255059' into '5.4.z'
    
    VmdbDatabaseConnection - wait_resource is :integer, not :string
    
    Because pg_locks.relation is of type oid, at least since 7.4 and up to
    9.5 including. And oid is an integer.
    
    This fixes an "comparison of Array with Array failed" that would happen
    when trying to sort the client connections table by wait_resource, and
    one client had a lock (thus, integer value), and other didn't (nil -
    converted to "\xFF" in MiqReport::Generator::Sorting#build_sort_table,
    because of the false type).
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1229308
    (cherry picked from commit aa402bc5f89dd8adc3ab95bd6941e73e3fb2c8cc)
    
    5.4 bz: https://bugzilla.redhat.com/show_bug.cgi?id=1255059
    clean cherry pick
    
    See merge request !233

 vmdb/app/models/miq_report/generator/sorting.rb | 2 +-
 vmdb/app/models/vmdb_database_connection.rb     | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

Comment 11 CFME Bot 2015-08-20 02:55:24 UTC
New commit detected on cfme/5.4.z:
https://code.engineering.redhat.com/gerrit/gitweb?p=cfme.git;a=commitdiff;h=4cfbdeed3995f4a817ddda76daaa0ae71f65a835

commit 4cfbdeed3995f4a817ddda76daaa0ae71f65a835
Author:     Martin Hradil <mhradil>
AuthorDate: Wed Jun 10 12:45:29 2015 +0000
Commit:     Martin Hradil <mhradil>
CommitDate: Wed Aug 19 14:36:27 2015 +0000

    VmdbDatabaseConnection - wait_resource is :integer, not :string
    
    Because pg_locks.relation is of type oid, at least since 7.4 and up to
    9.5 including. And oid is an integer.
    
    This fixes an "comparison of Array with Array failed" that would happen
    when trying to sort the client connections table by wait_resource, and
    one client had a lock (thus, integer value), and other didn't (nil -
    converted to "\xFF" in MiqReport::Generator::Sorting#build_sort_table,
    because of the false type).
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1229308
    (cherry picked from commit aa402bc5f89dd8adc3ab95bd6941e73e3fb2c8cc)

 vmdb/app/models/miq_report/generator/sorting.rb | 2 +-
 vmdb/app/models/vmdb_database_connection.rb     | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

Comment 12 CFME Bot 2015-08-20 02:55:30 UTC
New commit detected on cfme/5.4.z:
https://code.engineering.redhat.com/gerrit/gitweb?p=cfme.git;a=commitdiff;h=4013cf2e8177ec8cd004e50de665e272443c1bbd

commit 4013cf2e8177ec8cd004e50de665e272443c1bbd
Merge: 3c64218 4cfbdee
Author:     Dan Clarizio <dclarizi>
AuthorDate: Wed Aug 19 12:08:50 2015 -0400
Commit:     Dan Clarizio <dclarizi>
CommitDate: Wed Aug 19 12:08:50 2015 -0400

    Merge branch 'bz1255059' into '5.4.z'
    
    VmdbDatabaseConnection - wait_resource is :integer, not :string
    
    Because pg_locks.relation is of type oid, at least since 7.4 and up to
    9.5 including. And oid is an integer.
    
    This fixes an "comparison of Array with Array failed" that would happen
    when trying to sort the client connections table by wait_resource, and
    one client had a lock (thus, integer value), and other didn't (nil -
    converted to "\xFF" in MiqReport::Generator::Sorting#build_sort_table,
    because of the false type).
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1229308
    (cherry picked from commit aa402bc5f89dd8adc3ab95bd6941e73e3fb2c8cc)
    
    5.4 bz: https://bugzilla.redhat.com/show_bug.cgi?id=1255059
    clean cherry pick
    
    See merge request !233

 vmdb/app/models/miq_report/generator/sorting.rb | 2 +-
 vmdb/app/models/vmdb_database_connection.rb     | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

Comment 13 Nandini Chandra 2015-09-15 20:31:27 UTC
Verified in master.20150915141925_58436ca

Comment 14 Nandini Chandra 2015-09-29 17:00:42 UTC
Verified in 5.5.0.1

Comment 16 errata-xmlrpc 2015-12-08 13:16:38 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2015:2551


Note You need to log in before you can comment on or make changes to this bug.