maria-developers team mailing list archive
-
maria-developers team
-
Mailing list archive
-
Message #13071
Re: 673ea509e2c: MDEV-26870 --skip-symbolic-links does not disallow .isl file creation
Hi Sergei,
On Thu, Jan 20, 2022 at 5:35 PM Sergei Golubchik <serg@xxxxxxxxxxx> wrote:
>
> Hi, Marko,
>
> On Jan 20, Marko Mäkelä wrote:
> > revision-id: 673ea509e2c (mariadb-10.2.40-230-g673ea509e2c)
[snip]
> > +-- source include/have_symlink.inc
>
> when can have_symlink be false?
The tests where I added that line would fail after this change if I
ran them with
./mtr --mysqld=--skip-symbolic-links
> Why InnoDB tests depend on server's symlink support?
> InnoDB does not use symlinks, it uses isl files.
In https://jira.mariadb.org/browse/MDEV-26870 you suggested using
my_use_symdir, which I did.
That variable is bound to the Boolean start-up parameter symbolic_links.
Changing InnoDB to use actual symlinks (and to stop creating
"databasename" directories, to be similar to other storage engines)
would be a file format change that could break downgrades to earlier
minor versions. Therefore, it is only doable in a development release.
> > + push_warning(
> > + m_thd, Sql_condition::WARN_LEVEL_WARN,
> > + ER_ILLEGAL_HA_CREATE_OPTION,
> > + "InnoDB: DATA DIRECTORY requires HAVE_SYMLINK.");
> > + ret = "DATA DIRECTORY";
>
> MyISAM does
>
> push_warning_printf(thd, Sql_condition::WARN_LEVEL_WARN,
> WARN_OPTION_IGNORED,
> ER_THD(thd, WARN_OPTION_IGNORED),
> "DATA DIRECTORY");
> Archive does
>
> if (create_info->data_file_name)
> my_error(WARN_OPTION_IGNORED, MYF(ME_WARNING), "DATA DIRECTORY");
>
> I suggest you do one of the above too.
I had copied the reporting style of
create_table_info_t::create_option_data_directory_is_valid().
I agree that it is better to flag warnings for the
--skip-symbolic-links rather than errors.
It will cause fewer surprises to users as well.
Best regards,
Marko
--
Marko Mäkelä, Lead Developer InnoDB
MariaDB Corporation
Follow ups
References