Re: Broken tests
| From: | Dmitry Stogov | Date: | Fri, 26 Dec 2014 17:53:35 +0000 |
| Subject: | Re: Broken tests | ||
| References: | 1 2 3 | Groups: | php.cvs |
| Request: | Send a blank email to php-cvs+get-83877@lists.php.net to get a copy of this message | ||
Hi Keyer,
In my tests (Linux x86 and x86_64) the current behavior of mysqlnd differ
form libmysql.
Also your patch works differently in DEBUG and RELEASE mode.
GCC just eliminates double conversion and makes your patch useless for
RELEASE build (this may be fixed adding "volatile")
I'm not completely sure what behavior is right.
It would be great if you decide what should be done with Andrey and fix
this.
The fixes back and forth were done because of misunderstanding of real
problem.
Thanks. Dmitry.
On Fri, Dec 26, 2014 at 8:25 PM, Keyur Govande <keyurgovande@gmail.com>
wrote:
>
>
> On Fri, Dec 26, 2014 at 10:14 AM, Dmitry Stogov <dmitry@zend.com> wrote:
>
>> Hi,
>>
>> It seems like the source of the problem is commit c044164a authored by
>> Keyur,
>>
>> I caught the problem because the behavior is different in DEBUG and
>> RELEASE builds.
>> However, I think the behavior introduced by that patch may be wrong.
>> At least it produces different results in comparison to libmysql.
>>
>> Andrey, please made a decision.
>>
>> Thanks. Dmitry.
>>
>
> Hello,
>
> I am a bit confused...I see that commit c2a047cf reverts my commit to fix
> failing tests (4e2c016). But then c2a047cf was also reverted back by
> 4409b6db3 a few hours back.
>
> Is there something I can help with? The original patch c044164a was
> authored to fix bug #67839 and bring mysqli in parity with libmysql's
> behavior on floating point numbers.
>
> Thanks,
> Keyur.
>
>
>>
>>
>> ---------- Forwarded message ----------
>> From: Dmitry Stogov <dmitry@zend.com>
>> Date: Fri, Dec 26, 2014 at 5:18 PM
>> Subject: Broken tests
>> To: Xinchen Hui <xinchen.h@zend.com>
>> Cc: keyur_govande@yahoo.com, "php-cvs@lists.php.net" <
>> php-cvs@lists.php.net>
>>
>>
>> Hi Xinchen,
>>
>> The commit c2a047cf99f3d020bab12701e8dafed7424673bf made few tests to
>> start fail on 32-bit DEBUG build. The same tests seems to work in RELEASE
>> build.
>>
>> Are you sure these the are changed in a proper way?
>> For me it looks like something was broken in code, and then tests were
>> adjusted for wrong new behaviour.
>>
>> Please, find the source of the problem.
>>
>> Thanks. Dmitry.
>>
>> > mysqli fetch float values [ext/mysqli/tests/010.phpt]
>> > mysqli fetch mixed values [ext/mysqli/tests/011.phpt]
>> > mysqli fetch mixed values 2 [ext/mysqli/tests/012.phpt]
>>
>> $ cat ../ext/mysqli/tests/010.diff
>> 003+ float(3.141593)
>> 003- float(3.14159274101)
>> 005+ float(-1.0E-6)
>> 005- float(-9.99999997475E-7)
>> 009+ float(1.0E+12)
>> 009- float(999999995904)
>> 011+ float(0.5646425)
>> 011- float(0.564642488956)
>> 015+ float(8.888889E+14)
>> 015- float(8.88888914608E+14)
>>
>> $ cat ../ext/mysqli/tests/011.diff
>> 011+ float(2345.6)
>> 011- float(2345.60009766)
>>
>> $ cat ../ext/mysqli/tests/012.diff
>> 011+ float(2.6)
>> 011- float(2.59999990463)[dmitry@tpl2 CGI-DEBUG]$
>>
>>
>>
>