Yeah I guess I got confused with Yonik's remark of committing to trunk and merging to the branch. I shall commit to the branch as well.
On Fri, Aug 29, 2008 at 12:36 AM, Chris Hostetter <[EMAIL PROTECTED]>wrote: > > SOLR-729 is marked as fixed in 1.3, but i don't see this commited to the > 1.3 branch? > > > > : Date: Thu, 28 Aug 2008 16:04:46 -0000 > : From: [EMAIL PROTECTED] > : Reply-To: [email protected] > : To: [EMAIL PROTECTED] > : Subject: svn commit: r689867 - in > : /lucene/solr/trunk/contrib/dataimporthandler: ./ > : src/main/java/org/apache/solr/handler/dataimport/ > : src/test/java/org/apache/solr/handler/dataimport/ > : src/test/resources/solr/conf/ > : > : Author: shalin > : Date: Thu Aug 28 09:04:45 2008 > : New Revision: 689867 > : > : URL: http://svn.apache.org/viewvc?rev=689867&view=rev > : Log: > : SOLR-729 -- Context.getDataSource(String) gives current entity's > DataSource instance regardless of argument. > : > : Added: > : > lucene/solr/trunk/contrib/dataimporthandler/src/test/resources/solr/conf/data-config-with-transformer.xml > (with props) > : Modified: > : lucene/solr/trunk/contrib/dataimporthandler/CHANGES.txt > : > lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/Context.java > : > lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/ContextImpl.java > : > lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/DataImporter.java > : > lucene/solr/trunk/contrib/dataimporthandler/src/test/java/org/apache/solr/handler/dataimport/TestDocBuilder2.java > : > : Modified: lucene/solr/trunk/contrib/dataimporthandler/CHANGES.txt > : URL: > http://svn.apache.org/viewvc/lucene/solr/trunk/contrib/dataimporthandler/CHANGES.txt?rev=689867&r1=689866&r2=689867&view=diff > : > ============================================================================== > : --- lucene/solr/trunk/contrib/dataimporthandler/CHANGES.txt (original) > : +++ lucene/solr/trunk/contrib/dataimporthandler/CHANGES.txt Thu Aug 28 > 09:04:45 2008 > : @@ -32,6 +32,9 @@ > : use the complete string for parsing. Failure to do so will > result in an exception. > : (Stefan Oestreicher via shalin) > : > : +2. SOLR-729: Context.getDataSource(String) gives current entity's > DataSource instance regardless of argument. > : + (Noble Paul, shalin) > : + > : Other Changes > : > : > : > : Modified: > lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/Context.java > : URL: > http://svn.apache.org/viewvc/lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/Context.java?rev=689867&r1=689866&r2=689867&view=diff > : > ============================================================================== > : --- > lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/Context.java > (original) > : +++ > lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/Context.java > Thu Aug 28 09:04:45 2008 > : @@ -72,18 +72,21 @@ > : public abstract VariableResolver getVariableResolver(); > : > : /** > : - * Gets the datasource instance defined for this entity. > : + * Gets the datasource instance defined for this entity. Do not > close() this instance. > : + * Transformers should use the getDataSource(String name) method. > : * > : * @return a new DataSource instance as configured for the current > entity > : * @see org.apache.solr.handler.dataimport.DataSource > : + * @see #getDataSource(String) > : */ > : public abstract DataSource getDataSource(); > : > : /** > : - * Gets a new DataSource instance with a name. > : - * > : + * Gets a new DataSource instance with a name. Ensure that you close() > this after use > : + * because this is created just for this method call. > : + * > : * @param name Name of the dataSource as defined in the dataSource tag > : - * @return a new DataSource instance as configured for the named > entity > : + * @return a new DataSource instance > : * @see org.apache.solr.handler.dataimport.DataSource > : */ > : public abstract DataSource getDataSource(String name); > : > : Modified: > lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/ContextImpl.java > : URL: > http://svn.apache.org/viewvc/lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/ContextImpl.java?rev=689867&r1=689866&r2=689867&view=diff > : > ============================================================================== > : --- > lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/ContextImpl.java > (original) > : +++ > lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/ContextImpl.java > Thu Aug 28 09:04:45 2008 > : @@ -63,7 +63,7 @@ > : } > : > : public DataSource getDataSource(String name) { > : - return dataImporter.getDataSourceInstance(entity); > : + return dataImporter.getDataSourceInstance(entity, name, this); > : } > : > : public boolean isRootEntity() { > : > : Modified: > lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/DataImporter.java > : URL: > http://svn.apache.org/viewvc/lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/DataImporter.java?rev=689867&r1=689866&r2=689867&view=diff > : > ============================================================================== > : --- > lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/DataImporter.java > (original) > : +++ > lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/DataImporter.java > Thu Aug 28 09:04:45 2008 > : @@ -270,20 +270,20 @@ > : key.dataSrc = new MockDataSource(); > : return; > : } > : - key.dataSrc = getDataSourceInstance(key); > : + key.dataSrc = getDataSourceInstance(key, key.dataSource, null); > : } > : > : - DataSource getDataSourceInstance(DataConfig.Entity key) { > : - Properties p = dataSourceProps.get(key.dataSource); > : + DataSource getDataSourceInstance(DataConfig.Entity key, String name, > Context ctx ) { > : + Properties p = dataSourceProps.get(name); > : if (p == null) > : - p = config.dataSources.get(key.dataSource); > : + p = config.dataSources.get(name); > : if (p == null) > : p = dataSourceProps.get(null);// for default data source > : if (p == null) > : p = config.dataSources.get(null); > : if (p == null) > : throw new > DataImportHandlerException(DataImportHandlerException.SEVERE, > : - "No dataSource :" + key.dataSource + " available for > entity :" > : + "No dataSource :" + name + " available for entity :" > : + key.name); > : String impl = p.getProperty(TYPE); > : DataSource dataSrc = null; > : @@ -300,8 +300,10 @@ > : try { > : Properties copyProps = new Properties(); > : copyProps.putAll(p); > : - dataSrc.init(new ContextImpl(key, null, dataSrc, 0, > : - Collections.EMPTY_MAP, new HashMap(), null, this), > copyProps); > : + if(ctx == null) > : + ctx = new ContextImpl(key, null, dataSrc, 0, > : + Collections.EMPTY_MAP, new HashMap(), null, this); > : + dataSrc.init(ctx, copyProps); > : } catch (Exception e) { > : throw new > DataImportHandlerException(DataImportHandlerException.SEVERE, > : "Failed to initialize DataSource: " + key.dataSource, e); > : > : Modified: > lucene/solr/trunk/contrib/dataimporthandler/src/test/java/org/apache/solr/handler/dataimport/TestDocBuilder2.java > : URL: > http://svn.apache.org/viewvc/lucene/solr/trunk/contrib/dataimporthandler/src/test/java/org/apache/solr/handler/dataimport/TestDocBuilder2.java?rev=689867&r1=689866&r2=689867&view=diff > : > ============================================================================== > : --- > lucene/solr/trunk/contrib/dataimporthandler/src/test/java/org/apache/solr/handler/dataimport/TestDocBuilder2.java > (original) > : +++ > lucene/solr/trunk/contrib/dataimporthandler/src/test/java/org/apache/solr/handler/dataimport/TestDocBuilder2.java > Thu Aug 28 09:04:45 2008 > : @@ -19,9 +19,11 @@ > : import org.junit.After; > : import org.junit.Before; > : import org.junit.Test; > : +import org.junit.Assert; > : > : import java.util.ArrayList; > : import java.util.List; > : +import java.util.Map; > : > : /** > : * <p> > : @@ -65,4 +67,25 @@ > : assertQ(req("id:1"), "//[EMAIL PROTECTED]'1']"); > : } > : > : + @Test > : + @SuppressWarnings("unchecked") > : + public void testContext() throws Exception { > : + List rows = new ArrayList(); > : + rows.add(createMap("id", "1", "desc", "one")); > : + MockDataSource.setIterator("select * from x", rows.iterator()); > : + > : + > super.runFullImport(loadDataConfig("data-config-with-transformer.xml")); > : + } > : + > : + public static class MockTransformer extends Transformer { > : + public Object transformRow(Map<String, Object> row, Context context) > { > : + Assert.assertTrue("Context gave incorrect data source", > context.getDataSource("mockDs") instanceof MockDataSource2); > : + return row; > : + } > : + } > : + > : + public static class MockDataSource2 extends MockDataSource { > : + > : + } > : + > : } > : > : Added: > lucene/solr/trunk/contrib/dataimporthandler/src/test/resources/solr/conf/data-config-with-transformer.xml > : URL: > http://svn.apache.org/viewvc/lucene/solr/trunk/contrib/dataimporthandler/src/test/resources/solr/conf/data-config-with-transformer.xml?rev=689867&view=auto > : > ============================================================================== > : --- > lucene/solr/trunk/contrib/dataimporthandler/src/test/resources/solr/conf/data-config-with-transformer.xml > (added) > : +++ > lucene/solr/trunk/contrib/dataimporthandler/src/test/resources/solr/conf/data-config-with-transformer.xml > Thu Aug 28 09:04:45 2008 > : @@ -0,0 +1,10 @@ > : +<dataConfig> > : + <dataSource type="MockDataSource" /> > : + <dataSource name="mockDs" type="TestDocBuilder2$MockDataSource2" /> > : + <document> > : + <entity name="x" query="select * from x" > transformer="TestDocBuilder2$MockTransformer"> > : + <field column="id" /> > : + <field column="desc" /> > : + </entity> > : + </document> > : +</dataConfig> > : > : Propchange: > lucene/solr/trunk/contrib/dataimporthandler/src/test/resources/solr/conf/data-config-with-transformer.xml > : > ------------------------------------------------------------------------------ > : svn:eol-style = native > : > : Propchange: > lucene/solr/trunk/contrib/dataimporthandler/src/test/resources/solr/conf/data-config-with-transformer.xml > : > ------------------------------------------------------------------------------ > : svn:keywords = Date Author Id Revision HeadURL > : > : > > > > -Hoss > > -- Regards, Shalin Shekhar Mangar.
