From b68384b21c4d69e30aa401511e9a7755c5b625e9 Mon Sep 17 00:00:00 2001 From: sashevsky Date: Sat, 25 Jun 2016 17:11:14 +0300 Subject: [PATCH] Variables in dataimport config doesn't resolved Changed the place of resolving variables. Now it is resolving before using variables. Bug was found by setting password and encryptKeyFile for dataSource by variables. --- .../org/apache/solr/handler/dataimport/JdbcDataSource.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/JdbcDataSource.java b/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/JdbcDataSource.java index 09ad775a4ec7..a258373a3d08 100644 --- a/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/JdbcDataSource.java +++ b/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/JdbcDataSource.java @@ -71,6 +71,7 @@ public class JdbcDataSource extends @Override public void init(Context context, Properties initProps) { + resolveVariables(context, initProps); initProps = decryptPwd(context, initProps); Object o = initProps.get(CONVERT_TYPE); if (o != null) @@ -142,8 +143,6 @@ private Properties decryptPwd(Context context, Properties initProps) { protected Callable createConnectionFactory(final Context context, final Properties initProps) { -// final VariableResolver resolver = context.getVariableResolver(); - resolveVariables(context, initProps); final String jndiName = initProps.getProperty(JNDI_NAME); final String url = initProps.getProperty(URL); final String driver = initProps.getProperty(DRIVER);