Commit f4cfa793 authored by kostja@bodhi.(none)'s avatar kostja@bodhi.(none)

Merge bk-internal.mysql.com:/home/bk/mysql-5.0-runtime

into  bodhi.(none):/opt/local/work/mysql-5.0-runtime
parents a43431b3 ec5464d2
...@@ -1621,7 +1621,7 @@ void Item_ident_for_show::make_field(Send_field *tmp_field) ...@@ -1621,7 +1621,7 @@ void Item_ident_for_show::make_field(Send_field *tmp_field)
tmp_field->type=field->type(); tmp_field->type=field->type();
tmp_field->flags= field->table->maybe_null ? tmp_field->flags= field->table->maybe_null ?
(field->flags & ~NOT_NULL_FLAG) : field->flags; (field->flags & ~NOT_NULL_FLAG) : field->flags;
tmp_field->decimals= 0; tmp_field->decimals= field->decimals();
} }
/**********************************************/ /**********************************************/
......
...@@ -15570,7 +15570,7 @@ static void test_bug27876() ...@@ -15570,7 +15570,7 @@ static void test_bug27876()
int rc; int rc;
MYSQL_RES *result; MYSQL_RES *result;
char utf8_func[] = unsigned char utf8_func[] =
{ {
0xd1, 0x84, 0xd1, 0x83, 0xd0, 0xbd, 0xd0, 0xba, 0xd1, 0x84, 0xd1, 0x83, 0xd0, 0xbd, 0xd0, 0xba,
0xd1, 0x86, 0xd0, 0xb8, 0xd0, 0xb9, 0xd0, 0xba, 0xd1, 0x86, 0xd0, 0xb8, 0xd0, 0xb9, 0xd0, 0xba,
...@@ -15578,7 +15578,7 @@ static void test_bug27876() ...@@ -15578,7 +15578,7 @@ static void test_bug27876()
0x00 0x00
}; };
char utf8_param[] = unsigned char utf8_param[] =
{ {
0xd0, 0xbf, 0xd0, 0xb0, 0xd1, 0x80, 0xd0, 0xb0, 0xd0, 0xbf, 0xd0, 0xb0, 0xd1, 0x80, 0xd0, 0xb0,
0xd0, 0xbc, 0xd0, 0xb5, 0xd1, 0x82, 0xd1, 0x8a, 0xd0, 0xbc, 0xd0, 0xb5, 0xd1, 0x82, 0xd1, 0x8a,
...@@ -15735,6 +15735,55 @@ static void test_bug27592() ...@@ -15735,6 +15735,55 @@ static void test_bug27592()
} }
/**
Bug#29306 Truncated data in MS Access with decimal (3,1) columns in a VIEW
*/
static void test_bug29306()
{
MYSQL_FIELD *field;
int rc;
MYSQL_RES *res;
DBUG_ENTER("test_bug29306");
myheader("test_bug29306");
rc= mysql_query(mysql, "DROP TABLE IF EXISTS tab17557");
myquery(rc);
rc= mysql_query(mysql, "DROP VIEW IF EXISTS view17557");
myquery(rc);
rc= mysql_query(mysql, "CREATE TABLE tab17557 (dd decimal (3,1))");
myquery(rc);
rc= mysql_query(mysql, "CREATE VIEW view17557 as SELECT dd FROM tab17557");
myquery(rc);
rc= mysql_query(mysql, "INSERT INTO tab17557 VALUES (7.6)");
myquery(rc);
/* Checking the view */
res= mysql_list_fields(mysql, "view17557", NULL);
while ((field= mysql_fetch_field(res)))
{
if (! opt_silent)
{
printf("field name %s\n", field->name);
printf("field table %s\n", field->table);
printf("field decimals %d\n", field->decimals);
if (field->decimals < 1)
printf("Error! No decimals! \n");
printf("\n\n");
}
DIE_UNLESS(field->decimals == 1);
}
mysql_free_result(res);
rc= mysql_query(mysql, "DROP TABLE tab17557");
myquery(rc);
rc= mysql_query(mysql, "DROP VIEW view17557");
myquery(rc);
DBUG_VOID_RETURN;
}
/* /*
Read and parse arguments and MySQL options from my.cnf Read and parse arguments and MySQL options from my.cnf
*/ */
...@@ -16019,6 +16068,7 @@ static struct my_tests_st my_tests[]= { ...@@ -16019,6 +16068,7 @@ static struct my_tests_st my_tests[]= {
{ "test_bug28505", test_bug28505 }, { "test_bug28505", test_bug28505 },
{ "test_bug28934", test_bug28934 }, { "test_bug28934", test_bug28934 },
{ "test_bug27592", test_bug27592 }, { "test_bug27592", test_bug27592 },
{ "test_bug29306", test_bug29306 },
{ 0, 0 } { 0, 0 }
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment