1

I have a website in Drupal version 7.28. I have page where i want to search members by using Search option created from VIEW. It goes like this after submission:

https://domain.com/search-members?search_api_views_fulltext=anything

This page and functionalty was working fine few days back but not now. Page is blank without any error. There is result in database.

I can understand above info might not be sufficient to help but my only question is:

What can cause a blank page without an error? Possible problems?

Here is the updated ERROR MSG:

PDOException: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'aeeee01_drpl21.search_api_db_user_index_field_business_phone' doesn't exist: SELECT COUNT() AS expression FROM (SELECT 1 AS expression FROM (SELECT t. FROM {search_api_db_user_index_field_business_phone} t WHERE (word = :db_condition_placeholder_0) UNION ALL SELECT t.* FROM {search_api_db_user_index_field_city} t WHERE (word = :db_condition_placeholder_1) UNION ALL SELECT t.* FROM {search_api_db_user_index_field_country} t WHERE (word = :db_condition_placeholder_2) UNION ALL SELECT t.* FROM {search_api_db_user_index_field_department} t WHERE (word = :db_condition_placeholder_3) UNION ALL SELECT t.* FROM {search_api_db_user_index_field_first_name_} t WHERE (word = :db_condition_placeholder_4) UNION ALL SELECT t.* FROM {search_api_db_user_index_field_job_institution} t WHERE (word = :db_condition_placeholder_5) UNION ALL SELECT t.* FROM {search_api_db_user_index_field_job_title} t WHERE (word = :db_condition_placeholder_6) UNION ALL SELECT t.* FROM {search_api_db_user_index_field_last_name} t WHERE (word = :db_condition_placeholder_7) UNION ALL SELECT t.* FROM {search_api_db_user_index_field_member_advisor} t WHERE (word = :db_condition_placeholder_8) UNION ALL SELECT t.* FROM {search_api_db_user_index_field_specialization} t WHERE (word = :db_condition_placeholder_9) UNION ALL SELECT t.* FROM {search_api_db_user_index_field_state} t WHERE (word = :db_condition_placeholder_10) UNION ALL SELECT t.* FROM {search_api_db_user_index_field_zip_code} t WHERE (word = :db_condition_placeholder_11) UNION ALL SELECT t.* FROM {search_api_db_user_index_name} t WHERE (word = :db_condition_placeholder_12) ) t GROUP BY t.item_id) subquery; Array ( [:db_condition_placeholder_0] => mlang [:db_condition_placeholder_1] => mlang [:db_condition_placeholder_2] => mlang [:db_condition_placeholder_3] => mlang [:db_condition_placeholder_4] => mlang [:db_condition_placeholder_5] => mlang [:db_condition_placeholder_6] => mlang [:db_condition_placeholder_7] => mlang [:db_condition_placeholder_8] => mlang [:db_condition_placeholder_9] => mlang [:db_condition_placeholder_10] => mlang [:db_condition_placeholder_11] => mlang [:db_condition_placeholder_12] => mlang ) in SearchApiDbService->search() (line 928 of /home1/aeeee01/public_html/sites/all/modules/search_api_db/service.inc).

5
  • may be your are not displaying anything on your tpl file(template) or your template missing.. Jun 17, 2014 at 7:49
  • Did you check what the database log says and your apache log? Jun 17, 2014 at 9:07
  • Hi, Pontus and Gobinath i'm displaying code because it was working few days back. and i did check apache log but i'm not sure if i'm checking it correctly as on server log folder is Blank and log file on root is showing logs related to old dates. nothing is related to it. any other reason? I'll update you soon this comment if i get anything for Database log.
    – Sameer
    Jun 17, 2014 at 9:29
  • Hi, I have updated the error msg. Could please give it a one shot if possible?
    – Sameer
    Jun 17, 2014 at 10:11
  • Did you change anything in the taxonomy of the users? Like delete one taxonomy field, or change vocabulary or terms tid/name? It looks like your search is looking for something that doesn't exist.
    – Tritof
    Jun 17, 2014 at 10:39

2 Answers 2

0

You can look into this : https://api.drupal.org/api/drupal/includes!database!database.inc/function/db_query/7#comment-7019

https://api.drupal.org/comment/51338#comment-51338

https://api.drupal.org/comment/16974#comment-16974

And check if you made change in your taxonomy vocabulary, deleting any fields that the search would index in the views.

You can also re-index your user.

24
  • After looking deeply into database i found mentioned line in ERROR: Base table or view not found: 1146 Table 'aeeee01_drpl21.search_api_db_user_index_field_business_phone' doesn't exist: It is pointing to a table which has a little different name. It says: search_api_db_user_index_field_business_phon But in DB it is: search_api_db_user_index_1_field_business_phone Could u plz confirm how it could b changed n can i solve it frm backend setting by doing any UNDO or RESET or something? Database is very huge i cant do quick solution as there are too many tables with "1" Please suggest.
    – Sameer
    Jun 17, 2014 at 11:15
  • Well, I can't say for sure it is about taxonomy, but it is one of the few very steps you should check. I had once a placeholder crash and it was about taxonomy. I would say, first start with the easiest, re-index your users (admin/config/search/search_api/index/your_user_index clear all indexed data, then index it again). Then second more easy, check if some of the data values of your tables are with " or '
    – Tritof
    Jun 17, 2014 at 11:39
  • And if you do this, make a test of your search at every batch of indexation
    – Tritof
    Jun 17, 2014 at 11:49
  • ok I just see what you said about the machine name. Re-indexing could work, you can check in your user_index the fields indexed and see if you can change them to the right field_business_phone. You might have 2 of this kind or have deleted one, changed one.
    – Tritof
    Jun 17, 2014 at 11:56
  • Thank you so much Tritof for your kind help. I'm on it. Will update this thread once i see any solution or issue. Indexing is running for site. I am/was just confused, if in error it is saying table is missing and in database table exists with slightly different name then can the solution be Indexing for this issue? You may leave your reply if you get time though i'm already following your instructions. Lets hope it will do the solution. Thank you.
    – Sameer
    Jun 17, 2014 at 14:08
0

When there is an error Drupal will often show a WSOD (white screen of death), so it hides the error for security reasons.

I would recommend to rebuild the index or delete and remake the index. Also check in the fields tab of search api if all needed fields to index are checked.

If you change any fields you should always reindex.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.