[ https://issues.apache.org/jira/browse/SOLR-9399?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15591884#comment-15591884 ]
Jan Høydahl commented on SOLR-9399: ----------------------------------- I tested manually that your fix works, and started carving out a test case, but failed to have the deleteById test fail :( Here was my work-in-progress https://github.com/cominvent/lucene-solr/commit/740c8248fe3ad879b290a97d798468c64ceb68ec I could not even get the add document command to fail > Delete requests do not send credentials & fails for Basic Authentication > ------------------------------------------------------------------------ > > Key: SOLR-9399 > URL: https://issues.apache.org/jira/browse/SOLR-9399 > Project: Solr > Issue Type: Bug > Security Level: Public(Default Security Level. Issues are Public) > Components: SolrJ > Affects Versions: 6.0, 6.0.1, 6.x > Reporter: Susheel Kumar > Labels: security > > The getRoutes(..) func of UpdateRequest do not pass credentials to > LBHttpSolrClient when deleteById is set while for updates it passes the > credentials. See below code snippet > if (deleteById != null) { > > Iterator<Map.Entry<String,Map<String,Object>>> entries = > deleteById.entrySet() > .iterator(); > while (entries.hasNext()) { > > Map.Entry<String,Map<String,Object>> entry = entries.next(); > > String deleteId = entry.getKey(); > Map<String,Object> map = entry.getValue(); > Long version = null; > if (map != null) { > version = (Long) map.get(VER); > } > Slice slice = router.getTargetSlice(deleteId, null, null, null, col); > if (slice == null) { > return null; > } > List<String> urls = urlMap.get(slice.getName()); > if (urls == null) { > return null; > } > String leaderUrl = urls.get(0); > LBHttpSolrClient.Req request = routes.get(leaderUrl); > if (request != null) { > UpdateRequest urequest = (UpdateRequest) request.getRequest(); > urequest.deleteById(deleteId, version); > } else { > UpdateRequest urequest = new UpdateRequest(); > urequest.setParams(params); > urequest.deleteById(deleteId, version); > urequest.setCommitWithin(getCommitWithin()); > request = new LBHttpSolrClient.Req(urequest, urls); > routes.put(leaderUrl, request); > } > } > } -- This message was sent by Atlassian JIRA (v6.3.4#6332) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org