{"type":"rich","version":"1.0","provider_name":"phorkie","provider_url":"https:\/\/p.cweiske.de\/","title":"Drupal entity browser: Crash with inconsistent data","author_name":"Christian Weiske","cache_age":86400,"width":900,"height":900,"html":"<!-- embedding all files of https:\/\/p.cweiske.de\/803 -->\n<link rel=\"stylesheet\" href=\"https:\/\/p.cweiske.de\/css\/embed.css\"\/>\n<div class=\"phork\" id=\"803\">\n    <div class=\"phork-file\">\n <div class=\"phork-content\">\n  \n<div class=\"document\">\n\n\n<p>System: Drupal 8.7 with entity_browser 1.8.0<\/p>\n<div class=\"section\" id=\"problem\">\n<h1>Problem<\/h1>\n<p>We have some entries in database table <tt class=\"docutils literal\">media_field_data<\/tt> that are not in table <tt class=\"docutils literal\">media<\/tt>.<\/p>\n<p>When opening the entity browser to select an image, a crash occurs:<\/p>\n<pre class=\"literal-block\">\nThe website encountered an unexpected error. Please try again later.\nError: Call to a member function getEntityTypeId() on null in Drupal\\entity_browser\\Plugin\\views\\field\\SelectForm-&gt;getRowId() (line 29 of modules\/contrib\/entity_browser\/src\/Plugin\/views\/field\/SelectForm.php).\n<\/pre>\n<\/div>\n<div class=\"section\" id=\"solution\">\n<h1>Solution<\/h1>\n<p>Delete all the broken media entries.<\/p>\n<\/div>\n<\/div>\n\n <\/div>\n <div class=\"phork-meta\">\n  <a href=\"https:\/\/p.cweiske.de\/803\/rev-raw\/81ac08d837c8b89507a739361a1cfad58d7dcca2\/1-README.rst\" style=\"float: right\">view raw source<\/a>\n  <a href=\"https:\/\/p.cweiske.de\/803#1-README.rst\">1-README.rst<\/a>\n <\/div>\n<\/div>\n    <div class=\"phork-file\">\n <div class=\"phork-content\">\n  <style type=\"text\/css\">\/**\n * GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2014 Benny Baumann\n * (http:\/\/qbnz.com\/highlighter\/ and http:\/\/geshi.org\/)\n *\/\n.sql .de1, .sql .de2 {font: normal normal 1em\/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;}\n.sql  {font-family:monospace;}\n.sql .imp {font-weight: bold; color: red;}\n.sql li, .sql .li1 {color: #DDD;}\n.sql .ln {width:1px;text-align:right;margin:0;padding:0 2px;vertical-align:top;}\n.sql .kw1 {color: #993333; font-weight: bold;}\n.sql .co1 {color: #808080; font-style: italic;}\n.sql .coMULTI {color: #808080; font-style: italic;}\n.sql .es0 {color: #000099; font-weight: bold;}\n.sql .br0 {color: #66cc66;}\n.sql .sy0 {color: #66cc66;}\n.sql .st0 {color: #ff0000;}\n.sql .nu0 {color: #cc66cc;}\n.sql span.xtra { display:block; }\n<\/style><div class=\"code\"><table class=\"sql\"><tbody><tr class=\"li1\"><td class=\"ln\"><pre class=\"de1\">1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n11\n12\n13\n14\n15\n16\n17\n18\n19\n20\n<\/pre><\/td><td class=\"de1\"><pre class=\"de1\"><span class=\"kw1\">DELETE<\/span> <span class=\"kw1\">FROM<\/span> media_field_data\n<span class=\"kw1\">WHERE<\/span> mid <span class=\"kw1\">IN<\/span> <span class=\"br0\">&#40;<\/span>\n&#160; <span class=\"kw1\">SELECT<\/span> mid <span class=\"kw1\">FROM<\/span> <span class=\"br0\">&#40;<\/span>\n&#160; &#160; <span class=\"kw1\">SELECT<\/span> media_field_data<span class=\"sy0\">.<\/span>mid\n&#160; &#160; <span class=\"kw1\">FROM<\/span> <span class=\"st0\">`media_field_data`<\/span>\n&#160; &#160; <span class=\"kw1\">LEFT<\/span> <span class=\"kw1\">JOIN<\/span> media <span class=\"kw1\">ON<\/span> media_field_data<span class=\"sy0\">.<\/span>mid <span class=\"sy0\">=<\/span> media<span class=\"sy0\">.<\/span>mid\n&#160; &#160; <span class=\"kw1\">WHERE<\/span> media<span class=\"sy0\">.<\/span>mid <span class=\"kw1\">IS<\/span> <span class=\"kw1\">NULL<\/span>\n&#160; <span class=\"br0\">&#41;<\/span> <span class=\"kw1\">AS<\/span> foo\n<span class=\"br0\">&#41;<\/span>;\n&#160;\n<span class=\"kw1\">DELETE<\/span> <span class=\"kw1\">FROM<\/span> media_field_revision\n<span class=\"kw1\">WHERE<\/span> mid <span class=\"kw1\">IN<\/span> <span class=\"br0\">&#40;<\/span>\n&#160; <span class=\"kw1\">SELECT<\/span> mid <span class=\"kw1\">FROM<\/span> <span class=\"br0\">&#40;<\/span>\n&#160; &#160; <span class=\"kw1\">SELECT<\/span> media_field_revision<span class=\"sy0\">.<\/span>mid\n&#160; &#160; <span class=\"kw1\">FROM<\/span> <span class=\"st0\">`media_field_revision`<\/span>\n&#160; &#160; <span class=\"kw1\">LEFT<\/span> <span class=\"kw1\">JOIN<\/span> media <span class=\"kw1\">ON<\/span> media_field_revision<span class=\"sy0\">.<\/span>mid <span class=\"sy0\">=<\/span> media<span class=\"sy0\">.<\/span>mid\n&#160; &#160; <span class=\"kw1\">WHERE<\/span> media<span class=\"sy0\">.<\/span>mid <span class=\"kw1\">IS<\/span> <span class=\"kw1\">NULL<\/span>\n&#160; <span class=\"br0\">&#41;<\/span> <span class=\"kw1\">AS<\/span> foo\n<span class=\"br0\">&#41;<\/span>;\n&#160;<\/pre><\/td><\/tr><\/tbody><\/table><\/div>\n <\/div>\n <div class=\"phork-meta\">\n  <a href=\"https:\/\/p.cweiske.de\/803\/rev-raw\/81ac08d837c8b89507a739361a1cfad58d7dcca2\/2-fix.sql\" style=\"float: right\">view raw source<\/a>\n  <a href=\"https:\/\/p.cweiske.de\/803#2-fix.sql\">2-fix.sql<\/a>\n <\/div>\n<\/div>\n    <div class=\"phork-file\">\n <div class=\"phork-content\">\n  <div class=\"code\"><pre class=\"txt\">The website encountered an unexpected error. Please try again later.\r\nError: Call to a member function getEntityTypeId() on null in Drupal\\entity_browser\\Plugin\\views\\field\\SelectForm-&gt;getRowId() (line 29 of modules\/contrib\/entity_browser\/src\/Plugin\/views\/field\/SelectForm.php).\r\n\r\nDrupal\\entity_browser\\Plugin\\views\\field\\SelectForm-&gt;getRowId(Object) (Line: 36)\r\nDrupal\\entity_browser\\Plugin\\views\\field\\SelectForm-&gt;render(Object) (Line: 1155)\r\nDrupal\\views\\Plugin\\views\\field\\FieldPluginBase-&gt;advancedRender(Object) (Line: 236)\r\ntemplate_preprocess_views_view_field(Array, 'views_view_field', Array) (Line: 287)\r\nDrupal\\Core\\Theme\\ThemeManager-&gt;render('views_view_field', Array) (Line: 437)\r\nDrupal\\Core\\Render\\Renderer-&gt;doRender(Array, ) (Line: 195)\r\nDrupal\\Core\\Render\\Renderer-&gt;render(Array) (Line: 1747)\r\nDrupal\\views\\Plugin\\views\\field\\FieldPluginBase-&gt;theme(Object) (Line: 761)\r\nDrupal\\views\\Plugin\\views\\style\\StylePluginBase-&gt;elementPreRenderRow(Array)\r\ncall_user_func(Array, Array) (Line: 378)\r\nDrupal\\Core\\Render\\Renderer-&gt;doRender(Array, ) (Line: 195)\r\nDrupal\\Core\\Render\\Renderer-&gt;render(Array) (Line: 709)\r\nDrupal\\views\\Plugin\\views\\style\\StylePluginBase-&gt;renderFields(Array) (Line: 576)\r\nDrupal\\views\\Plugin\\views\\style\\StylePluginBase-&gt;renderGrouping(Array, Array, 1) (Line: 468)\r\nDrupal\\views\\Plugin\\views\\style\\StylePluginBase-&gt;render(Array) (Line: 2111)\r\nDrupal\\views\\Plugin\\views\\display\\DisplayPluginBase-&gt;render() (Line: 131)\r\nDrupal\\webprofiler\\Views\\TraceableViewExecutable-&gt;render() (Line: 33)\r\nDrupal\\entity_browser\\Plugin\\views\\display\\EntityBrowser-&gt;execute() (Line: 104)\r\nDrupal\\entity_browser\\Plugin\\views\\display\\EntityBrowser-&gt;preview() (Line: 1662)\r\nDrupal\\views\\ViewExecutable-&gt;preview('entity_browser_1', Array) (Line: 194)\r\nDrupal\\views\\Controller\\ViewAjaxController-&gt;Drupal\\views\\Controller\\{closure}() (Line: 582)\r\nDrupal\\Core\\Render\\Renderer-&gt;executeInRenderContext(Object, Object) (Line: 195)\r\nDrupal\\views\\Controller\\ViewAjaxController-&gt;ajaxView(Object)\r\ncall_user_func_array(Array, Array) (Line: 123)\r\nDrupal\\Core\\EventSubscriber\\EarlyRenderingControllerWrapperSubscriber-&gt;Drupal\\Core\\EventSubscriber\\{closure}() (Line: 582)\r\nDrupal\\Core\\Render\\Renderer-&gt;executeInRenderContext(Object, Object) (Line: 124)\r\nDrupal\\Core\\EventSubscriber\\EarlyRenderingControllerWrapperSubscriber-&gt;wrapControllerExecutionInRenderContext(Array, Array) (Line: 97)\r\nDrupal\\Core\\EventSubscriber\\EarlyRenderingControllerWrapperSubscriber-&gt;Drupal\\Core\\EventSubscriber\\{closure}() (Line: 151)\r\nSymfony\\Component\\HttpKernel\\HttpKernel-&gt;handleRaw(Object, 1) (Line: 68)\r\nSymfony\\Component\\HttpKernel\\HttpKernel-&gt;handle(Object, 1, 1) (Line: 67)\r\nDrupal\\simple_oauth\\HttpMiddleware\\BasicAuthSwap-&gt;handle(Object, 1, 1) (Line: 57)\r\nDrupal\\Core\\StackMiddleware\\Session-&gt;handle(Object, 1, 1) (Line: 47)\r\nDrupal\\Core\\StackMiddleware\\KernelPreHandle-&gt;handle(Object, 1, 1) (Line: 106)\r\nDrupal\\page_cache\\StackMiddleware\\PageCache-&gt;pass(Object, 1, 1) (Line: 85)\r\nDrupal\\page_cache\\StackMiddleware\\PageCache-&gt;handle(Object, 1, 1) (Line: 47)\r\nDrupal\\Core\\StackMiddleware\\ReverseProxyMiddleware-&gt;handle(Object, 1, 1) (Line: 38)\r\nDrupal\\webprofiler\\StackMiddleware\\WebprofilerMiddleware-&gt;handle(Object, 1, 1) (Line: 52)\r\nDrupal\\Core\\StackMiddleware\\NegotiationMiddleware-&gt;handle(Object, 1, 1) (Line: 23)\r\nStack\\StackedHttpKernel-&gt;handle(Object, 1, 1) (Line: 693)\r\nDrupal\\Core\\DrupalKernel-&gt;handle(Object) (Line: 19)\r\n<\/pre><\/div>\n\n <\/div>\n <div class=\"phork-meta\">\n  <a href=\"https:\/\/p.cweiske.de\/803\/rev-raw\/81ac08d837c8b89507a739361a1cfad58d7dcca2\/3-exception.txt\" style=\"float: right\">view raw source<\/a>\n  <a href=\"https:\/\/p.cweiske.de\/803#3-exception.txt\">3-exception.txt<\/a>\n <\/div>\n<\/div>\n<\/div>\n"}
