Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-7406

I can't get from INFORMATION_SCHEMA original SQL code creating VIEW

    Details

    • Type: Bug
    • Status: Open
    • Priority: Minor
    • Resolution: Unresolved
    • Affects Version/s: 5.1.67, 5.2.14, 5.3.12, 10.1, 10.0, 5.5
    • Fix Version/s: 10.1
    • Component/s: Views
    • Environment:
      Linux Fedora 21

      Description

      I am use INFORMATION_SCHEMA for speedup getting database definition

      And I found yet another problem:

      Demonstration:
      CREATE TABLE `test` (
        `a` MEDIUMTEXT,
        `b` MEDIUMTEXT
      ) ENGINE=MYISAM DEFAULT CHARSET=utf8;
      
      CREATE VIEW `view_test` AS
      (SELECT * FROM test);
      
      SELECT  `TABLE_NAME`
      	,`TABLE_NAME`
      	,`VIEW_DEFINITION`
      FROM `information_schema`.`VIEWS` IS_V
      	WHERE IS_V.`TABLE_SCHEMA`='test' AND IS_V.table_name = 'view_test'
      
      TABLE_NAME  TABLE_NAME  VIEW_DEFINITION                                                                
      ----------  ----------  -------------------------------------------------------------------------------
      view_test   view_test   (SELECT `test`.`test`.`a` AS `a`,`test`.`test`.`b` AS `b` FROM `test`.`test`)
      
      SHOW CREATE VIEW `view_test`
      
      VIEW       CREATE VIEW                                                                                                                                              character_set_client  collation_connection  
      ---------  -------------------------------------------------------------------------------------------------------------------------------------------------------  --------------------  ----------------------
      view_test  CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `view_test` AS (SELECT `test`.`a` AS `a`,`test`.`b` AS `b` FROM `test`)  utf8                  utf8_general_ci    
      

      As you can see when I get SQL definition with "SHOW CREATE VIEW" I get body without database `test` as expected. When I get definition from INFORMATION SCHEMA I have definition with database `test`. If I will use this SQL code for create view in different database I would have problems.

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

              Hide
              elenst Elena Stepanova added a comment -

              It's an upstream issue present in all active versions (5.1-5.7). Did you try to report it at bugs.mysql.com? It's our usual routine.
              It might well be already reported there, but I can't find it.

              Note: There are other problems which I suppose might not allow using I_S.VIEWS to re-create a view, e.g. there seems to be no ALGORITHM clause in there, does it not concern you? There used to be a bug about it http://bugs.mysql.com/bug.php?id=16832 which is said to be fixed in an ancient 5.0 version, but I still can't see ALGORITHM in current servers, so it might be broken again.

              Show
              elenst Elena Stepanova added a comment - It's an upstream issue present in all active versions (5.1-5.7). Did you try to report it at bugs.mysql.com? It's our usual routine. It might well be already reported there, but I can't find it. Note: There are other problems which I suppose might not allow using I_S.VIEWS to re-create a view, e.g. there seems to be no ALGORITHM clause in there, does it not concern you? There used to be a bug about it http://bugs.mysql.com/bug.php?id=16832 which is said to be fixed in an ancient 5.0 version, but I still can't see ALGORITHM in current servers, so it might be broken again.
              Hide
              mikhail Mikhail Gavrilov added a comment -

              I fill new bug at mysql bugtreaker

              Show
              mikhail Mikhail Gavrilov added a comment - I fill new bug at mysql bugtreaker
              Hide
              mikhail Mikhail Gavrilov added a comment -

              > There used to be a bug about it http://bugs.mysql.com/bug.php?id=16832 which is said to be fixed in an ancient 5.0 version, but I still can't see ALGORITHM in current servers, so it might be broken again.

              And yes, it is still not fixed

              Show
              mikhail Mikhail Gavrilov added a comment - > There used to be a bug about it http://bugs.mysql.com/bug.php?id=16832 which is said to be fixed in an ancient 5.0 version, but I still can't see ALGORITHM in current servers, so it might be broken again. And yes, it is still not fixed
              Hide
              serg Sergei Golubchik added a comment -

              As far as ALGORITHM is concerned, it's MDEV-6731.

              Show
              serg Sergei Golubchik added a comment - As far as ALGORITHM is concerned, it's MDEV-6731 .

                People

                • Assignee:
                  Unassigned
                  Reporter:
                  mikhail Mikhail Gavrilov
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  3 Start watching this issue

                  Dates

                  • Created:
                    Updated: