Server IP : 104.21.38.3 / Your IP : 172.71.124.152 Web Server : Apache System : Linux krdc-ubuntu-s-2vcpu-4gb-amd-blr1-01.localdomain 5.15.0-142-generic #152-Ubuntu SMP Mon May 19 10:54:31 UTC 2025 x86_64 User : www ( 1000) PHP Version : 7.4.33 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /www/server/mysql/src/mysql-test/suite/innodb/t/ |
Upload File : |
--echo # --echo # Bug#30787535 : FULLTEXT INDEX TABLES CREATED IN ENCRYPTED SCHEMA ARE NOT ENCRYPTED --echo # ################################################################################ # For an encrypted table, this test case checks physical ibd file for : # - table # - fts table created for an FTS index on table # - Other aux tables created for FTS index # to see if they are encrypted. ################################################################################ --source include/have_debug.inc # Disable in valgrind because of timeout, cf. Bug#22760145 --source include/not_valgrind.inc # Waiting time when (re)starting the server --let $explicit_default_wait_counter=10000; --echo ######### --echo # SETUP # --echo ######### --echo let datadir=`SELECT @@datadir`; let search_pattern=supremum; --echo ######################################################################### --echo # RESTART 1 : WITH KEYRING PLUGIN --echo ######################################################################### let $restart_parameters = restart: --early-plugin-load=keyring_file=$KEYRING_PLUGIN --loose-keyring_file_data=$MYSQL_TMP_DIR/mysecret_keyring $KEYRING_PLUGIN_OPT; --replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR $KEYRING_PLUGIN_OPT --plugin-dir=KEYRING_PLUGIN_PATH $KEYRING_PLUGIN keyring_file.so --replace_regex /\.dll/.so/ --source include/restart_mysqld.inc --echo # Create a new 'unencrypted' table CREATE TABLE t1 (id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY, C1 TEXT(500), C2 VARCHAR(200), C3 VARCHAR(200)) ENCRYPTION='N' ENGINE=InnoDB; # Make sure all pages are flushed set global innodb_buf_flush_list_now = 1; --echo # --------------------------------------------------------------- --echo # Test 1 : t1 un-encrypted, FTS tables should also be unencrypted --echo # --------------------------------------------------------------- --echo # Check that tablespace file is not encrypted --let ts_name=test/t1.ibd --source include/if_encrypted.inc CREATE FULLTEXT INDEX idx ON t1(C1); # Make sure all pages are flushed set global innodb_buf_flush_list_now = 1; --let ts_name = `select NAME from information_schema.innodb_sys_tables where name like "%INDEX_1%";` --let ts_name = $ts_name.ibd --echo # Check that FTS tablespaces file is not encrypted --source include/if_encrypted.inc --echo # --------------------------------------------------------------- --echo # Test 1 : t1 encrypted, FTS tables should also be unencrypted --echo # --------------------------------------------------------------- # Now, change the encryption property of table ALTER TABLE t1 ENCRYPTION='Y'; --echo # Check that tablespace file is encrypted now --let ts_name=test/t1.ibd --source include/if_encrypted.inc --let ts_name = `select NAME from information_schema.innodb_sys_tables where name like "%INDEX_1%";` --let ts_name = $ts_name.ibd --echo # Check that FTS tablespace file is encrypted now --source include/if_encrypted.inc --echo ########### --echo # CLEANUP # --echo ########### DROP TABLE test.t1; remove_file $MYSQLTEST_VARDIR/tmpfile.txt; remove_file $MYSQL_TMP_DIR/mysecret_keyring; --echo # Restarting server without keyring to restore server state let $restart_parameters = restart: ; --source include/restart_mysqld.inc