[jira] [Updated] (SOLR-3251) dynamically add field to schema

2013-04-16 Thread Steve Rowe (JIRA)

 [ 
https://issues.apache.org/jira/browse/SOLR-3251?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Steve Rowe updated SOLR-3251:
-

Attachment: SOLR-3251.patch

Patch, fixing issues Robert and Yonik raised.

# Restored SchemaCodecFactory's and SchemaSimilarityFactory's not-null 
assertions in their getters.
# Moved zkIndexSchemaReader to ManagedIndexSchemaFactory.
# Removed SolrIndexSearcher.getSchema() entirely, switching previous calls to 
either pull the schema from the request, if available or failing that, from the 
searcher's SolrCore.
# Put {{newField()}} and {{addFields()}} back as member functions of 
IndexSchema, rather than static methods on ManagedIndexSchema.  This is not the 
full refactoring with an abstract IndexSchema, but at least these methods won't 
get in the way of that.  I'll make a separate JIRA for the schema refactoring 
so the idea doesn't get lost.
# Fixed javadoc duplication on SchemaAware {{inform()}} methods.
# In RealTimeGetComponent, switched from {{req.getCore().getSchema()}} to 
{{req.getSchem()}}.  Added a basic test in new class TestAddFieldRealTimeGet to 
make sure this works.

 dynamically add field to schema
 ---

 Key: SOLR-3251
 URL: https://issues.apache.org/jira/browse/SOLR-3251
 Project: Solr
  Issue Type: New Feature
Reporter: Yonik Seeley
Assignee: Steve Rowe
 Fix For: 4.3

 Attachments: SOLR-3251.patch, SOLR-3251.patch, SOLR-3251.patch, 
 SOLR-3251.patch, SOLR-3251.patch, SOLR-3251.patch


 One related piece of functionality needed for SOLR-3250 is the ability to 
 dynamically add a field to the schema.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (SOLR-3251) dynamically add field to schema

2013-04-15 Thread Steve Rowe (JIRA)

 [ 
https://issues.apache.org/jira/browse/SOLR-3251?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Steve Rowe updated SOLR-3251:
-

Attachment: SOLR-3251.patch

Patch with the following changes:

* Schema is now effectively immutable:  requests see the same schema snapshot 
for their lifetimes.
* ManagedIndexSchema.addFields() allows for multiple fields to be added at 
once, though only the single-field REST API is provided at this point.
* Only new field additions are allowed: addFields() fails if getFieldOrNull() 
returns non-null for any of the given new fields.
* SchemaCodecFactory and SchemaSimilarityFactory don't change codec and 
similarity when the schema is swapped out: instead they refer to the latest 
version they have been inform()'d about.
* Multi-core shared schemas are now handled: the old schema is removed from the 
schema cache, the new schema is added to the schema cache, and the new schema 
replaces the old schema in all active cores.

[~rcmuir], I'd appreciate your review of these changes.

 dynamically add field to schema
 ---

 Key: SOLR-3251
 URL: https://issues.apache.org/jira/browse/SOLR-3251
 Project: Solr
  Issue Type: New Feature
Reporter: Yonik Seeley
Assignee: Steve Rowe
 Attachments: SOLR-3251.patch, SOLR-3251.patch, SOLR-3251.patch, 
 SOLR-3251.patch


 One related piece of functionality needed for SOLR-3250 is the ability to 
 dynamically add a field to the schema.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (SOLR-3251) dynamically add field to schema

2013-04-15 Thread Yonik Seeley (JIRA)

 [ 
https://issues.apache.org/jira/browse/SOLR-3251?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Yonik Seeley updated SOLR-3251:
---

Fix Version/s: 4.3

 dynamically add field to schema
 ---

 Key: SOLR-3251
 URL: https://issues.apache.org/jira/browse/SOLR-3251
 Project: Solr
  Issue Type: New Feature
Reporter: Yonik Seeley
Assignee: Steve Rowe
 Fix For: 4.3

 Attachments: SOLR-3251.patch, SOLR-3251.patch, SOLR-3251.patch, 
 SOLR-3251.patch


 One related piece of functionality needed for SOLR-3250 is the ability to 
 dynamically add a field to the schema.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (SOLR-3251) dynamically add field to schema

2013-04-15 Thread Steve Rowe (JIRA)

 [ 
https://issues.apache.org/jira/browse/SOLR-3251?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Steve Rowe updated SOLR-3251:
-

Attachment: SOLR-3251.patch

Patch:

SchemaSimilarityFactory and SchemaCodecFactory now implement only SolrCoreAware 
- SchemaAware alone was insufficient; you were right, Robert.

bq. Can we do something to eliminate the two inform methods?

I think the SolrCoreAware one is necessary - I couldn't see how otherwise to 
pass in the SolrCore.

I added a POST REST method allowing multiple fields to be added at once, at 
{{/schema/fields}}.

I think it's ready.


 dynamically add field to schema
 ---

 Key: SOLR-3251
 URL: https://issues.apache.org/jira/browse/SOLR-3251
 Project: Solr
  Issue Type: New Feature
Reporter: Yonik Seeley
Assignee: Steve Rowe
 Fix For: 4.3

 Attachments: SOLR-3251.patch, SOLR-3251.patch, SOLR-3251.patch, 
 SOLR-3251.patch, SOLR-3251.patch


 One related piece of functionality needed for SOLR-3250 is the ability to 
 dynamically add a field to the schema.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (SOLR-3251) dynamically add field to schema

2013-04-04 Thread Steve Rowe (JIRA)

 [ 
https://issues.apache.org/jira/browse/SOLR-3251?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Steve Rowe updated SOLR-3251:
-

Attachment: SOLR-3251.patch

Patch with REST API and SolrCloud tests.

The SolrCloud test reports the times it takes to fetch the schema from 
ZooKeeper after it's persisted there, and on my Macbook Pro, it averages about 
5 ms or so for an eight-shard cluster.  The test attempts to find a newly added 
field on each shard right after persisting, and all shards except the leader 
report its existence on the first try.  The leader sometimes takes 3 or 4 tries 
(no retry delay) before it reports the new field as being present in the 
schema, with an additional latency of 15 ms or so.

The SolrCloud test also reports schema reload times, and for the first change, 
it's roughly 50 ms, and goes down to about 10 ms after a few changes.

I'm putting the patch up for reference - I won't commit right away.

 dynamically add field to schema
 ---

 Key: SOLR-3251
 URL: https://issues.apache.org/jira/browse/SOLR-3251
 Project: Solr
  Issue Type: New Feature
Reporter: Yonik Seeley
Assignee: Steve Rowe
 Attachments: SOLR-3251.patch, SOLR-3251.patch, SOLR-3251.patch


 One related piece of functionality needed for SOLR-3250 is the ability to 
 dynamically add a field to the schema.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (SOLR-3251) dynamically add field to schema

2013-04-03 Thread Steve Rowe (JIRA)

 [ 
https://issues.apache.org/jira/browse/SOLR-3251?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Steve Rowe updated SOLR-3251:
-

Attachment: SOLR-3251.patch

This patch builds on Yonik's patch:
* Persistence is added, both locally and to ZooKeeper.
* ZooKeeper persistence uses optimistic concurrency: when attempting to persist 
after adding a new field, if the remote version is different from the locally 
cached version, the schema is fetched from ZooKeeper, field definitions are 
reloaded (not the whole schema), and the field addition is redone and 
persistence is re-attempted, repeating until it succeeds.
* JSON PUT is enabled on /schema/fields/(name), in idempotent fashion: repeated 
identical requests don't result in schema changes (though no special check is 
done to achieve this - after such a request, the schema is still persisted as 
though there were a real change.)

So far there are only standalone tests, which pass.  I'm working on REST API 
tests and SolrCloud tests.

I'm not sure about whether anything needs to be done to enable replication of 
the managed schema, since it has a different name.  I think master/slave mode 
will just work, since AFAIK replication of config files triggers a core reload 
on the slaves.

I'd appreciate feedback on this, I think it's close.

 dynamically add field to schema
 ---

 Key: SOLR-3251
 URL: https://issues.apache.org/jira/browse/SOLR-3251
 Project: Solr
  Issue Type: New Feature
Reporter: Yonik Seeley
 Attachments: SOLR-3251.patch, SOLR-3251.patch


 One related piece of functionality needed for SOLR-3250 is the ability to 
 dynamically add a field to the schema.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (SOLR-3251) dynamically add field to schema

2012-03-15 Thread Yonik Seeley (Updated) (JIRA)

 [ 
https://issues.apache.org/jira/browse/SOLR-3251?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Yonik Seeley updated SOLR-3251:
---

Attachment: SOLR-3251.patch

Here's a quick start... no tests or external API yet.

 dynamically add field to schema
 ---

 Key: SOLR-3251
 URL: https://issues.apache.org/jira/browse/SOLR-3251
 Project: Solr
  Issue Type: New Feature
Reporter: Yonik Seeley
 Attachments: SOLR-3251.patch


 One related piece of functionality needed for SOLR-3250 is the ability to 
 dynamically add a field to the schema.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira



-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org