Good to know, I think this needs to be a configurable value in the library (overridable, at a minimum.)
What's outstanding for me on this is understanding the Solr side of the equation, and whether culture variance comes into play. What makes this even more interesting/confusing is how culture scenarios may differ across platforms. I do most of my production work against a solr farm running on RHEL4, but often do side development work against Win2K3. Thanks for confirming the culture issue, this will make its way into the source as a fix in the future. cheers, jeff On 10/11/07, Filipe Correia <[EMAIL PROTECTED]> wrote: > > Jeff, > > Thanks! Your suggestion worked, instead of invoking ToString() on > float values I've used ToString's other signature, which takes a an > IFormatProvider: > > CultureInfo MyCulture = CultureInfo.InvariantCulture; > this.Add(new IndexFieldValue("weight", > weight.ToString(MyCulture.NumberFormat))); > this.Add(new IndexFieldValue("price", price.ToString( > MyCulture.NumberFormat))); > > This made me think on a related issue though. In this case it was the > client that was using a non-invariant number format, but can this also > happen on Solr's side? If so, I guess I may need to configure it > somewhere... > > Cheers, > Filipe Correia > > On 10/10/07, Jeff Rodenburg <[EMAIL PROTECTED]> wrote: > > Hi Felipe - > > > > The issue you're encountering is a problem with the data format being > passed > > to the solr server. If you follow the stack trace that you posted, > you'll > > notice that the solr field is looking for a value that's a float, but > the > > passed value is "1,234". > > > > I'm guessing this is caused by one of two possibilities: > > > > (1) there's a typo in your example code, where "1,234" should actually > be " > > 1.234", or > > (2) there's a culture settings difference on your server that's > converting " > > 1.234" to "1,234" > > > > Assuming it's the latter, add this line in the ExampleIndexDocument > > constructor: > > > > CultureInfo MyCulture = new CultureInfo("en-US"); > > > > Please let me know if this fixes the issue, I've been looking at this > > previously and would like to confirm it. > > > > thanks, > > jeff r. > > > > > > On 10/10/07, Filipe Correia <[EMAIL PROTECTED]> wrote: > > > > > > Hello, > > > > > > I am trying to run SolrSharp's example application but am getting a > > > WebException with a ServerProtocolViolation status message. > > > > > > After some debugging I found out this is happening with a call to: > > > http://localhost:8080/solr/update/ > > > > > > And using fiddler[1] found out that solr is actually throwing the > > > following exception: > > > org.apache.solr.core.SolrException: Error while creating field > > > > 'weight{type=sfloat,properties=indexed,stored,omitNorms,sortMissingLast}' > > > from value '1,234' > > > at org.apache.solr.schema.FieldType.createField(FieldType.java > > > :173) > > > at org.apache.solr.schema.SchemaField.createField( > SchemaField.java > > > :94) > > > at org.apache.solr.update.DocumentBuilder.addSingleField( > > > DocumentBuilder.java:57) > > > at org.apache.solr.update.DocumentBuilder.addField( > > > DocumentBuilder.java:73) > > > at org.apache.solr.update.DocumentBuilder.addField( > > > DocumentBuilder.java:83) > > > at org.apache.solr.update.DocumentBuilder.addField( > > > DocumentBuilder.java:77) > > > at org.apache.solr.handler.XmlUpdateRequestHandler.readDoc( > > > XmlUpdateRequestHandler.java:339) > > > at org.apache.solr.handler.XmlUpdateRequestHandler.update( > > > XmlUpdateRequestHandler.java:162) > > > at > > > org.apache.solr.handler.XmlUpdateRequestHandler.handleRequestBody( > > > XmlUpdateRequestHandler.java:84) > > > at org.apache.solr.handler.RequestHandlerBase.handleRequest( > > > RequestHandlerBase.java:77) > > > at org.apache.solr.core.SolrCore.execute(SolrCore.java:658) > > > at org.apache.solr.servlet.SolrDispatchFilter.execute( > > > SolrDispatchFilter.java:191) > > > at org.apache.solr.servlet.SolrDispatchFilter.doFilter( > > > SolrDispatchFilter.java:159) > > > at > > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( > > > ApplicationFilterChain.java:235) > > > at org.apache.catalina.core.ApplicationFilterChain.doFilter( > > > ApplicationFilterChain.java:206) > > > at org.apache.catalina.core.StandardWrapperValve.invoke( > > > StandardWrapperValve.java:233) > > > at org.apache.catalina.core.StandardContextValve.invoke( > > > StandardContextValve.java:175) > > > at org.apache.catalina.core.StandardHostValve.invoke( > > > StandardHostValve.java:128) > > > at org.apache.catalina.valves.ErrorReportValve.invoke( > > > ErrorReportValve.java:102) > > > at org.apache.catalina.core.StandardEngineValve.invoke( > > > StandardEngineValve.java:109) > > > at org.apache.catalina.connector.CoyoteAdapter.service( > > > CoyoteAdapter.java:263) > > > at org.apache.coyote.http11.Http11Processor.process( > > > Http11Processor.java:844) > > > at > > > > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process( > > > Http11Protocol.java:584) > > > at org.apache.tomcat.util.net.JIoEndpoint$Worker.run( > > > JIoEndpoint.java:447) > > > at java.lang.Thread.run(Unknown Source) > > > Caused by: java.lang.NumberFormatException: For input string: > > > "1,234" > > > at sun.misc.FloatingDecimal.readJavaFormatString(Unknown > Source) > > > at java.lang.Float.parseFloat(Unknown Source) > > > at org.apache.solr.util.NumberUtils.float2sortableStr( > > > NumberUtils.java:80) > > > at org.apache.solr.schema.SortableFloatField.toInternal( > > > SortableFloatField.java:50) > > > at org.apache.solr.schema.FieldType.createField(FieldType.java > > > :171) > > > ... 24 more > > > type Status report > > > message Error while creating field > > > > 'weight{type=sfloat,properties=indexed,stored,omitNorms,sortMissingLast}' > > > from value '1,234' > > > > > > I am just starting to try Solr, and might be missing some > > > configurations, but I have no clue where to begin to investigate this > > > further without digging into Solr's source, which I would really like > > > to avoid for now. Any thoughts? > > > > > > thank you in advance, > > > Filipe Correia > > > > > > [1] http://www.fiddlertool.com/ > > > > > >