[jira] [Updated] (SOLR-13921) Processing UpdateRequest with delegation token throws NullPointerException
[ 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
[ 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
[ 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
[ 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
[ 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
[ 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
[ 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
[ 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