>From drizzled/error.cc:
add(ER_TEXTFILE_NOT_READABLE, N_("The file '%-.128s' must be in the
schema directory or be readable by all"));
Only 128 characters are printed for the path+file. The my_error() function uses
a statically sized buffer of ERRMSGSIZE + 20, where this is the max error
message size (256) plus the 20 extra characters.
We need a replacement for our wonderfully crappy error message system.
-Dave
On Tue, Oct 26, 2010 at 12:51 PM, Patrick Crews <[email protected]> wrote:
> Hi guys,
>
> So here's the scenario:
> Several tests that used INFILE operations were failing when we used the
> --mem option. The reason was the tests used hard-coded relative paths
> rather than $DRIZZLETEST_VARDIR. When the vardir was in /tmp and the test
> expected ../../stddata_ln, things failed.
>
> I went and changed the tests, but we have discovered a new problem. By
> including the vardir path rather than '../../tmp', we are seeing truncation
> in our error messages
>
> For the output below, please note the length of the path to the vardir and
> how the message has been truncated. This is only a problem for those test
> cases that expect a failure. The truncation appears to limit the message to
> set llength limit - it's just a coincidence that we cut off right at 'tmp/'
> in this case.
>
> main.outfile [ fail ]
> --- ../../tests/r/outfile.result 2010-10-26 20:44:28.000000000 +0300
> +++
> /home/hudson/hudson/workspace/drizzle-param/BUILD_TYPE/release/label/fedora-12-amd64/drizzle7-2010.10.1880/_build/tests/var/log/outfile.reject
> 2010-10-26
> 20:55:19.120839658 +0300
>
> @@ -17,7 +17,7 @@
> ERROR HY000: File 'DRIZZLETEST_VARDIR/tmp/outfile-test.2' already exists
> ERROR HY000: File 'DRIZZLETEST_VARDIR/tmp/outfile-test.3' already exists
> select load_file(concat(@tmpdir,"/outfile.not-exist"));
>
> -ERROR HY000: The file 'DRIZZLETEST_VARDIR/tmp/outfile.not-exist' must be in
> the schema directory or be readable by all
> +ERROR HY000: The file 'DRIZZLETEST_VARDIR/tmp/' must be in the schema
> directory or be readable by all
>
>
> It might be possible to go through and alter the tests to mask things, but I
> did want to solicit thoughts on this before I proceeded.
> Mainly, I'm concerned that using a REPLACE RESULT to make
> DRIZZLETEST_VARDIR/tmp/outfile.not-exits -> IMMABADFILE (or somesuch) is
> only a patch - if path lengths were longer, the test could start failing
> again. Also, we'd be sacrificing come clarity in our tests.
>
> Any feedback is most welcome,
> Patrick
>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~drizzle-discuss
> Post to : [email protected]
> Unsubscribe : https://launchpad.net/~drizzle-discuss
> More help : https://help.launchpad.net/ListHelp
>
>
_______________________________________________
Mailing list: https://launchpad.net/~drizzle-discuss
Post to : [email protected]
Unsubscribe : https://launchpad.net/~drizzle-discuss
More help : https://help.launchpad.net/ListHelp