Это странная ошибка, которую мы начали видеть около года назад.Сначала я только изредка замечал это на своем компьютере разработчика, но теперь он начинает появляться в производстве, что проблематично.
Мы используем Ubuntu (11.04) и Mono 2.6.7 в производстве (я могутакже воспроизвести с Mono 2.10.x) внутри Apache, используя mod_mono.
По сути, иногда (очень трудно воспроизвести), когда apache запускает приложение, SolrNet решает в нижнем регистре весь URL-адрес, который он передает на сервер solr.Если приложение находится в этом состоянии, оно остается таким до тех пор, пока оно не будет перезапущено (и иногда требуется несколько перезапусков для его очистки.) Мы могли бы пойти на 20-50 или более перезапусков, не увидев, что эта проблема возникнет.или иногда это случается каждые 2 или 3.
Хороший URL выглядит так:
INFO: [] webapp=/solr path=/select params={sort=Creative.PromotionalScore+desc&start=0&q=*:*&?=&qt=standard&fq={!tag%3DCreative.GalleryReviewStatus}Creative.GalleryReviewStatus:Approved&fq={!tag%3DCreative.SectionIncludedTarget}Creative.SectionIncludedTarget:220358+OR+(NOT+Creative.SectionIncludedTarget:[*+TO+*]+*:*)&fq={!tag%3DActive}Active:true&fq={!tag%3DCreative.ShowInGallery}Creative.ShowInGallery:true&fq={!tag%3DCreative.Size}Creative.Size:"Rectangle"&fq={!tag%3DRecordType}RecordType:FiveToOne.Gallery.Rmx.Creative&rows=12}
Плохой URL выглядит так:
http://solrServer:8080/solr/select?qt=standard&fq=%7b!tag%3dcreative.galleryreviewstatus%7dcreative.galleryreviewstatus%3aapproved&fq=%7b!tag%3dcreative.sectionincludedtarget%7dcreative.sectionincludedtarget%3a306433+or+(not+creative.sectionincludedtarget%3a%5b*+to+*%5d+*%3a*)&fq=%7b!tag%3dactive%7dactive%3atrue&fq=%7b!tag%3dcreative.showingallery%7dcreative.showingallery%3atrue&fq=%7b!tag%3dcreative.size%7dcreative.size%3a%22rectangle%22&fq=%7b!tag%3drecordtype%7drecordtype%3afivetoone.gallery.rmx.creative&sort=creative.promotionalscore+desc&rows=18&start=0&q=*%3a*&?
(первыйПрошу прощения, эти два URL извлечены из разных этапов канала, все, к чему у меня есть доступ в данный момент.)
Когда отправляется неверный URL, Solr выдает фатальное исключение, жалуясь на неизвестное поле:
HTTP Status 400 - can not sort on undefined field: creative.promotionalscore
type Status report
message can not sort on undefined field: creative.promotionalscore
description The request sent by the client was syntactically incorrect (can not sort on undefined field: creative.promotionalscore).