[ https://issues.apache.org/jira/browse/SOLR-3173?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13218254#comment-13218254 ]
Per Steffensen commented on SOLR-3173: -------------------------------------- Impl thoughts: * In solrconfig.xml turn this feature on by added a tag <databaseSemantics> (probably to <updateHandler>). When this "flag" in not turned on "update"-requests work as always (creates if not exists). With this "flag" turned on "update"-requests does not create a document if it does not already exist. Also when this "flag" is turned on "insert"-requests are suddenly also possible - they do as "update"-requets does today, except that they return DocumentAlreadyExist-error if document already exists. * Proper concurrency handling * Be carefull using this feature unless you are running with updateLog turned on (and therefore will never "lose" already accepted updates/deletes on crash) > Database semantics - insert and update > -------------------------------------- > > Key: SOLR-3173 > URL: https://issues.apache.org/jira/browse/SOLR-3173 > Project: Solr > Issue Type: New Feature > Components: update > Affects Versions: 3.5 > Environment: All > Reporter: Per Steffensen > Labels: RDBMS, insert, nosql, uniqueKey, update > Fix For: 4.0 > > Original Estimate: 168h > Remaining Estimate: 168h > > In order increase the ability of Solr to be used as a NoSql database (lots of > concurrent inserts, updates, deletes and queries in the entire lifetime of > the index) instead of just a search index (first: everything indexed (in one > thread), after: only queries), I would like Solr to support the following > features inspired by RDBMSs and other NoSql databases. > * Given a solr-core with a schema containing a uniqueKey-field "uniqueField" > and a document Dold, when trying to INSERT a new document Dnew where > Dold.uniqueField is equal to Dnew.uniqueField, then I want a > DocumentAlredyExists error. If no such document Dold exists I want Dnew > indexed into the solr-core. > * Given a solr-core with a schema containing a uniqueKey-field "uniqueField" > and a document Dold, when trying to UPDATE a document Dnew where > Dold.uniqueField is equal to Dnew.uniqueField I want Dold deleted from and > Dnew added to the index (just as it is today).If no such document Dold exists > I want nothing to happen (Dnew is not added to the index) -- 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