Websolr + Heroku + sunspot_autocomplete с db:seed

Я настраиваю свое приложение на Heroku. Уже установил надстройку websolr за 20 долларов. Миграции уже запущены.

При запуске heroku rake db:seed я получаю следующую ошибку.

Любая идея, что вызывает это?

$ heroku run rake db:seed
RSolr::Error::Http - 400 Bad Request
Error: <html><head><title>Apache Tomcat/6.0.28 - Error report</title><style><!--H1 {font-    family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}HR {color : #525D76;}--></style> </head><body><h1>HTTP Status     400 - ERROR: [doc=Dvd 2] unknown field 'dvd_title_as'</h1><HR size="1" noshade="noshade"><p>    <b>type</b> Status report</p><p><b>message</b> <u>ERROR: [doc=Dvd 2] unknown field     'dvd_title_as'</u></p><p><b>description</b> <u>The request sent by the client was     syntactically incorrect (ERROR: [doc=Dvd 2] unknown field 'dvd_title_as').</u></p><HR size="1"     noshade="noshade"><h3>Apache Tomcat/6.0.28</h3></body></html>

Request Data: "<?xml version=\"1.0\" encoding=\"UTF-8\"?><add><doc><field name=\"id\">Dvd 2</field><field name=\"type\">Dvd</field><field name=\"type\">ActiveRecord::Base</field><field name=\"class_name\">Dvd</field><field name=\"featured_b\">false</field><field name=\"dvd_title_as\">100% Dirty Slut</field><field name=\"title_text\">100% Dirty Slut</field><field name=\"studio_text\">Cherry Boxxx</field></doc></add>"

Backtrace: /app/vendor/bundle/ruby/1.9.1/gems/rsolr-1.0.8/lib/rsolr/client.rb:230:in `adapt_response'
/app/vendor/bundle/ruby/1.9.1/gems/rsolr-1.0.8/lib/rsolr/client.rb:167:in `execute'
/app/vendor/bundle/ruby/1.9.1/gems/rsolr-1.0.8/lib/rsolr/client.rb:161:in     `send_and_receive'
(eval):2:in `post'
/app/vendor/bundle/ruby/1.9.1/gems/rsolr-1.0.8/lib/rsolr/client.rb:67:in `update'
/app/vendor/bundle/ruby/1.9.1/gems/rsolr-1.0.8/lib/rsolr/client.rb:87:in `add'
/app/vendor/bundle/ruby/1.9.1/gems/sunspot-1.3.3/lib/sunspot/indexer.rb:101:in `add_documents'
/app/vendor/bundle/ruby/1.9.1/gems/sunspot-1.3.3/lib/sunspot/indexer.rb:26:in `add'
/app/vendor/bundle/ruby/1.9.1/gems/sunspot-1.3.3/lib/sunspot/session.rb:91:in `index'
/app/vendor/bundle/ruby/1.9.1/gems/sunspot-1.3.3/lib/sunspot/session_proxy/abstract_session_proxy.rb:11:in `index'
/app/vendor/bundle/ruby/1.9.1/gems/sunspot-1.3.3/lib/sunspot.rb:184:in `index'

Tasks: TOP => db:seed
(See full trace by running task with --trace)

person Martin    schedule 19.10.2012    source источник


Ответы (2)


Сообщение об ошибке, скрытое в этом HTML-ответе, — unknown field 'dvd_title_as'.

По сути, документы, которые ваше приложение отправляет в Solr, не определены в файле schema.xml. Скорее всего, вам потребуется обновить индекс websolr последней схемой вашего приложения, что вы можете сделать, открыв панель инструментов с помощью heroku addons:open websolr.

person Nick Zadrozny    schedule 20.10.2012

Я рекомендую зайти на help.websolr.com и заполнить запрос в службу поддержки.

person Kyle Maxwell    schedule 20.10.2012