opensolaris-64-test-only has failing tests due to show tables ordering difference

Bug #583590 reported by Patrick Crews
18
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Drizzle
Fix Released
Medium
Monty Taylor
Dexter
Fix Released
Medium
Monty Taylor

Bug Description

The following tests are failing in the suite due to a difference between the ordering of actual and expected SHOW TABLE output:
alter_table
data_dictionary_like_info
mysql_bug2397
schema_dictionary.show

Some example output:
main.data_dictionary_like_info [ fail ]
--- .././tests/r/data_dictionary_like_info.result 2010-05-20 22:32:08.946699182 +0300
+++ .././tests/r/data_dictionary_like_info.reject 2010-05-20 22:42:45.241587210 +0300
@@ -29,8 +29,8 @@
 show tables like 't%';
 Tables_in_test (t%)
 t2
-t3
 t5
+t3

This is the case for every test. The shifts in ordering appear to be arbitrary.

Related branches

Revision history for this message
Patrick Crews (patrick-crews) wrote :
Revision history for this message
Patrick Crews (patrick-crews) wrote :

Also tests drizzledump and mysqldump-max are failing due to this.

Closing out Bug#583594 - opensolaris-64-test-only is failing drizzledump and mysqldump-max due to unknown diff cause as a duplicate of this one.

Revision history for this message
Patrick Crews (patrick-crews) wrote :

Expected results are ordered

Revision history for this message
Stewart Smith (stewart) wrote : Re: [Bug 583590] Re: opensolaris-64-test-only has failing tests due to show tables ordering difference

On Thu, 20 May 2010 23:06:56 -0000, Patrick Crews <email address hidden> wrote:
> http://hudson.drizzle.org/job/drizzle-build-opensolaris-64-test-
> only/lastBuild/console
>
> and grep for the tests above.

Is that machine running UFS? Does the test create the tables in the
order printed out?

There is no really sane reason to order the SHOW TABLES output (and good
reasons against it, materialising everything and sorting it sucks).

However... we should do it in test results to compare things properly.

--
Stewart Smith

Revision history for this message
Monty Taylor (mordred) wrote : Re: [Bug 583590] Re: opensolaris-64-test-only has failing tests due to show tables ordering difference

On 5/20/2010 7:33 PM, Stewart Smith wrote:
> On Thu, 20 May 2010 23:06:56 -0000, Patrick Crews<email address hidden> wrote:
>> http://hudson.drizzle.org/job/drizzle-build-opensolaris-64-test-
>> only/lastBuild/console
>>
>> and grep for the tests above.
>
> Is that machine running UFS? Does the test create the tables in the
> order printed out?
>
> There is no really sane reason to order the SHOW TABLES output (and good
> reasons against it, materialising everything and sorting it sucks).
>
> However... we should do it in test results to compare things properly.
>

I believe these values are spending some time in an unordered_map. On
Solaris, we're using boost::unordered_map, whereas on not-solaris we're
using gcc's builtin std::unordered_map.

For sanity in the testing system, I think show tables pretty much has to
be sorted. Last I spoke to Brian, he said that show tables was being
re-written into a data_dictionary query that did include an order by ...
but I didn't look in to it far enough to verify.

If someone could find where the data_dictionary query is made...

Monty

Revision history for this message
Patrick Crews (patrick-crews) wrote :

We could add --sorted_results to the various uses of show tables, but this isn't necessarily a proper fix. It would rely on every future use of SHOW TABLES to also have this on opensolaris = lots of [ fail ], research things, then patch. Or at least that's how I've seen such gotcha's working in the past ; )

Changed in drizzle:
status: New → Confirmed
importance: Undecided → Medium
Revision history for this message
Monty Taylor (mordred) wrote :

Found the problem

Changed in drizzle:
assignee: nobody → Monty Taylor (mordred)
milestone: none → 2010-06-07
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.