[jira] [Updated] (SOLR-13921) Processing UpdateRequest with delegation token throws NullPointerException

2019-11-13 Thread Kevin Risden (Jira)


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

Kevin Risden updated SOLR-13921:

Resolution: Fixed
Status: Resolved  (was: Patch Available)

> Processing UpdateRequest with delegation token throws NullPointerException
> --
>
> Key: SOLR-13921
> URL: https://issues.apache.org/jira/browse/SOLR-13921
> Project: Solr
>  Issue Type: Bug
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: SolrJ
>Affects Versions: 7.4, 7.5, 7.6, 7.7, 7.7.1, 7.7.2, 8.0, 8.1, 8.2, 8.3
>Reporter: Istvan Farkas
>Assignee: Kevin Risden
>Priority: Minor
> Fix For: 8.4
>
> Attachments: SOLR-13921.patch
>
>
> When sending UpdateRequests with delegation tokens to Solr using SolrJ, the 
> createMethod of DelegationTokenHttpSolrClient will throw a 
> NullPointerException:
>  
> {code:java}
>   [junit4] ERROR   3.41s | 
> TestSolrCloudWithDelegationTokens.testDelegationTokenSolrClientWithUpdateRequests
>  <<<
>[junit4]> Throwable #1: java.lang.NullPointerException
>[junit4]>  at 
> __randomizedtesting.SeedInfo.seed([B9AE8E4E0CDF1B3D:DBA0B722C813061D]:0)
>[junit4]>  at 
> org.apache.solr.client.solrj.impl.DelegationTokenHttpSolrClient.createMethod(DelegationTokenHttpSolrClient.java:93)
>[junit4]>  at 
> org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:258)
>[junit4]>  at 
> org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:249)
>[junit4]>  at 
> org.apache.solr.cloud.TestSolrCloudWithDelegationTokens.doSolrRequest(TestSolrCloudWithDelegationTokens.java:246)
>[junit4]>  at 
> org.apache.solr.cloud.TestSolrCloudWithDelegationTokens.testDelegationTokenSolrClientWithUpdateRequests(TestSolrCloudWithDelegationTokens.java:477)
>[junit4]>  at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>[junit4]>  at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>[junit4]>  at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>[junit4]>  at 
> java.base/java.lang.reflect.Method.invoke(Method.java:566)
>[junit4]>  at java.base/java.lang.Thread.run(Thread.java:834) 
> {code}
> This happens to all SolrJ clients including the Spark Crunch indexer which 
> use Delegation Tokens and do not specify commit / optimize commands. 
> The cause seems to be a missing null check before dereferencing 'params'. The 
> intention of the code seems to be verifying if the delegation token is passed 
> a parameter of the SolrRequest (which is not supported), however the check 
> fails with NPE if the request has no params at all. For update requests which 
> do commit  or optimize, the setCommand method initializes the params so no 
> NPE is thrown. 
> {code}
> @Override
>   protected HttpRequestBase createMethod(final SolrRequest request, String 
> collection) throws IOException, SolrServerException {
> SolrParams params = request.getParams();
> if (params.getParams(DELEGATION_TOKEN_PARAM) != null) {
>   throw new IllegalArgumentException(DELEGATION_TOKEN_PARAM + " parameter 
> not supported");
> }
> return super.createMethod(request, collection);
>   }
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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



[jira] [Updated] (SOLR-13921) Processing UpdateRequest with delegation token throws NullPointerException

2019-11-13 Thread Kevin Risden (Jira)


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

Kevin Risden updated SOLR-13921:

Fix Version/s: 8.4

> Processing UpdateRequest with delegation token throws NullPointerException
> --
>
> Key: SOLR-13921
> URL: https://issues.apache.org/jira/browse/SOLR-13921
> Project: Solr
>  Issue Type: Bug
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: SolrJ
>Affects Versions: 7.4, 7.5, 7.6, 7.7, 7.7.1, 7.7.2, 8.0, 8.1, 8.2, 8.3
>Reporter: Istvan Farkas
>Assignee: Kevin Risden
>Priority: Minor
> Fix For: 8.4
>
> Attachments: SOLR-13921.patch
>
>
> When sending UpdateRequests with delegation tokens to Solr using SolrJ, the 
> createMethod of DelegationTokenHttpSolrClient will throw a 
> NullPointerException:
>  
> {code:java}
>   [junit4] ERROR   3.41s | 
> TestSolrCloudWithDelegationTokens.testDelegationTokenSolrClientWithUpdateRequests
>  <<<
>[junit4]> Throwable #1: java.lang.NullPointerException
>[junit4]>  at 
> __randomizedtesting.SeedInfo.seed([B9AE8E4E0CDF1B3D:DBA0B722C813061D]:0)
>[junit4]>  at 
> org.apache.solr.client.solrj.impl.DelegationTokenHttpSolrClient.createMethod(DelegationTokenHttpSolrClient.java:93)
>[junit4]>  at 
> org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:258)
>[junit4]>  at 
> org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:249)
>[junit4]>  at 
> org.apache.solr.cloud.TestSolrCloudWithDelegationTokens.doSolrRequest(TestSolrCloudWithDelegationTokens.java:246)
>[junit4]>  at 
> org.apache.solr.cloud.TestSolrCloudWithDelegationTokens.testDelegationTokenSolrClientWithUpdateRequests(TestSolrCloudWithDelegationTokens.java:477)
>[junit4]>  at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>[junit4]>  at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>[junit4]>  at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>[junit4]>  at 
> java.base/java.lang.reflect.Method.invoke(Method.java:566)
>[junit4]>  at java.base/java.lang.Thread.run(Thread.java:834) 
> {code}
> This happens to all SolrJ clients including the Spark Crunch indexer which 
> use Delegation Tokens and do not specify commit / optimize commands. 
> The cause seems to be a missing null check before dereferencing 'params'. The 
> intention of the code seems to be verifying if the delegation token is passed 
> a parameter of the SolrRequest (which is not supported), however the check 
> fails with NPE if the request has no params at all. For update requests which 
> do commit  or optimize, the setCommand method initializes the params so no 
> NPE is thrown. 
> {code}
> @Override
>   protected HttpRequestBase createMethod(final SolrRequest request, String 
> collection) throws IOException, SolrServerException {
> SolrParams params = request.getParams();
> if (params.getParams(DELEGATION_TOKEN_PARAM) != null) {
>   throw new IllegalArgumentException(DELEGATION_TOKEN_PARAM + " parameter 
> not supported");
> }
> return super.createMethod(request, collection);
>   }
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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



[jira] [Updated] (SOLR-13921) Processing UpdateRequest with delegation token throws NullPointerException

2019-11-13 Thread Kevin Risden (Jira)


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

Kevin Risden updated SOLR-13921:

Affects Version/s: 7.5
   7.6
   7.7
   7.7.1
   7.7.2
   8.0
   8.1
   8.2

> Processing UpdateRequest with delegation token throws NullPointerException
> --
>
> Key: SOLR-13921
> URL: https://issues.apache.org/jira/browse/SOLR-13921
> Project: Solr
>  Issue Type: Bug
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: SolrJ
>Affects Versions: 7.4, 7.5, 7.6, 7.7, 7.7.1, 7.7.2, 8.0, 8.1, 8.2, 8.3
>Reporter: Istvan Farkas
>Assignee: Kevin Risden
>Priority: Minor
> Attachments: SOLR-13921.patch
>
>
> When sending UpdateRequests with delegation tokens to Solr using SolrJ, the 
> createMethod of DelegationTokenHttpSolrClient will throw a 
> NullPointerException:
>  
> {code:java}
>   [junit4] ERROR   3.41s | 
> TestSolrCloudWithDelegationTokens.testDelegationTokenSolrClientWithUpdateRequests
>  <<<
>[junit4]> Throwable #1: java.lang.NullPointerException
>[junit4]>  at 
> __randomizedtesting.SeedInfo.seed([B9AE8E4E0CDF1B3D:DBA0B722C813061D]:0)
>[junit4]>  at 
> org.apache.solr.client.solrj.impl.DelegationTokenHttpSolrClient.createMethod(DelegationTokenHttpSolrClient.java:93)
>[junit4]>  at 
> org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:258)
>[junit4]>  at 
> org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:249)
>[junit4]>  at 
> org.apache.solr.cloud.TestSolrCloudWithDelegationTokens.doSolrRequest(TestSolrCloudWithDelegationTokens.java:246)
>[junit4]>  at 
> org.apache.solr.cloud.TestSolrCloudWithDelegationTokens.testDelegationTokenSolrClientWithUpdateRequests(TestSolrCloudWithDelegationTokens.java:477)
>[junit4]>  at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>[junit4]>  at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>[junit4]>  at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>[junit4]>  at 
> java.base/java.lang.reflect.Method.invoke(Method.java:566)
>[junit4]>  at java.base/java.lang.Thread.run(Thread.java:834) 
> {code}
> This happens to all SolrJ clients including the Spark Crunch indexer which 
> use Delegation Tokens and do not specify commit / optimize commands. 
> The cause seems to be a missing null check before dereferencing 'params'. The 
> intention of the code seems to be verifying if the delegation token is passed 
> a parameter of the SolrRequest (which is not supported), however the check 
> fails with NPE if the request has no params at all. For update requests which 
> do commit  or optimize, the setCommand method initializes the params so no 
> NPE is thrown. 
> {code}
> @Override
>   protected HttpRequestBase createMethod(final SolrRequest request, String 
> collection) throws IOException, SolrServerException {
> SolrParams params = request.getParams();
> if (params.getParams(DELEGATION_TOKEN_PARAM) != null) {
>   throw new IllegalArgumentException(DELEGATION_TOKEN_PARAM + " parameter 
> not supported");
> }
> return super.createMethod(request, collection);
>   }
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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



[jira] [Updated] (SOLR-13921) Processing UpdateRequest with delegation token throws NullPointerException

2019-11-11 Thread Kevin Risden (Jira)


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

Kevin Risden updated SOLR-13921:

Attachment: SOLR-13921.patch

> Processing UpdateRequest with delegation token throws NullPointerException
> --
>
> Key: SOLR-13921
> URL: https://issues.apache.org/jira/browse/SOLR-13921
> Project: Solr
>  Issue Type: Bug
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: SolrJ
>Affects Versions: 7.4, 8.3
>Reporter: Istvan Farkas
>Priority: Minor
> Attachments: SOLR-13921.patch
>
>
> When sending UpdateRequests with delegation tokens to Solr using SolrJ, the 
> createMethod of DelegationTokenHttpSolrClient will throw a 
> NullPointerException:
>  
> {code:java}
>   [junit4] ERROR   3.41s | 
> TestSolrCloudWithDelegationTokens.testDelegationTokenSolrClientWithUpdateRequests
>  <<<
>[junit4]> Throwable #1: java.lang.NullPointerException
>[junit4]>  at 
> __randomizedtesting.SeedInfo.seed([B9AE8E4E0CDF1B3D:DBA0B722C813061D]:0)
>[junit4]>  at 
> org.apache.solr.client.solrj.impl.DelegationTokenHttpSolrClient.createMethod(DelegationTokenHttpSolrClient.java:93)
>[junit4]>  at 
> org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:258)
>[junit4]>  at 
> org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:249)
>[junit4]>  at 
> org.apache.solr.cloud.TestSolrCloudWithDelegationTokens.doSolrRequest(TestSolrCloudWithDelegationTokens.java:246)
>[junit4]>  at 
> org.apache.solr.cloud.TestSolrCloudWithDelegationTokens.testDelegationTokenSolrClientWithUpdateRequests(TestSolrCloudWithDelegationTokens.java:477)
>[junit4]>  at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>[junit4]>  at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>[junit4]>  at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>[junit4]>  at 
> java.base/java.lang.reflect.Method.invoke(Method.java:566)
>[junit4]>  at java.base/java.lang.Thread.run(Thread.java:834) 
> {code}
> This happens to all SolrJ clients including the Spark Crunch indexer which 
> use Delegation Tokens and do not specify commit / optimize commands. 
> The cause seems to be a missing null check before dereferencing 'params'. The 
> intention of the code seems to be verifying if the delegation token is passed 
> a parameter of the SolrRequest (which is not supported), however the check 
> fails with NPE if the request has no params at all. For update requests which 
> do commit  or optimize, the setCommand method initializes the params so no 
> NPE is thrown. 
> {code}
> @Override
>   protected HttpRequestBase createMethod(final SolrRequest request, String 
> collection) throws IOException, SolrServerException {
> SolrParams params = request.getParams();
> if (params.getParams(DELEGATION_TOKEN_PARAM) != null) {
>   throw new IllegalArgumentException(DELEGATION_TOKEN_PARAM + " parameter 
> not supported");
> }
> return super.createMethod(request, collection);
>   }
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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



[jira] [Updated] (SOLR-13921) Processing UpdateRequest with delegation token throws NullPointerException

2019-11-11 Thread Kevin Risden (Jira)


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

Kevin Risden updated SOLR-13921:

Attachment: (was: SOLR-13921.patch)

> Processing UpdateRequest with delegation token throws NullPointerException
> --
>
> Key: SOLR-13921
> URL: https://issues.apache.org/jira/browse/SOLR-13921
> Project: Solr
>  Issue Type: Bug
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: SolrJ
>Affects Versions: 7.4, 8.3
>Reporter: Istvan Farkas
>Priority: Minor
> Attachments: SOLR-13921.patch
>
>
> When sending UpdateRequests with delegation tokens to Solr using SolrJ, the 
> createMethod of DelegationTokenHttpSolrClient will throw a 
> NullPointerException:
>  
> {code:java}
>   [junit4] ERROR   3.41s | 
> TestSolrCloudWithDelegationTokens.testDelegationTokenSolrClientWithUpdateRequests
>  <<<
>[junit4]> Throwable #1: java.lang.NullPointerException
>[junit4]>  at 
> __randomizedtesting.SeedInfo.seed([B9AE8E4E0CDF1B3D:DBA0B722C813061D]:0)
>[junit4]>  at 
> org.apache.solr.client.solrj.impl.DelegationTokenHttpSolrClient.createMethod(DelegationTokenHttpSolrClient.java:93)
>[junit4]>  at 
> org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:258)
>[junit4]>  at 
> org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:249)
>[junit4]>  at 
> org.apache.solr.cloud.TestSolrCloudWithDelegationTokens.doSolrRequest(TestSolrCloudWithDelegationTokens.java:246)
>[junit4]>  at 
> org.apache.solr.cloud.TestSolrCloudWithDelegationTokens.testDelegationTokenSolrClientWithUpdateRequests(TestSolrCloudWithDelegationTokens.java:477)
>[junit4]>  at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>[junit4]>  at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>[junit4]>  at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>[junit4]>  at 
> java.base/java.lang.reflect.Method.invoke(Method.java:566)
>[junit4]>  at java.base/java.lang.Thread.run(Thread.java:834) 
> {code}
> This happens to all SolrJ clients including the Spark Crunch indexer which 
> use Delegation Tokens and do not specify commit / optimize commands. 
> The cause seems to be a missing null check before dereferencing 'params'. The 
> intention of the code seems to be verifying if the delegation token is passed 
> a parameter of the SolrRequest (which is not supported), however the check 
> fails with NPE if the request has no params at all. For update requests which 
> do commit  or optimize, the setCommand method initializes the params so no 
> NPE is thrown. 
> {code}
> @Override
>   protected HttpRequestBase createMethod(final SolrRequest request, String 
> collection) throws IOException, SolrServerException {
> SolrParams params = request.getParams();
> if (params.getParams(DELEGATION_TOKEN_PARAM) != null) {
>   throw new IllegalArgumentException(DELEGATION_TOKEN_PARAM + " parameter 
> not supported");
> }
> return super.createMethod(request, collection);
>   }
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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



[jira] [Updated] (SOLR-13921) Processing UpdateRequest with delegation token throws NullPointerException

2019-11-11 Thread Kevin Risden (Jira)


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

Kevin Risden updated SOLR-13921:

Attachment: (was: 
0001-SOLR-13921-Processing-UpdateRequest-with-delegation-.patch)

> Processing UpdateRequest with delegation token throws NullPointerException
> --
>
> Key: SOLR-13921
> URL: https://issues.apache.org/jira/browse/SOLR-13921
> Project: Solr
>  Issue Type: Bug
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: SolrJ
>Affects Versions: 7.4, 8.3
>Reporter: Istvan Farkas
>Priority: Minor
> Attachments: SOLR-13921.patch
>
>
> When sending UpdateRequests with delegation tokens to Solr using SolrJ, the 
> createMethod of DelegationTokenHttpSolrClient will throw a 
> NullPointerException:
>  
> {code:java}
>   [junit4] ERROR   3.41s | 
> TestSolrCloudWithDelegationTokens.testDelegationTokenSolrClientWithUpdateRequests
>  <<<
>[junit4]> Throwable #1: java.lang.NullPointerException
>[junit4]>  at 
> __randomizedtesting.SeedInfo.seed([B9AE8E4E0CDF1B3D:DBA0B722C813061D]:0)
>[junit4]>  at 
> org.apache.solr.client.solrj.impl.DelegationTokenHttpSolrClient.createMethod(DelegationTokenHttpSolrClient.java:93)
>[junit4]>  at 
> org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:258)
>[junit4]>  at 
> org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:249)
>[junit4]>  at 
> org.apache.solr.cloud.TestSolrCloudWithDelegationTokens.doSolrRequest(TestSolrCloudWithDelegationTokens.java:246)
>[junit4]>  at 
> org.apache.solr.cloud.TestSolrCloudWithDelegationTokens.testDelegationTokenSolrClientWithUpdateRequests(TestSolrCloudWithDelegationTokens.java:477)
>[junit4]>  at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>[junit4]>  at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>[junit4]>  at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>[junit4]>  at 
> java.base/java.lang.reflect.Method.invoke(Method.java:566)
>[junit4]>  at java.base/java.lang.Thread.run(Thread.java:834) 
> {code}
> This happens to all SolrJ clients including the Spark Crunch indexer which 
> use Delegation Tokens and do not specify commit / optimize commands. 
> The cause seems to be a missing null check before dereferencing 'params'. The 
> intention of the code seems to be verifying if the delegation token is passed 
> a parameter of the SolrRequest (which is not supported), however the check 
> fails with NPE if the request has no params at all. For update requests which 
> do commit  or optimize, the setCommand method initializes the params so no 
> NPE is thrown. 
> {code}
> @Override
>   protected HttpRequestBase createMethod(final SolrRequest request, String 
> collection) throws IOException, SolrServerException {
> SolrParams params = request.getParams();
> if (params.getParams(DELEGATION_TOKEN_PARAM) != null) {
>   throw new IllegalArgumentException(DELEGATION_TOKEN_PARAM + " parameter 
> not supported");
> }
> return super.createMethod(request, collection);
>   }
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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



[jira] [Updated] (SOLR-13921) Processing UpdateRequest with delegation token throws NullPointerException

2019-11-11 Thread Istvan Farkas (Jira)


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

Istvan Farkas updated SOLR-13921:
-
Status: Patch Available  (was: Open)

> Processing UpdateRequest with delegation token throws NullPointerException
> --
>
> Key: SOLR-13921
> URL: https://issues.apache.org/jira/browse/SOLR-13921
> Project: Solr
>  Issue Type: Bug
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: SolrJ
>Affects Versions: 7.4, 8.3
>Reporter: Istvan Farkas
>Priority: Minor
> Attachments: 
> 0001-SOLR-13921-Processing-UpdateRequest-with-delegation-.patch, 
> SOLR-13921.patch
>
>
> When sending UpdateRequests with delegation tokens to Solr using SolrJ, the 
> createMethod of DelegationTokenHttpSolrClient will throw a 
> NullPointerException:
>  
> {code:java}
>   [junit4] ERROR   3.41s | 
> TestSolrCloudWithDelegationTokens.testDelegationTokenSolrClientWithUpdateRequests
>  <<<
>[junit4]> Throwable #1: java.lang.NullPointerException
>[junit4]>  at 
> __randomizedtesting.SeedInfo.seed([B9AE8E4E0CDF1B3D:DBA0B722C813061D]:0)
>[junit4]>  at 
> org.apache.solr.client.solrj.impl.DelegationTokenHttpSolrClient.createMethod(DelegationTokenHttpSolrClient.java:93)
>[junit4]>  at 
> org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:258)
>[junit4]>  at 
> org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:249)
>[junit4]>  at 
> org.apache.solr.cloud.TestSolrCloudWithDelegationTokens.doSolrRequest(TestSolrCloudWithDelegationTokens.java:246)
>[junit4]>  at 
> org.apache.solr.cloud.TestSolrCloudWithDelegationTokens.testDelegationTokenSolrClientWithUpdateRequests(TestSolrCloudWithDelegationTokens.java:477)
>[junit4]>  at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>[junit4]>  at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>[junit4]>  at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>[junit4]>  at 
> java.base/java.lang.reflect.Method.invoke(Method.java:566)
>[junit4]>  at java.base/java.lang.Thread.run(Thread.java:834) 
> {code}
> This happens to all SolrJ clients including the Spark Crunch indexer which 
> use Delegation Tokens and do not specify commit / optimize commands. 
> The cause seems to be a missing null check before dereferencing 'params'. The 
> intention of the code seems to be verifying if the delegation token is passed 
> a parameter of the SolrRequest (which is not supported), however the check 
> fails with NPE if the request has no params at all. For update requests which 
> do commit  or optimize, the setCommand method initializes the params so no 
> NPE is thrown. 
> {code}
> @Override
>   protected HttpRequestBase createMethod(final SolrRequest request, String 
> collection) throws IOException, SolrServerException {
> SolrParams params = request.getParams();
> if (params.getParams(DELEGATION_TOKEN_PARAM) != null) {
>   throw new IllegalArgumentException(DELEGATION_TOKEN_PARAM + " parameter 
> not supported");
> }
> return super.createMethod(request, collection);
>   }
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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



[jira] [Updated] (SOLR-13921) Processing UpdateRequest with delegation token throws NullPointerException

2019-11-11 Thread Istvan Farkas (Jira)


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

Istvan Farkas updated SOLR-13921:
-
Attachment: SOLR-13921.patch
0001-SOLR-13921-Processing-UpdateRequest-with-delegation-.patch

> Processing UpdateRequest with delegation token throws NullPointerException
> --
>
> Key: SOLR-13921
> URL: https://issues.apache.org/jira/browse/SOLR-13921
> Project: Solr
>  Issue Type: Bug
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: SolrJ
>Affects Versions: 7.4, 8.3
>Reporter: Istvan Farkas
>Priority: Minor
> Attachments: 
> 0001-SOLR-13921-Processing-UpdateRequest-with-delegation-.patch, 
> SOLR-13921.patch
>
>
> When sending UpdateRequests with delegation tokens to Solr using SolrJ, the 
> createMethod of DelegationTokenHttpSolrClient will throw a 
> NullPointerException:
>  
> {code:java}
>   [junit4] ERROR   3.41s | 
> TestSolrCloudWithDelegationTokens.testDelegationTokenSolrClientWithUpdateRequests
>  <<<
>[junit4]> Throwable #1: java.lang.NullPointerException
>[junit4]>  at 
> __randomizedtesting.SeedInfo.seed([B9AE8E4E0CDF1B3D:DBA0B722C813061D]:0)
>[junit4]>  at 
> org.apache.solr.client.solrj.impl.DelegationTokenHttpSolrClient.createMethod(DelegationTokenHttpSolrClient.java:93)
>[junit4]>  at 
> org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:258)
>[junit4]>  at 
> org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:249)
>[junit4]>  at 
> org.apache.solr.cloud.TestSolrCloudWithDelegationTokens.doSolrRequest(TestSolrCloudWithDelegationTokens.java:246)
>[junit4]>  at 
> org.apache.solr.cloud.TestSolrCloudWithDelegationTokens.testDelegationTokenSolrClientWithUpdateRequests(TestSolrCloudWithDelegationTokens.java:477)
>[junit4]>  at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>[junit4]>  at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>[junit4]>  at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>[junit4]>  at 
> java.base/java.lang.reflect.Method.invoke(Method.java:566)
>[junit4]>  at java.base/java.lang.Thread.run(Thread.java:834) 
> {code}
> This happens to all SolrJ clients including the Spark Crunch indexer which 
> use Delegation Tokens and do not specify commit / optimize commands. 
> The cause seems to be a missing null check before dereferencing 'params'. The 
> intention of the code seems to be verifying if the delegation token is passed 
> a parameter of the SolrRequest (which is not supported), however the check 
> fails with NPE if the request has no params at all. For update requests which 
> do commit  or optimize, the setCommand method initializes the params so no 
> NPE is thrown. 
> {code}
> @Override
>   protected HttpRequestBase createMethod(final SolrRequest request, String 
> collection) throws IOException, SolrServerException {
> SolrParams params = request.getParams();
> if (params.getParams(DELEGATION_TOKEN_PARAM) != null) {
>   throw new IllegalArgumentException(DELEGATION_TOKEN_PARAM + " parameter 
> not supported");
> }
> return super.createMethod(request, collection);
>   }
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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