← Back to team overview

maria-developers team mailing list archive

Re: 9acabefd276: MDEV-22010: use executables MariaDB named in scripts

 

Hi, Rucha!

On Mar 17, Rucha Deodhar wrote:
> 
> mysql-test-run and mysql-stress-test was also supposed to be renamed as
> part of this task.
> I need to check again if debs and rpms package symlink.
> 
> >
> > > diff --git a/mysql-test/.mtr b/mysql-test/.mtr
> > > new file mode 120000
> > > index 00000000000..68986c8cd7e
> > > --- /dev/null
> > > +++ b/mysql-test/.mtr
> > > @@ -0,0 +1 @@
> > > +./mariadb-test-run
> >
> > What is that? What is .mtr file?
> 
> I think after i built it got committed along with other files.

please remove it from the commit

> > > diff --git a/mysql-test/mysql-stress-test.pl b/mysql-test/
> > mysql-stress-test.pl
> > > new file mode 120000
> > > index 00000000000..e704a5d70bf
> > > --- /dev/null
> > > +++ b/mysql-test/mysql-stress-test.pl
> > > @@ -0,0 +1 @@
> > > +./mariadb-stress-test.pl
> >
> > looks like you've checked in files you shouldn't have. Like symlinks.
> 
> As mysql-test-run and mysql-stress-test was supposed to be renamed too. So,
> I created a symlink
> so that ./mysql-test-run and ./mysql-stress-test would still work if
> anybody uses it.

symlinks - yes. But they are created by cmake during the build, they
should not be added to a commit. please, remove.

You might want to add them to the .gitignore file though.

> > > \ No newline at end of file
> > > diff --git a/scripts/msql2mysql.sh b/scripts/msql2mysql.sh
> > > index 72a609fa6e7..11923fa15c7 100644
> > > --- a/scripts/msql2mysql.sh
> > > +++ b/scripts/msql2mysql.sh
> > > @@ -16,4 +16,4 @@
> > >  # Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston
> > >  # MA  02110-1335  USA.
> > >
> > > -@bindir@/replace msqlConnect mysql_connect msqlListDBs  mysql_list_dbs
> > msqlNumRows mysql_num_rows msqlFetchRow mysql_fetch_row msqlFetchField
> > mysql_fetch_field msqlFreeResult mysql_free_result msqlListFields
> > mysql_list_fields msqlListTables mysql_list_tables msqlErrMsg
> > 'mysql_error(mysql)' msqlStoreResult mysql_store_result msqlQuery
> > mysql_query msqlField mysql_field msqlSelect mysql_select msqlSelectDB
> > mysql_select_db msqlNumFields mysql_num_fields msqlClose mysql_close
> > msqlDataSeek mysql_data_seek m_field MYSQL_FIELD m_result MYSQL_RES m_row
> > MYSQL_ROW msql mysql mSQL mySQL MSQL MYSQL msqlCreateDB mysql_create_db
> > msqlDropDB mysql_drop_db msqlFieldSeek mysql_field_seek -- $*
> > > +@bindir@/replace msqlConnect mysql_connect msqlListDBs  mysql_list_dbs
> > msqlNumRows mysql_num_rows msqlFetchRow mysql_fetch_row msqlFetchField
> > mysql_fetch_field msqlFreeResult mysql_free_result msqlListFields
> > mysql_list_fields msqlListTables mysql_list_tables msqlErrMsg
> > 'mysql_error(mysql)' msqlStoreResult mysql_store_result msqlQuery
> > mysql_query msqlField mysql_field msqlSelect mysql_select msqlSelectDB
> > mysql_select_db msqlNumFields mysql_num_fields msqlClose mysql_close
> > msqlDataSeek mysql_data_seek m_field MYSQL_FIELD m_result MYSQL_RES m_row
> > MYSQL_ROW msql mysql mysql mariadb mSQL mySQL MSQL MYSQL msqlCreateDB
> > mysql_create_db msqlDropDB mysql_drop_db msqlFieldSeek mysql_field_seek --
> > $*
> >
> > Why?
> 
> So that mysql in bin directory would get replaced with mariadb

no, that's not it. See other renames,

  msqlListTables -> mysql_list_tables,
  msqlFetchRow -> mysql_fetch_row
  etc

this (prehistoric) script was supposed to help migrating programs that
work with mSQL (https://en.wikipedia.org/wiki/MSQL) to MySQL by renaming
C API calls in the source code.

In short, revert this change, it doesn't belong to this script.

> > > diff --git a/scripts/mysql_install_db.sh b/scripts/mysql_install_db.sh
> > > index 5f183afe8fc..084af42d01c 100644
> > > --- a/scripts/mysql_install_db.sh
> > > +++ b/scripts/mysql_install_db.sh
> > > @@ -338,11 +338,15 @@ then
> > >      cannot_find_file resolveip @resolveip_locations@
> > >      exit 1
> > >    fi
> > > -  mysqld=`find_in_dirs mysqld @mysqld_locations@`
> > > +  mysqld=`find_in_dirs mariadbd @mysqld_locations@`
> > >    if test -z "$mysqld"
> > >    then
> > > -    cannot_find_file mysqld @mysqld_locations@
> > > -    exit 1
> > > +    mysqld=`find_in_dirs mysqld @mysqld_locations@`
> > > +    if test -z "$mysqld"
> > > +    then
> > > +      cannot_find_file mysqld @mysqld_locations@
> >
> > Hmm. At least, it should be mariadbd in the cannot_find_file line.
> >
> > Why do you search for mysqld after mariadbd wasn't found?
> >
> I added it for additional check, just in case there is mysqld and not
> mariadbd or if it could affect compatibility.

I don't think it could. These scripts you've edited are installed
together with MariaDB, there is no supported configuration where these
scripts exist and mariadb* binaries don't.

That is, I believe this extra check is not needed.

Regards,
Sergei
VP of MariaDB Server Engineering
and security@xxxxxxxxxxx


References