Uploaded image for project: 'MariaDB ColumnStore'
  1. MariaDB ColumnStore
  2. MCOL-4423

idbExtentMax()/MODA() support for long decimal

Details

    • 2021-17

    Description

      Artifacts: https://cspkg.s3.amazonaws.com/index.html?prefix=develop/pull_request/1191/centos7/

      Repro:

      CREATE TABLE t1(col1 INT) ENGINE=Columnstore;
      INSERT INTO t1 VALUES (1);
      INSERT INTO t1 SELECT * FROM t1;
      SELECT idbExtentMax(col1) FROM t1 LIMIT 1;
      ERROR 1815 (HY000): Internal error: Error while fetching from ExeMgr: IDB-2035: An internal error occurred.  Check the error log file & contact support.
      

      This is a regression.

      Attachments

        Issue Links

          Activity

            idbExtentMin() also gives similar error and is also regression-

            DROP TABLE IF EXISTS t1;
            CREATE TABLE t1(col1 INT) ENGINE=Columnstore;
            INSERT INTO t1 VALUES (1);
            INSERT INTO t1 SELECT * FROM t1;
            SELECT idbExtentMin(col1) FROM t1 LIMIT 1;
            ERROR 1815 (HY000): Internal error: Error while fetching from ExeMgr: IDB-2035: An internal error occurred.  Check the error log file & contact support.
            

            bharath.bokka Bharath Bokka (Inactive) added a comment - idbExtentMin() also gives similar error and is also regression- DROP TABLE IF EXISTS t1; CREATE TABLE t1(col1 INT ) ENGINE=Columnstore; INSERT INTO t1 VALUES (1); INSERT INTO t1 SELECT * FROM t1; SELECT idbExtentMin(col1) FROM t1 LIMIT 1; ERROR 1815 (HY000): Internal error: Error while fetching from ExeMgr: IDB-2035: An internal error occurred. Check the error log file & contact support.

            According to documentation for UDFs , when registering UDFs the RETURNS clause indicates the type of the function's return value, and can be one of STRING, INTEGER, REAL or DECIMAL. DECIMAL functions currently return string values and should be written like STRING functions.
            The problem with this function is that it may or may not return DECIMAL. So changing returning type to DECIMAL breaks decimals, while leaving it as it is breaks other int types, since it tries to read them as strings.

            Andrey Andrey Piskunov (Inactive) added a comment - According to documentation for UDFs , when registering UDFs the RETURNS clause indicates the type of the function's return value, and can be one of STRING, INTEGER, REAL or DECIMAL. DECIMAL functions currently return string values and should be written like STRING functions. The problem with this function is that it may or may not return DECIMAL. So changing returning type to DECIMAL breaks decimals, while leaving it as it is breaks other int types, since it tries to read them as strings.

            Build verified: 22.08-1 (#5290)

            Reproduced the issue in 6.4.2-1
            Verified the fix in 22.08-1
             
            MariaDB [mytest]> SELECT idbExtentMin(col1) FROM t1 LIMIT 1;
            +--------------------+
            | idbExtentMin(col1) |
            +--------------------+
            | 1                  |
            +--------------------+
            1 row in set (0.007 sec)
            

            Also executed MTR test suites

            dleeyh Daniel Lee (Inactive) added a comment - Build verified: 22.08-1 (#5290) Reproduced the issue in 6.4.2-1 Verified the fix in 22.08-1   MariaDB [mytest]> SELECT idbExtentMin(col1) FROM t1 LIMIT 1; +--------------------+ | idbExtentMin(col1) | +--------------------+ | 1 | +--------------------+ 1 row in set (0.007 sec) Also executed MTR test suites

            People

              Andrey Andrey Piskunov (Inactive)
              bharath.bokka Bharath Bokka (Inactive)
              Votes:
              2 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.