Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

rassamaha

Newbie
  
  • Posts

    4
  • Joined

  • Last visited

Everything posted by rassamaha

  1. В общем нашел решение, в файле: http/system/library/db/mysqli.php Нужно прописать строчку, выделенную жирным. public function __construct($hostname, $username, $password, $database, $port = '3306') { $this->link = new \mysqli($hostname, $username, $password, $database, $port); if ($this->link->connect_error) { trigger_error('Error: Could not make a database link (' . $this->link->connect_errno . ') ' . $this->link->connect_error); exit(); } $this->link->set_charset("utf8"); $this->link->query("SET SQL_MODE = ''"); $this->link->query("SET SQL_BIG_SELECTS=1"); }
  2. Т.е. я понимаю, что дело в SQL-запросе, который возвращает слишком большое количество параметров, и что это связано с большим количеством товаров в базе. Но мне в принципе не понятно, что это за запрос, который выполняется при каждом обновлении страницы в админке, т.е. если я даже не захожу в раздел товаров, а захожу в раздел модулей или скажем в настройки, эта ошибка есть в шапке. И в каком месте правильно прописать "SET SQL_BIG_SELECTS=1". А вот на странице с товарами этот запрос выполняется дважды, есть две ошибки, как написано ниже:
  3. Написано, но я не поинмаю, куда это прописать. Попробовал в файле: /http/system/library/db/mysqli.php добавить строчку, выделенную жирным, но результатов это не дало: public function __construct($hostname, $username, $password, $database, $port = '3306') { if (!$this->link = mysql_connect($hostname . ':' . $port, $username, $password)) { trigger_error('Error: Could not make a database link using ' . $username . '@' . $hostname); exit(); } if (!mysql_select_db($database, $this->link)) { trigger_error('Error: Could not connect to database ' . $database); exit(); } mysql_query("SET NAMES 'utf8'", $this->link); mysql_query("SET CHARACTER SET utf8", $this->link); mysql_query("SET CHARACTER_SET_CONNECTION=utf8", $this->link); mysql_query("SET SQL_MODE = ''", $this->link); mysql_query("SET SQL_BIG_SELECTS=1", $this->link); }
  4. Я не уверен, связано ли это с движком, с большим количеством товаров или со сторонним модулем, которым я производил загрузку товаром, подскажите пожалуйста, в какую сторону копать. Или может быть проблема с настройками SQL? В админке, сверху, на всех страницах пишет вот такое сообщение: Notice: Error: The SELECT would examine more than MAX_JOIN_SIZE rows; check your WHERE and use SET SQL_BIG_SELECTS=1 or SET MAX_JOIN_SIZE=# if the SELECT is okay Error No: 1104 SELECT COUNT(DISTINCT p.product_id) AS total FROM oc_product p LEFT JOIN oc_product_description pd ON (p.product_id = pd.product_id) LEFT JOIN oc_product_to_category p2c ON (p.product_id = p2c.product_id) WHERE pd.language_id = '1' AND p.quantity = '0' in /home/aik-snab/aik-snab.rf/http/system/library/db/mysqli.php on line 41Notice: Trying to get property of non-object in /home/aik-snab/aik-snab.rf/http/admin/model/catalog/product.php on line 693 Когда захожу в админку, в раздел товаров, то показывает только первых 10ть штук, остальные не видны. Если просто работаю с интернет-магазином, то ошибок нет, поиск работает, даже по большим запросам. Количество товаров действительно большое - будет около 200 000. Проблема проявилась не сразу, а когда загрузил их большое количество. Заранее спасибо.
×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.