Search code examples
javascriptmysqlnormalization3nf

A fatal JavaScript error?


I am trying to figure how to fix this error I keep receiving when I am applying Normalization to my tables in phpMyAdmin. This only pops up at the bottom of the screen when ever I try to complete the 3NF of the normalization process.

Below is a snippet of the error code I am seeing but I can't seem to figure out how to fix the issue. I have also tried several browsers and all seem to give the same problem.

Someone also posted a similar question about this error but their report code was completely different. I appreciate any help that can be offered! This is a link to what the error looks like from the phpMyAdmin UI

enter image description here

{
"pma_version": "4.6.5.2",
"browser_name": "CHROME",
"browser_version": "51.0.2704.79",
"user_os": "Win",
"server_software": "Apache/2.4.23 (Win64) PHP/7.0.10",
"user_agent_string": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36 Edge/14.14393",
"locale": "en",
"configuration_storage": "disabled",
"php_version": "7.0.10",
"exception_type": "js",
"exception": {
    "mode": "stack",
    "name": "TypeError",
    "message": "Unable to get property 'newTables' of undefined or null reference",
    "stack": [
        {
            "line": 235,
            "func": "",
            "context": [
                "                lastException = null;",
                "                notifyHandlers.apply(null, [stack, null].concat(args));",
                "            }",
                "        }, (stack.incomplete ? 2000 : 0));",
                "",
                "        throw ex; // re-throw to propagate to the top level (and cause wind//...",
                "    }",
                "",
                "    report.subscribe = subscribe;",
                "    report.unsubscribe = unsubscribe;",
                "    return report;"
            ],
            "column": "",
            "filename": "tracekit/tracekit.js"
        },
        {
            "func": "new_func",
            "line": 249,
            "column": "21",
            "context": [
                "     */",
                "    wrap_function: function (func) {",
                "        if (!func.wrapped) {",
                "            var new_func = function () {",
                "                try {",
                "                    return func.apply(this, arguments);",
                "                } catch (x) {",
                "                    TraceKit.report(x);",
                "                }",
                "            };",
                "            new_func.wrapped = true;"
            ],
            "filename": "error_report.js"
        },
        {
            "func": "n.event.dispatch",
            "line": 3,
            "column": "6410",
            "context": [
                "/*! jQuery v2.1.4 | (c) 2005, 2015 jQuery Foundation, Inc. | jquery.org/lic//...",
                "!function(a,b){\"object\"==typeof module&&\"object\"==typeof module.exports?mod//...",
                "return M.access(a,b,c)},removeData:function(a,b){M.remove(a,b)},_data:funct//...",
                "void 0===c?d&&\"get\"in d&&null!==(e=d.get(a,b))?e:(e=n.find.attr(a,b),null==//...",
                ";",
                "",
                "function sprintf() {",
                "/*"
            ],
            "filename": "jquery/jquery-2.1.4.min.js"
        },
        {
            "func": "$event.dispatch",
            "line": 374,
            "column": "2",
            "context": [
                "$event.dispatch = function( event ){",
                "\tif ( $.data( this, \"suppress.\"+ event.type ) - new Date().getTime() > 0 ){",
                "\t\t$.removeData( this, \"suppress.\"+ event.type );",
                "\t\treturn;",
                "\t}",
                "\treturn $dispatch.apply( this, arguments );",
                "};",
                "",
                "// event fix hooks for touch events...",
                "var touchHooks = ",
                "$event.fixHooks.touchstart = "
            ],
            "filename": "jquery/jquery.event.drag-2.2.js"
        },
        {
            "func": "r.handle",
            "line": 3,
            "column": "3176",
            "context": [
                "/*! jQuery v2.1.4 | (c) 2005, 2015 jQuery Foundation, Inc. | jquery.org/lic//...",
                "!function(a,b){\"object\"==typeof module&&\"object\"==typeof module.exports?mod//...",
                "return M.access(a,b,c)},removeData:function(a,b){M.remove(a,b)},_data:funct//...",
                "void 0===c?d&&\"get\"in d&&null!==(e=d.get(a,b))?e:(e=n.find.attr(a,b),null==//...",
                ";",
                "",
                "function sprintf() {",
                "/*"
            ],
            "filename": "jquery/jquery-2.1.4.min.js"
        }
    ],
    "useragent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36 Edge/14.14393",
    "incomplete": "false",
    "partial": "true",
    "uri": "normalization.php?goto=tbl_structure.php&back=tbl_structure.php"
},
"script_name": "normalization.php",
"microhistory": null

Solution

  • Rightly said by @IsaacBennetch, i too assume it was a bug in that package(4.6.x).

    Upgrading phpMyAdmin to 4.7.0 resolved similar issue faced.

    Upgrading phpMyAdmin:

    How to upgrade phpMyAdmin in XAMPP to latest?

    Copy new files to phpMyAdmin directory