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

LP:663818 - Wrong result with join_cache_level={3,5}, join_cache_hashed=on in maria-5.3-mwl128

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: None
    • Labels:

      Description

      The following query produces 1 less row than desired, when executed with join_cache_hashed=on, join_cache_level=3, join_buffer_size=10000:

      SELECT table1 .`pk`
      FROM X table1 JOIN V table2 ON table1 .`pk` = table2 .`pk`
      WHERE table2 .`pk` <> 8;

      The plan is:

      id select_type table type possible_keys key key_len ref rows Extra
      1 SIMPLE table1 index PRIMARY PRIMARY 4 NULL 11 Using where; Using index
      1 SIMPLE table2 eq_ref PRIMARY PRIMARY 4 test.table1.pk 1 Using index; Using join buffer (flat, BNLH join)

        Gliffy Diagrams

          Attachments

            Activity

            Hide
            philipstoev Philip Stoev added a comment -

            Re: Wrong result with join_cache_level=3, join_buffer_size=10K, join_cache_hashed=on in maria-5.3-mwl128
            Test case:

            --source include/have_innodb.inc
            CREATE TABLE `X` (
            `pk` int(11) NOT NULL AUTO_INCREMENT,
            PRIMARY KEY (`pk`)
            ) ENGINE=InnoDB AUTO_INCREMENT=23 DEFAULT CHARSET=latin1;
            INSERT INTO `X` VALUES (1);
            INSERT INTO `X` VALUES (2);
            INSERT INTO `X` VALUES (11);
            INSERT INTO `X` VALUES (12);
            INSERT INTO `X` VALUES (13);
            INSERT INTO `X` VALUES (14);
            INSERT INTO `X` VALUES (15);
            INSERT INTO `X` VALUES (16);
            INSERT INTO `X` VALUES (17);
            INSERT INTO `X` VALUES (18);
            INSERT INTO `X` VALUES (19);
            CREATE TABLE `V` (
            `pk` int(11) NOT NULL AUTO_INCREMENT,
            PRIMARY KEY (`pk`)
            ) ENGINE=InnoDB AUTO_INCREMENT=22 DEFAULT CHARSET=latin1;
            INSERT INTO `V` VALUES (1);
            INSERT INTO `V` VALUES (10);
            INSERT INTO `V` VALUES (11);
            INSERT INTO `V` VALUES (12);
            INSERT INTO `V` VALUES (13);
            INSERT INTO `V` VALUES (14);
            INSERT INTO `V` VALUES (15);
            INSERT INTO `V` VALUES (16);
            INSERT INTO `V` VALUES (17);
            INSERT INTO `V` VALUES (18);
            INSERT INTO `V` VALUES (19);
            INSERT INTO `V` VALUES (20);
            INSERT INTO `V` VALUES (21);

            SET SESSION join_cache_level=3;
            SET SESSION join_buffer_size=10000;

            SELECT table1 .`pk`
            FROM X table1 JOIN V table2 ON table1 .`pk` = table2 .`pk`
            WHERE table2 .`pk` <> 8;
            EXPLAIN SELECT table1 .`pk`
            FROM X table1 JOIN V table2 ON table1 .`pk` = table2 .`pk`
            WHERE table2 .`pk` <> 8;
            CREATE TABLE p1 AS
            SELECT table1 .`pk`
            FROM X table1 JOIN V table2 ON table1 .`pk` = table2 .`pk`
            WHERE table2 .`pk` <> 8;

            SET SESSION optimizer_switch='join_cache_hashed=off';

            SELECT table1 .`pk`
            FROM X table1 JOIN V table2 ON table1 .`pk` = table2 .`pk`
            WHERE table2 .`pk` <> 8;
            EXPLAIN SELECT table1 .`pk`
            FROM X table1 JOIN V table2 ON table1 .`pk` = table2 .`pk`
            WHERE table2 .`pk` <> 8;

            CREATE TABLE p2 AS
            SELECT table1 .`pk`
            FROM X table1 JOIN V table2 ON table1 .`pk` = table2 .`pk`
            WHERE table2 .`pk` <> 8;
            --let $diff_table_1 = test.p1
            --let $diff_table_2 = test.p2
            --source include/diff_tables.inc

            Show
            philipstoev Philip Stoev added a comment - Re: Wrong result with join_cache_level=3, join_buffer_size=10K, join_cache_hashed=on in maria-5.3-mwl128 Test case: --source include/have_innodb.inc CREATE TABLE `X` ( `pk` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`pk`) ) ENGINE=InnoDB AUTO_INCREMENT=23 DEFAULT CHARSET=latin1; INSERT INTO `X` VALUES (1); INSERT INTO `X` VALUES (2); INSERT INTO `X` VALUES (11); INSERT INTO `X` VALUES (12); INSERT INTO `X` VALUES (13); INSERT INTO `X` VALUES (14); INSERT INTO `X` VALUES (15); INSERT INTO `X` VALUES (16); INSERT INTO `X` VALUES (17); INSERT INTO `X` VALUES (18); INSERT INTO `X` VALUES (19); CREATE TABLE `V` ( `pk` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`pk`) ) ENGINE=InnoDB AUTO_INCREMENT=22 DEFAULT CHARSET=latin1; INSERT INTO `V` VALUES (1); INSERT INTO `V` VALUES (10); INSERT INTO `V` VALUES (11); INSERT INTO `V` VALUES (12); INSERT INTO `V` VALUES (13); INSERT INTO `V` VALUES (14); INSERT INTO `V` VALUES (15); INSERT INTO `V` VALUES (16); INSERT INTO `V` VALUES (17); INSERT INTO `V` VALUES (18); INSERT INTO `V` VALUES (19); INSERT INTO `V` VALUES (20); INSERT INTO `V` VALUES (21); SET SESSION join_cache_level=3; SET SESSION join_buffer_size=10000; SELECT table1 .`pk` FROM X table1 JOIN V table2 ON table1 .`pk` = table2 .`pk` WHERE table2 .`pk` <> 8; EXPLAIN SELECT table1 .`pk` FROM X table1 JOIN V table2 ON table1 .`pk` = table2 .`pk` WHERE table2 .`pk` <> 8; CREATE TABLE p1 AS SELECT table1 .`pk` FROM X table1 JOIN V table2 ON table1 .`pk` = table2 .`pk` WHERE table2 .`pk` <> 8; SET SESSION optimizer_switch='join_cache_hashed=off'; SELECT table1 .`pk` FROM X table1 JOIN V table2 ON table1 .`pk` = table2 .`pk` WHERE table2 .`pk` <> 8; EXPLAIN SELECT table1 .`pk` FROM X table1 JOIN V table2 ON table1 .`pk` = table2 .`pk` WHERE table2 .`pk` <> 8; CREATE TABLE p2 AS SELECT table1 .`pk` FROM X table1 JOIN V table2 ON table1 .`pk` = table2 .`pk` WHERE table2 .`pk` <> 8; --let $diff_table_1 = test.p1 --let $diff_table_2 = test.p2 --source include/diff_tables.inc
            Hide
            philipstoev Philip Stoev added a comment -

            Re: Wrong result with join_cache_level=3, join_buffer_size=10K, join_cache_hashed=on in maria-5.3-mwl128
            Not reproducible with 5.3-main

            Show
            philipstoev Philip Stoev added a comment - Re: Wrong result with join_cache_level=3, join_buffer_size=10K, join_cache_hashed=on in maria-5.3-mwl128 Not reproducible with 5.3-main
            Hide
            philipstoev Philip Stoev added a comment -

            Re: Wrong result with join_cache_level=3, join_buffer_size=10K, join_cache_hashed=on in maria-5.3-mwl128
            Here is another test case with the default join_buffer_size:

            CREATE TABLE `M` (
            `col_varchar_1024_latin1_key` varchar(1024) DEFAULT NULL,
            `col_varchar_10_latin1_key` varchar(10) DEFAULT NULL,
            `col_datetime_key` datetime DEFAULT NULL,
            `col_int_key` int(11) DEFAULT NULL,
            KEY `col_int_key` (`col_int_key`)
            ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
            INSERT INTO `M` VALUES ('XMCXE','bqcpbhsnmm','2005-12-06 08:39:18',-1849032704);
            INSERT INTO `M` VALUES ('IOVYB','t','2000-01-20 00:00:00',0);
            CREATE TABLE `K` (
            `col_datetime_key` datetime DEFAULT NULL,
            `col_int` int(11) DEFAULT NULL,
            `col_varchar_10_latin1_key` varchar(10) DEFAULT NULL,
            `col_int_key` int(11) DEFAULT NULL,
            `col_varchar_1024_latin1_key` varchar(1024) DEFAULT NULL,
            KEY `col_varchar_1024_latin1_key` (`col_varchar_1024_latin1_key`(1000)),
            KEY `test_idx` (`col_int_key`,`col_int`) USING BTREE
            ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
            INSERT INTO `K` VALUES ('2005-06-08 22:15:04',4,'was',-418381824,'clasizomrohcwftsfaiijvvsiknlnceuogscieejgjkpwchiklgqvfuxfplhqeamqxggdleymimjjswulpxkwcovdvzgtoqdxqqgqnjzskbuhlkhrvbhckqnnqpijobqqphtzywplgonecwmiucqtczfbafejsqpklcsvlaftwkzxpkxwbaropraalifipatjkgfsxdgnqyhtfpdneqhtmdvjvpzxljycsdkqbylczifltspxjbbrweeclwnlnbxzvfyfyjwydjrfimdjjksvjgxgondjphggpfujlvfrcclylvbajaqzywwregtqthijfmdtmvluizjjpratqbicqozmbuykypyeypkrrpdgpiv');
            INSERT INTO `K` VALUES ('2008-09-12 09:33:37',1119289344,'no',2,'KFXFJ');
            INSERT INTO `K` VALUES ('2006-09-05 00:00:00',3,'xgclasizom',527958016,'back');
            INSERT INTO `K` VALUES ('2006-09-04 23:28:42',4,'TNNQF',0,'iizmxgclasizomrohcwftsfaiijvvsiknlnceuogscieejgjkpwchiklgqvfuxfplhqeamqxggdleymimjjswulpxkwcovdvzgtoqdxqqgqnjzskbuhlkhrvbhckqnnqpijobqqphtzywplgonecwmiucqtczfbafejsqpklcsvlaftwkzxpkxwbaropraalifipatjkgfsxdgnqyhtfpdneqhtmdvjvpzxljycsdkqbylczifltspxjbbrweeclwnlnbxzvfyfyjwydjrfimdjjksvjgxgondjphggpfujlvfrcclylvbajaqzywwregtqthijfmdtmvluizjjpratqbicqozmbuykypyeypkrrpdgpivtpkdcydziiscsjvfbwcpaigrlddeirkedqogmadegpyckuuzpxjwusjbafkgsucpeudjqivgzqeujkxitkixmopghkyhimjnwsxdriisfcjhpsvbisbdsddmacyzcdyecostdenazbhzvbqenjfykzlzfmbrwvqhnypqblxeyaykaveiznsroiuhqelrkjmviebfkjuxgkfuandsosoydkttflrhvsglikkubitlqptnsglxgjptrxkrurwywowifjftrvtexasdbsdzvppwiaonidtelahawdpokevmcurruavqeylhzfcsnkgfjrhwkchovvqxwkxxwptyjubpiuznkrehnxsdoxbdbyemjivvduklxmkalbyjykocwukfcsamuzevibremfzrymegyqtlrxbrcdlqdvxe');
            INSERT INTO `K` VALUES ('2006-07-15 00:13:49',356712448,'BBNQK',-1095696384,'trziizmxgclasizomrohcwftsfaiijvvsiknlnceuogscieejgjkpwchiklgqvfuxfplhqeamqxggdleymimjjswulpxkwcovdvzgtoqdxqqgqnjzskbuhlkhrvbhckqnnqpijobqqphtzywplgonecwmiucqtczfbafejsqpklcsvlaftwkzxpkxwbaropraalifipatjkgfsxdgnqyhtfpdneqhtmdvjvpzxljycsdkqbylczifltspxjbbrweeclwnlnbxzvfyfyjwydjrfimdjjksvjgxgondjphggpfujlvfrcclylvbajaqzywwregtqthijfmdtmvluizjjpratqbicqozmbuykypyeypkrrpdgpivtpkdcydziiscsjvfbwcpaigrlddeirkedqogmadegpyckuuzpxjwusjbafkgsucpeudjqivgzqeujkxitkixmopghkyhimjnwsxdriisfcjhpsvbisbdsddmacyzcdyecostdenazbhzvbqenjfykzlzfmbrwvqhnypqblxeyaykaveiznsroiuhqelrkjmviebfkjuxgkfuandsosoydkttflrhvsglikkubitlqptnsglxgjptrxkrurwywowifjftrvtexasdbsdzvppwiaonidtelahawdpokevmcurruavqeylhzfcsnkgfjrhwkchovvqxwkxxwptyjubpiuznkrehnxsdoxbdbyemjivvduklxmkalbyjykocwukfcsamuzevibremfzrymegyqtlrxbrcdlqdvxefnpgoqgasadrjykjzqnouqsqgyoqkwrlvqlaxqh');
            INSERT INTO `K` VALUES ('0000-00-00 00:00:00',4,'pgtrziizmx',1604059136,'t');
            INSERT INTO `K` VALUES ('0000-00-00 00:00:00',428277760,'XVPUL',6,'BQABY');

            SELECT table1 .`col_datetime_key` FROM K table1 JOIN M table2 ON table1 .`col_varchar_1024_latin1_key` = table2 .`col_varchar_10_latin1_key` WHERE 6 OR 4 AND table2 .`col_int_key` ;
            EXPLAIN SELECT table1 .`col_datetime_key` FROM K table1 JOIN M table2 ON table1 .`col_varchar_1024_latin1_key` = table2 .`col_varchar_10_latin1_key` WHERE 6 OR 4 AND table2 .`col_int_key` ;
            SET SESSION join_cache_level = 5;
            SELECT table1 .`col_datetime_key` FROM K table1 JOIN M table2 ON table1 .`col_varchar_1024_latin1_key` = table2 .`col_varchar_10_latin1_key` WHERE 6 OR 4 AND table2 .`col_int_key` ;
            EXPLAIN SELECT table1 .`col_datetime_key` FROM K table1 JOIN M table2 ON table1 .`col_varchar_1024_latin1_key` = table2 .`col_varchar_10_latin1_key` WHERE 6 OR 4 AND table2 .`col_int_key` ;
            CREATE TABLE p1 AS SELECT table1 .`col_datetime_key` FROM K table1 JOIN M table2 ON table1 .`col_varchar_1024_latin1_key` = table2 .`col_varchar_10_latin1_key` WHERE 6 OR 4 AND table2 .`col_int_key` ;
            SET SESSION optimizer_switch='join_cache_bka=off';
            SELECT table1 .`col_datetime_key` FROM K table1 JOIN M table2 ON table1 .`col_varchar_1024_latin1_key` = table2 .`col_varchar_10_latin1_key` WHERE 6 OR 4 AND table2 .`col_int_key` ;
            EXPLAIN SELECT table1 .`col_datetime_key` FROM K table1 JOIN M table2 ON table1 .`col_varchar_1024_latin1_key` = table2 .`col_varchar_10_latin1_key` WHERE 6 OR 4 AND table2 .`col_int_key` ;
            CREATE TABLE p2 AS SELECT table1 .`col_datetime_key` FROM K table1 JOIN M table2 ON table1 .`col_varchar_1024_latin1_key` = table2 .`col_varchar_10_latin1_key` WHERE 6 OR 4 AND table2 .`col_int_key` ;
            --let $diff = `SELECT ((SELECT COUNT FROM p2) - (SELECT COUNT FROM p1)) != 0`

            1. if ($diff) { # --die repeatable # }
            2. --exit
            Show
            philipstoev Philip Stoev added a comment - Re: Wrong result with join_cache_level=3, join_buffer_size=10K, join_cache_hashed=on in maria-5.3-mwl128 Here is another test case with the default join_buffer_size: CREATE TABLE `M` ( `col_varchar_1024_latin1_key` varchar(1024) DEFAULT NULL, `col_varchar_10_latin1_key` varchar(10) DEFAULT NULL, `col_datetime_key` datetime DEFAULT NULL, `col_int_key` int(11) DEFAULT NULL, KEY `col_int_key` (`col_int_key`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1; INSERT INTO `M` VALUES ('XMCXE','bqcpbhsnmm','2005-12-06 08:39:18',-1849032704); INSERT INTO `M` VALUES ('IOVYB','t','2000-01-20 00:00:00',0); CREATE TABLE `K` ( `col_datetime_key` datetime DEFAULT NULL, `col_int` int(11) DEFAULT NULL, `col_varchar_10_latin1_key` varchar(10) DEFAULT NULL, `col_int_key` int(11) DEFAULT NULL, `col_varchar_1024_latin1_key` varchar(1024) DEFAULT NULL, KEY `col_varchar_1024_latin1_key` (`col_varchar_1024_latin1_key`(1000)), KEY `test_idx` (`col_int_key`,`col_int`) USING BTREE ) ENGINE=MyISAM DEFAULT CHARSET=latin1; INSERT INTO `K` VALUES ('2005-06-08 22:15:04',4,'was',-418381824,'clasizomrohcwftsfaiijvvsiknlnceuogscieejgjkpwchiklgqvfuxfplhqeamqxggdleymimjjswulpxkwcovdvzgtoqdxqqgqnjzskbuhlkhrvbhckqnnqpijobqqphtzywplgonecwmiucqtczfbafejsqpklcsvlaftwkzxpkxwbaropraalifipatjkgfsxdgnqyhtfpdneqhtmdvjvpzxljycsdkqbylczifltspxjbbrweeclwnlnbxzvfyfyjwydjrfimdjjksvjgxgondjphggpfujlvfrcclylvbajaqzywwregtqthijfmdtmvluizjjpratqbicqozmbuykypyeypkrrpdgpiv'); INSERT INTO `K` VALUES ('2008-09-12 09:33:37',1119289344,'no',2,'KFXFJ'); INSERT INTO `K` VALUES ('2006-09-05 00:00:00',3,'xgclasizom',527958016,'back'); INSERT INTO `K` VALUES ('2006-09-04 23:28:42',4,'TNNQF',0,'iizmxgclasizomrohcwftsfaiijvvsiknlnceuogscieejgjkpwchiklgqvfuxfplhqeamqxggdleymimjjswulpxkwcovdvzgtoqdxqqgqnjzskbuhlkhrvbhckqnnqpijobqqphtzywplgonecwmiucqtczfbafejsqpklcsvlaftwkzxpkxwbaropraalifipatjkgfsxdgnqyhtfpdneqhtmdvjvpzxljycsdkqbylczifltspxjbbrweeclwnlnbxzvfyfyjwydjrfimdjjksvjgxgondjphggpfujlvfrcclylvbajaqzywwregtqthijfmdtmvluizjjpratqbicqozmbuykypyeypkrrpdgpivtpkdcydziiscsjvfbwcpaigrlddeirkedqogmadegpyckuuzpxjwusjbafkgsucpeudjqivgzqeujkxitkixmopghkyhimjnwsxdriisfcjhpsvbisbdsddmacyzcdyecostdenazbhzvbqenjfykzlzfmbrwvqhnypqblxeyaykaveiznsroiuhqelrkjmviebfkjuxgkfuandsosoydkttflrhvsglikkubitlqptnsglxgjptrxkrurwywowifjftrvtexasdbsdzvppwiaonidtelahawdpokevmcurruavqeylhzfcsnkgfjrhwkchovvqxwkxxwptyjubpiuznkrehnxsdoxbdbyemjivvduklxmkalbyjykocwukfcsamuzevibremfzrymegyqtlrxbrcdlqdvxe'); INSERT INTO `K` VALUES ('2006-07-15 00:13:49',356712448,'BBNQK',-1095696384,'trziizmxgclasizomrohcwftsfaiijvvsiknlnceuogscieejgjkpwchiklgqvfuxfplhqeamqxggdleymimjjswulpxkwcovdvzgtoqdxqqgqnjzskbuhlkhrvbhckqnnqpijobqqphtzywplgonecwmiucqtczfbafejsqpklcsvlaftwkzxpkxwbaropraalifipatjkgfsxdgnqyhtfpdneqhtmdvjvpzxljycsdkqbylczifltspxjbbrweeclwnlnbxzvfyfyjwydjrfimdjjksvjgxgondjphggpfujlvfrcclylvbajaqzywwregtqthijfmdtmvluizjjpratqbicqozmbuykypyeypkrrpdgpivtpkdcydziiscsjvfbwcpaigrlddeirkedqogmadegpyckuuzpxjwusjbafkgsucpeudjqivgzqeujkxitkixmopghkyhimjnwsxdriisfcjhpsvbisbdsddmacyzcdyecostdenazbhzvbqenjfykzlzfmbrwvqhnypqblxeyaykaveiznsroiuhqelrkjmviebfkjuxgkfuandsosoydkttflrhvsglikkubitlqptnsglxgjptrxkrurwywowifjftrvtexasdbsdzvppwiaonidtelahawdpokevmcurruavqeylhzfcsnkgfjrhwkchovvqxwkxxwptyjubpiuznkrehnxsdoxbdbyemjivvduklxmkalbyjykocwukfcsamuzevibremfzrymegyqtlrxbrcdlqdvxefnpgoqgasadrjykjzqnouqsqgyoqkwrlvqlaxqh'); INSERT INTO `K` VALUES ('0000-00-00 00:00:00',4,'pgtrziizmx',1604059136,'t'); INSERT INTO `K` VALUES ('0000-00-00 00:00:00',428277760,'XVPUL',6,'BQABY'); SELECT table1 .`col_datetime_key` FROM K table1 JOIN M table2 ON table1 .`col_varchar_1024_latin1_key` = table2 .`col_varchar_10_latin1_key` WHERE 6 OR 4 AND table2 .`col_int_key` ; EXPLAIN SELECT table1 .`col_datetime_key` FROM K table1 JOIN M table2 ON table1 .`col_varchar_1024_latin1_key` = table2 .`col_varchar_10_latin1_key` WHERE 6 OR 4 AND table2 .`col_int_key` ; SET SESSION join_cache_level = 5; SELECT table1 .`col_datetime_key` FROM K table1 JOIN M table2 ON table1 .`col_varchar_1024_latin1_key` = table2 .`col_varchar_10_latin1_key` WHERE 6 OR 4 AND table2 .`col_int_key` ; EXPLAIN SELECT table1 .`col_datetime_key` FROM K table1 JOIN M table2 ON table1 .`col_varchar_1024_latin1_key` = table2 .`col_varchar_10_latin1_key` WHERE 6 OR 4 AND table2 .`col_int_key` ; CREATE TABLE p1 AS SELECT table1 .`col_datetime_key` FROM K table1 JOIN M table2 ON table1 .`col_varchar_1024_latin1_key` = table2 .`col_varchar_10_latin1_key` WHERE 6 OR 4 AND table2 .`col_int_key` ; SET SESSION optimizer_switch='join_cache_bka=off'; SELECT table1 .`col_datetime_key` FROM K table1 JOIN M table2 ON table1 .`col_varchar_1024_latin1_key` = table2 .`col_varchar_10_latin1_key` WHERE 6 OR 4 AND table2 .`col_int_key` ; EXPLAIN SELECT table1 .`col_datetime_key` FROM K table1 JOIN M table2 ON table1 .`col_varchar_1024_latin1_key` = table2 .`col_varchar_10_latin1_key` WHERE 6 OR 4 AND table2 .`col_int_key` ; CREATE TABLE p2 AS SELECT table1 .`col_datetime_key` FROM K table1 JOIN M table2 ON table1 .`col_varchar_1024_latin1_key` = table2 .`col_varchar_10_latin1_key` WHERE 6 OR 4 AND table2 .`col_int_key` ; --let $diff = `SELECT ((SELECT COUNT FROM p2) - (SELECT COUNT FROM p1)) != 0` if ($diff) { # --die repeatable # } --exit
            Hide
            ratzpo Rasmus Johansson added a comment -

            Launchpad bug id: 663818

            Show
            ratzpo Rasmus Johansson added a comment - Launchpad bug id: 663818

              People

              • Assignee:
                igor Igor Babaev
                Reporter:
                philipstoev Philip Stoev
              • Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: