Mysql
 sql >> база данни >  >> RDS >> Mysql

Защо този вид в Solr не работи?

Както е посочено в коментарите за препълване на стека, вашата заявка за браузър е различна от вашата базирана на php клиент заявка - за да премахнете това от уравнението, трябва да тествате с това коригирано. За да получите същите резултати като базираната на браузъра заявка, вашият php код трябваше да изглежда така:

$solr = new Apache_Solr_Client(...);

$searchOptions = array(
  'sort' => 'mod_date desc'
);

$results = $solr->search("bmw", 0, 10, $searchOptions);

Вместо това си представям, че изглежда по-скоро:

$searchOptions = array(
    'fq' => 'category:"Bilar" + car_action:Sälje',
    'sort' => 'mod_date desc'
)

$solr->search("\*:*", 0, 10, $searchOptions);

Това, което очаквам да видите, е, че резултатите от php клиента ще бъдат същите като резултатите, базирани на браузъра, и си представям, че същото ще се случи, ако го направите по обратния начин - вземете текущите си параметри от php клиента и ги приложите правилно към базирана на браузър заявка.

Сега към вашия проблем, не виждате документи, сортирани правилно.

Бих опитал тази заявка, която е еквивалент на кода, базиран на php клиент:

http://localhost:8983/solr/select/?&q=%2A%3A%2A&fq=+category%3A%22Bilar%22+%2B+car_action%3AS%C3%A4ljes&sort=mod_date+desc

спрямо тази заявка, която премества филтърната заявка в основната заявка:

http://localhost:8983/solr/select/?&q=+category%3A%22Bilar%22+%2B+car_action%3AS%C3%A4ljes&sort=mod_date+desc

и вижте дали има разлика. Ако има, тогава може да е грешка в начина, по който резултатите от кеширани филтрирани заявки се използват и сортират по solr - което няма да е проблем с клиента, а за самата услуга solr.

Надяваме се това да ви доближи до отговорник.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Вмъкнете няколко реда в mysql (елементи, разделени със запетая)

  2. MYSQL:COUNT с GROUP BY, LEFT JOIN и клаузата WHERE не връща нулеви стойности

  3. Израз mysql NOW() в Doctrine QueryBuilder

  4. най-добрият начин за съхраняване на потребителски отношения 1:1 в релационна база данни

  5. Чувствителни ли са UNIQUE индексите в MySQL?