[GitHub] [lucene-solr] jtibshirani removed a comment on pull request #1930: LUCENE-9322: add VectorValues to new Lucene90 codec

2020-10-19 Thread GitBox


jtibshirani removed a comment on pull request #1930:
URL: https://github.com/apache/lucene-solr/pull/1930#issuecomment-711759394


   @msokolov I did a belated review and had some high-level thoughts. Hopefully 
post-commit reviews are still helpful in giving ideas for follow-ups.
   
   > It seems messy to have the ScoringFunction implementation in the main 
VectorValues interface API file. 
   
   It seems like we’re using `ScoreFunction` for two separate use cases:
   1. Configuring the ANN indexing + search strategy (to be introduced later). 
For example, HNSW needs to know up-front what similarity measure to use when 
building the graph.
   2. Providing convenience methods for users that want to incorporate vectors 
into scoring, outside of ANN.
   
   We could think about separating out these cases. Maybe `ScoreFunction` could 
stick closely to case 1 and avoid exposing score implementations. This fits 
well with its role of specifying the ANN index strategy, which might encompass 
other ANN approaches in the future like `KMEANS_EUCLIDEAN`. And for use case 2, 
we could introduce static utility methods like `dotProduct(float[] a, float[] 
b)` ? The ANN implementations would be free to make use of these methods if 
they prove helpful. If we go with this design, perhaps `ScoreFunction` would be 
renamed to something like `SearchStrategy`.
   
   Separately, I wonder if we need to expose a random access interface on the 
public `VectorValues`. When using vectors for scoring, iterator access seems 
sufficient. I’m having trouble thinking of a use for random access outside of 
ANN, and some ANN implementations don’t even need it -- for example most 
k-means and LSH approaches only need forward iteration. Would it make sense to 
keep the `VectorValues` surface area smaller and only provide iterator access? 
Random access could still be supported at a lower level, in a place that's 
available to HNSW. I’m not sure exactly how this would look, perhaps it'd be 
clearer once we see how HNSW will be integrated.



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[GitHub] [lucene-solr] jtibshirani commented on pull request #1930: LUCENE-9322: add VectorValues to new Lucene90 codec

2020-10-19 Thread GitBox


jtibshirani commented on pull request #1930:
URL: https://github.com/apache/lucene-solr/pull/1930#issuecomment-711759394


   @msokolov I did a belated review and had some high-level thoughts. Hopefully 
post-commit reviews are still helpful in giving ideas for follow-ups.
   
   > It seems messy to have the ScoringFunction implementation in the main 
VectorValues interface API file. 
   
   It seems like we’re using `ScoreFunction` for two separate use cases:
   1. Configuring the ANN indexing + search strategy (to be introduced later). 
For example, HNSW needs to know up-front what similarity measure to use when 
building the graph.
   2. Providing convenience methods for users that want to incorporate vectors 
into scoring, outside of ANN.
   
   We could think about separating out these cases. Maybe `ScoreFunction` could 
stick closely to case 1 and avoid exposing score implementations. This fits 
well with its role of specifying the ANN index strategy, which might encompass 
other ANN approaches in the future like `KMEANS_EUCLIDEAN`. And for use case 2, 
we could introduce static utility methods like `dotProduct(float[] a, float[] 
b)` ? The ANN implementations would be free to make use of these methods if 
they prove helpful. If we go with this design, perhaps `ScoreFunction` would be 
renamed to something like `SearchStrategy`.
   
   Separately, I wonder if we need to expose a random access interface on the 
public `VectorValues`. When using vectors for scoring, iterator access seems 
sufficient. I’m having trouble thinking of a use for random access outside of 
ANN, and some ANN implementations don’t even need it -- for example most 
k-means and LSH approaches only need forward iteration. Would it make sense to 
keep the `VectorValues` surface area smaller and only provide iterator access? 
Random access could still be supported at a lower level, in a place that's 
available to HNSW. I’m not sure exactly how this would look, perhaps it'd be 
clearer once we see how HNSW will be integrated.



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[jira] [Commented] (LUCENE-9322) Discussing a unified vectors format API

2020-10-19 Thread Julie Tibshirani (Jira)


[ 
https://issues.apache.org/jira/browse/LUCENE-9322?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216503#comment-17216503
 ] 

Julie Tibshirani commented on LUCENE-9322:
--

Thank @msokolov for the great PR!! I left some belated thoughts on the PR 
regarding ScoreFunction.

> Discussing a unified vectors format API
> ---
>
> Key: LUCENE-9322
> URL: https://issues.apache.org/jira/browse/LUCENE-9322
> Project: Lucene - Core
>  Issue Type: New Feature
>Reporter: Julie Tibshirani
>Priority: Major
> Fix For: master (9.0)
>
>  Time Spent: 6h
>  Remaining Estimate: 0h
>
> Two different approximate nearest neighbor approaches are currently being 
> developed, one based on HNSW (LUCENE-9004) and another based on coarse 
> quantization ([#LUCENE-9136]). Each prototype proposes to add a new format to 
> handle vectors. In LUCENE-9136 we discussed the possibility of a unified API 
> that could support both approaches. The two ANN strategies give different 
> trade-offs in terms of speed, memory, and complexity, and it’s likely that 
> we’ll want to support both. Vector search is also an active research area, 
> and it would be great to be able to prototype and incorporate new approaches 
> without introducing more formats.
> To me it seems like a good time to begin discussing a unified API. The 
> prototype for coarse quantization 
> ([https://github.com/apache/lucene-solr/pull/1314]) could be ready to commit 
> soon (this depends on everyone's feedback of course). The approach is simple 
> and shows solid search performance, as seen 
> [here|https://github.com/apache/lucene-solr/pull/1314#issuecomment-608645326].
>  I think this API discussion is an important step in moving that 
> implementation forward.
> The goals of the API would be
> # Support for storing and retrieving individual float vectors.
> # Support for approximate nearest neighbor search -- given a query vector, 
> return the indexed vectors that are closest to it.



--
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] [Assigned] (SOLR-14944) solr metrics should remove "spins" references

2020-10-19 Thread Andrzej Bialecki (Jira)


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

Andrzej Bialecki reassigned SOLR-14944:
---

Assignee: Andrzej Bialecki

> solr metrics should remove "spins" references
> -
>
> Key: SOLR-14944
> URL: https://issues.apache.org/jira/browse/SOLR-14944
> Project: Solr
>  Issue Type: Improvement
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: metrics
>Affects Versions: master (9.0)
>Reporter: Robert Muir
>Assignee: Andrzej Bialecki
>Priority: Major
> Fix For: master (9.0)
>
>
> The lucene internal IOUtils.spins stuff was exposed in various ways here, in 
> order to not break stuff in LUCENE-9576 I simply wired these apis to 
> {{false}}, but they should probably be removed.



--
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] [Commented] (SOLR-14944) solr metrics should remove "spins" references

2020-10-19 Thread Andrzej Bialecki (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14944?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216524#comment-17216524
 ] 

Andrzej Bialecki commented on SOLR-14944:
-

+1 to remove this in 9.0. I'll also add a deprecation notice in 8x.

> solr metrics should remove "spins" references
> -
>
> Key: SOLR-14944
> URL: https://issues.apache.org/jira/browse/SOLR-14944
> Project: Solr
>  Issue Type: Improvement
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: metrics
>Affects Versions: master (9.0)
>Reporter: Robert Muir
>Assignee: Andrzej Bialecki
>Priority: Major
> Fix For: master (9.0)
>
>
> The lucene internal IOUtils.spins stuff was exposed in various ways here, in 
> order to not break stuff in LUCENE-9576 I simply wired these apis to 
> {{false}}, but they should probably be removed.



--
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] [Commented] (SOLR-14354) HttpShardHandler send requests in async

2020-10-19 Thread Atri Sharma (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14354?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216596#comment-17216596
 ] 

Atri Sharma commented on SOLR-14354:


Where are we with this issue? This is marked as a blocker for 8.7 – is that 
still the case?

> HttpShardHandler send requests in async
> ---
>
> Key: SOLR-14354
> URL: https://issues.apache.org/jira/browse/SOLR-14354
> Project: Solr
>  Issue Type: Improvement
>Reporter: Cao Manh Dat
>Assignee: Cao Manh Dat
>Priority: Blocker
> Fix For: master (9.0), 8.7
>
> Attachments: image-2020-03-23-10-04-08-399.png, 
> image-2020-03-23-10-09-10-221.png, image-2020-03-23-10-12-00-661.png
>
>  Time Spent: 4h
>  Remaining Estimate: 0h
>
> h2. 1. Current approach (problem) of Solr
> Below is the diagram describe the model on how currently handling a request.
> !image-2020-03-23-10-04-08-399.png!
> The main-thread that handles the search requests, will submit n requests (n 
> equals to number of shards) to an executor. So each request will correspond 
> to a thread, after sending a request that thread basically do nothing just 
> waiting for response from other side. That thread will be swapped out and CPU 
> will try to handle another thread (this is called context switch, CPU will 
> save the context of the current thread and switch to another one). When some 
> data (not all) come back, that thread will be called to parsing these data, 
> then it will wait until more data come back. So there will be lots of context 
> switching in CPU. That is quite inefficient on using threads.Basically we 
> want less threads and most of them must busy all the time, because threads 
> are not free as well as context switching. That is the main idea behind 
> everything, like executor
> h2. 2. Async call of Jetty HttpClient
> Jetty HttpClient offers async API like this.
> {code:java}
> httpClient.newRequest("http://domain.com/path";)
> // Add request hooks
> .onRequestQueued(request -> { ... })
> .onRequestBegin(request -> { ... })
> // Add response hooks
> .onResponseBegin(response -> { ... })
> .onResponseHeaders(response -> { ... })
> .onResponseContent((response, buffer) -> { ... })
> .send(result -> { ... }); {code}
> Therefore after calling {{send()}} the thread will return immediately without 
> any block. Then when the client received the header from other side, it will 
> call {{onHeaders()}} listeners. When the client received some {{byte[]}} (not 
> all response) from the data it will call {{onContent(buffer)}} listeners. 
> When everything finished it will call {{onComplete}} listeners. One main 
> thing that will must notice here is all listeners should finish quick, if the 
> listener block, all further data of that request won’t be handled until the 
> listener finish.
> h2. 3. Solution 1: Sending requests async but spin one thread per response
>  Jetty HttpClient already provides several listeners, one of them is 
> InputStreamResponseListener. This is how it is get used
> {code:java}
> InputStreamResponseListener listener = new InputStreamResponseListener();
> client.newRequest(...).send(listener);
> // Wait for the response headers to arrive
> Response response = listener.get(5, TimeUnit.SECONDS);
> if (response.getStatus() == 200) {
>   // Obtain the input stream on the response content
>   try (InputStream input = listener.getInputStream()) {
> // Read the response content
>   }
> } {code}
> In this case, there will be 2 thread
>  * one thread trying to read the response content from InputStream
>  * one thread (this is a short-live task) feeding content to above 
> InputStream whenever some byte[] is available. Note that if this thread 
> unable to feed data into InputStream, this thread will wait.
> By using this one, the model of HttpShardHandler can be written into 
> something like this
> {code:java}
> handler.sendReq(req, (is) -> {
>   executor.submit(() ->
> try (is) {
>   // Read the content from InputStream
> }
>   )
> }) {code}
>  The first diagram will be changed into this
> !image-2020-03-23-10-09-10-221.png!
> Notice that although “sending req to shard1” is wide, it won’t take long time 
> since sending req is a very quick operation. With this operation, handling 
> threads won’t be spin up until first bytes are sent back. Notice that in this 
> approach we still have active threads waiting for more data from InputStream
> h2. 4. Solution 2: Buffering data and handle it inside jetty’s thread.
> Jetty have another listener called BufferingResponseListener. This is how it 
> is get used
> {code:java}
> client.newRequest(...).send(new BufferingResponseListener() {
>   public void onComplete(Result result) {
> try {
>   byte

[jira] [Commented] (SOLR-14067) Deprecate StatelessScriptUpdateProcessor and disabled by default

2020-10-19 Thread Atri Sharma (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14067?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216598#comment-17216598
 ] 

Atri Sharma commented on SOLR-14067:


Is this a 8.7 blocker?

> Deprecate StatelessScriptUpdateProcessor and disabled by default
> 
>
> Key: SOLR-14067
> URL: https://issues.apache.org/jira/browse/SOLR-14067
> Project: Solr
>  Issue Type: Improvement
>Reporter: Ishan Chattopadhyaya
>Priority: Blocker
> Fix For: 8.7
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> We should eliminate all scripting capabilities within Solr. Let us start with 
> the StatelessScriptUpdateProcessor deprecation/removal.



--
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] [Commented] (SOLR-13973) Deprecate Tika

2020-10-19 Thread Atri Sharma (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-13973?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216597#comment-17216597
 ] 

Atri Sharma commented on SOLR-13973:


Do we want to treat this as. a blocker for 8.7?

> Deprecate Tika
> --
>
> Key: SOLR-13973
> URL: https://issues.apache.org/jira/browse/SOLR-13973
> Project: Solr
>  Issue Type: Improvement
>Reporter: Ishan Chattopadhyaya
>Priority: Blocker
> Fix For: 8.7
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Solr's primary responsibility should be to focus on search and scalability. 
> Having to deal with the problems (CVEs) of Velocity, Tika etc. can slow us 
> down. I propose that we deprecate it going forward.
> Tika can be run outside Solr. Going forward, if someone wants to use these, 
> it should be possible to bring them into third party packages and installed 
> via package manager.
> Plan is to just to throw warnings in logs and add deprecation notes in 
> reference guide for now. Removal can be done in 9.0.



--
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] [Commented] (SOLR-11611) Starting Solr using solr.cmd fails under Windows, when the path contains a parenthesis character

2020-10-19 Thread Atri Sharma (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-11611?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216599#comment-17216599
 ] 

Atri Sharma commented on SOLR-11611:


Whats the status of this? Is this a 8.7 blocker?

> Starting Solr using solr.cmd fails under Windows, when the path contains a 
> parenthesis character
> 
>
> Key: SOLR-11611
> URL: https://issues.apache.org/jira/browse/SOLR-11611
> Project: Solr
>  Issue Type: Bug
>  Components: scripts and tools, SolrCLI
>Affects Versions: 7.1, 7.4
> Environment: Microsoft Windows [Version 10.0.15063]
> java version "1.8.0_144"
> Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
> Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)
>Reporter: Jakob Furrer
>Priority: Blocker
> Fix For: 8.7
>
> Attachments: SOLR-11611.patch, SOLR-11611.patch
>
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> Starting Solr using solr.cli fails in Windows, when the path contains spaces.
> Use the following example to reproduce the error:
> {quote}C:\>c:
> C:\>cd "C:\Program Files (x86)\Company Name\ProductName Solr\bin"
> C:\Program Files (x86)\Company Name\ProductName Solr\bin>dir
>  Volume in Laufwerk C: hat keine Bezeichnung.
>  Volumeseriennummer: 8207-3B8B
>  Verzeichnis von C:\Program Files (x86)\Company Name\ProductName Solr\bin
> 06.11.2017  15:52  .
> 06.11.2017  15:52  ..
> 06.11.2017  15:39  init.d
> 03.11.2017  17:32 8 209 post
> 03.11.2017  17:3275 963 solr
> 06.11.2017  14:2469 407 solr.cmd
>3 Datei(en),153 579 Bytes
>3 Verzeichnis(se), 51 191 619 584 Bytes frei
> C:\Program Files (x86)\Company Name\ProductName Solr\bin>solr.cmd start
> *"\Company" kann syntaktisch an dieser Stelle nicht verarbeitet werden.*
> C:\Program Files (x86)\Company Name\ProductName Solr\bin>{quote}



--
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



[GitHub] [lucene-solr] shalinmangar opened a new pull request #2004: SOLR-14942: Reduce leader election time on node shutdown

2020-10-19 Thread GitBox


shalinmangar opened a new pull request #2004:
URL: https://github.com/apache/lucene-solr/pull/2004


   This PR is based on the work of @CaoManhDat 
   
   # Description
   
   The shutdown process waits for all replicas/cores to be closed before 
removing the election node of the leader. This can take some time due to index 
flush or merge activities on the leader cores and delays new leaders from being 
elected. This leads to long gap of time during which indexing requests fail.
   
   # Solution
   
   This PR introduces a Phaser that registers and deregisters all update 
requests. The shutdown process pauses indexing requests, waits for all 
in-flight indexing requests to complete, removes election nodes (thus 
triggering leader election) and then closes all replicas.
   
   # Tests
   
   Since this PR makes changes to Solr's shutdown process, it is difficult to 
write a unit/integration tests inside Solr itself. This was tested by creating 
a test harness outside of Solr. The steps were:
   - Create a Collection with 1 shard, 3 replicas
   - Do heavy indexing when all replicas are ACTIVE
   - Shut down the leader node
   - Measure the leaderless time (time during which there is no live/active 
leader)
   
   
   Before the patch | After the patch
   -- | --
   Shutting down time: 100ms Leader election: 46s | Shutting down time: 12s 
Leader election: 3s
   Shutting down time: 37s Leader election: 3s | Shutting down time: 31s Leader 
election: 3s
   Shutting down time: 200ms Leader election: 17s | Shutting down time: 100ms 
Leader election: 3s
   Shutting down time: 200ms Leader election: 27s | Shutting down time: 4s 
Leader election: 3s
   
   Since the patch introduces waiting for all updates to finish before giving 
up the leadership so the shut down time gets increased on average, but also it 
makes leader election more stable and improves consistency.
   
   # Checklist
   
   Please review the following and check all that apply:
   
   - [X] I have reviewed the guidelines for [How to 
Contribute](https://wiki.apache.org/solr/HowToContribute) and my code conforms 
to the standards described there to the best of my ability.
   - [X] I have created a Jira issue and added the issue ID to my pull request 
title.
   - [ ] I have given Solr maintainers 
[access](https://help.github.com/en/articles/allowing-changes-to-a-pull-request-branch-created-from-a-fork)
 to contribute to my PR branch. (optional but recommended)
   - [X] I have developed this patch against the `master` branch.
   - [X] I have run `./gradlew check`.
   - [ ] I have added tests for my changes.
   - [ ] I have added documentation for the [Ref 
Guide](https://github.com/apache/lucene-solr/tree/master/solr/solr-ref-guide) 
(for Solr changes only).
   



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[jira] [Commented] (SOLR-14944) solr metrics should remove "spins" references

2020-10-19 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14944?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216630#comment-17216630
 ] 

ASF subversion and git services commented on SOLR-14944:


Commit 54703128e0039e832e2c36407a0480caf8a0fe4e in lucene-solr's branch 
refs/heads/branch_8_7 from Andrzej Bialecki
[ https://gitbox.apache.org/repos/asf?p=lucene-solr.git;h=5470312 ]

SOLR-14944: Add a note about the removal of spinning disk detection and the
corresponding metrics.


> solr metrics should remove "spins" references
> -
>
> Key: SOLR-14944
> URL: https://issues.apache.org/jira/browse/SOLR-14944
> Project: Solr
>  Issue Type: Improvement
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: metrics
>Affects Versions: master (9.0)
>Reporter: Robert Muir
>Assignee: Andrzej Bialecki
>Priority: Major
> Fix For: master (9.0)
>
>
> The lucene internal IOUtils.spins stuff was exposed in various ways here, in 
> order to not break stuff in LUCENE-9576 I simply wired these apis to 
> {{false}}, but they should probably be removed.



--
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] [Commented] (SOLR-14944) solr metrics should remove "spins" references

2020-10-19 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14944?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216629#comment-17216629
 ] 

ASF subversion and git services commented on SOLR-14944:


Commit 5fcae9bb2170f3a7267f4bc56fedd8a56021208d in lucene-solr's branch 
refs/heads/branch_8x from Andrzej Bialecki
[ https://gitbox.apache.org/repos/asf?p=lucene-solr.git;h=5fcae9b ]

SOLR-14944: Add a note about the removal of spinning disk detection and the
corresponding metrics.


> solr metrics should remove "spins" references
> -
>
> Key: SOLR-14944
> URL: https://issues.apache.org/jira/browse/SOLR-14944
> Project: Solr
>  Issue Type: Improvement
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: metrics
>Affects Versions: master (9.0)
>Reporter: Robert Muir
>Assignee: Andrzej Bialecki
>Priority: Major
> Fix For: master (9.0)
>
>
> The lucene internal IOUtils.spins stuff was exposed in various ways here, in 
> order to not break stuff in LUCENE-9576 I simply wired these apis to 
> {{false}}, but they should probably be removed.



--
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



[GitHub] [lucene-solr] mocobeta commented on a change in pull request #2000: LUCENE-9318: Clean up package name conflicts for backward-codecs

2020-10-19 Thread GitBox


mocobeta commented on a change in pull request #2000:
URL: https://github.com/apache/lucene-solr/pull/2000#discussion_r507672358



##
File path: lucene/core/src/java/org/apache/lucene/index/IndexUpgrader.java
##
@@ -77,9 +77,10 @@ private static void printUsage() {
   public static void main(String[] args) throws IOException {
 parseArgs(args).upgrade();
   }
-  
+
+  /** Parse arguments. */
   @SuppressForbidden(reason = "System.out required: command line tool")
-  static IndexUpgrader parseArgs(String[] args) throws IOException {
+  public static IndexUpgrader parseArgs(String[] args) throws IOException {

Review comment:
   fixed the test and reverted the change for IndexUpgrader. 
https://github.com/apache/lucene-solr/pull/2000/commits/2b9c1bfbd7ca589a297813938dbbe96472e27ad0





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[jira] [Commented] (SOLR-14944) solr metrics should remove "spins" references

2020-10-19 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14944?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216651#comment-17216651
 ] 

ASF subversion and git services commented on SOLR-14944:


Commit 9ab9d208c7272126d76cf72d6a642bb0f97e0c35 in lucene-solr's branch 
refs/heads/master from Andrzej Bialecki
[ https://gitbox.apache.org/repos/asf?p=lucene-solr.git;h=9ab9d20 ]

SOLR-14944: Remove the "spins" metrics.


> solr metrics should remove "spins" references
> -
>
> Key: SOLR-14944
> URL: https://issues.apache.org/jira/browse/SOLR-14944
> Project: Solr
>  Issue Type: Improvement
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: metrics
>Affects Versions: master (9.0)
>Reporter: Robert Muir
>Assignee: Andrzej Bialecki
>Priority: Major
> Fix For: master (9.0)
>
>
> The lucene internal IOUtils.spins stuff was exposed in various ways here, in 
> order to not break stuff in LUCENE-9576 I simply wired these apis to 
> {{false}}, but they should probably be removed.



--
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] [Resolved] (SOLR-14944) solr metrics should remove "spins" references

2020-10-19 Thread Andrzej Bialecki (Jira)


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

Andrzej Bialecki resolved SOLR-14944.
-
Fix Version/s: 8.7
   Resolution: Fixed

> solr metrics should remove "spins" references
> -
>
> Key: SOLR-14944
> URL: https://issues.apache.org/jira/browse/SOLR-14944
> Project: Solr
>  Issue Type: Improvement
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: metrics
>Affects Versions: master (9.0)
>Reporter: Robert Muir
>Assignee: Andrzej Bialecki
>Priority: Major
> Fix For: master (9.0), 8.7
>
>
> The lucene internal IOUtils.spins stuff was exposed in various ways here, in 
> order to not break stuff in LUCENE-9576 I simply wired these apis to 
> {{false}}, but they should probably be removed.



--
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] [Commented] (LUCENE-9542) Score returned in search request is original score and not reranked score

2020-10-19 Thread Krishan (Jira)


[ 
https://issues.apache.org/jira/browse/LUCENE-9542?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216661#comment-17216661
 ] 

Krishan commented on LUCENE-9542:
-

Hey [~cpoerschke], This was happening on the LTR reranker when "sort" is 
present in the request. 

[http://localhost:8983/solr/techproducts/query?q=test&rq=%7B!ltr%20model=myModel%20reRankDocs=100%7D&fl=id,price,score,%5Bfeatures%5D&sort=price%20desc]

The features and models are provided from 
[https://lucene.apache.org/solr/guide/6_6/learning-to-rank.html] 


Unfortunately, I am not able to reproduce right now (so could have been a 
different request structure) but I remember that if cmd.getSort() = null (which 
happens when "sort" is absent in request) the score returned is the reranked 
score. But if cmd.getSort() != null, the score returned is the original score. 


Root cause looked to me that "query" variable is a boolean query where as 
cmd.getQuery() is a type of RankQuery (and RankQuery is explicitly skipped in 
this condition). 

 

If this info is not enough, I can debug further to try to reproduce again and 
provide exact query on the example data. 

> Score returned in search request is original score and not reranked score
> -
>
> Key: LUCENE-9542
> URL: https://issues.apache.org/jira/browse/LUCENE-9542
> Project: Lucene - Core
>  Issue Type: Bug
>Affects Versions: 8.0
>Reporter: Krishan
>Priority: Major
>
> Score returned in search request is original score and not reranked score 
> post the changes in https://issues.apache.org/jira/browse/LUCENE-8412.
> Commit - 
> [https://github.com/apache/lucene-solr/commit/55bfadbce115a825a75686fe0bfe71406bc3ee44#diff-4e354f104ed52bd7f620b0c05ae8467d]
> Specifically - 
> if (cmd.getSort() != null && query instanceof RankQuery == false && 
> (cmd.getFlags() & GET_SCORES) != 0) {
>     TopFieldCollector.populateScores(topDocs.scoreDocs, this, query);
> }
> in SolrIndexSearcher.java recomputes the score but outputs only the original 
> score and not the reranked score.
>  
> The issue is cmd.getQuery() is a type of RankQuery but the "query" variable 
> is a boolean query and probably replacing query with cmd.getQuery() should be 
> the right fix for this so that the score is not overriden for rerank queries
>  



--
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] [Commented] (SOLR-14067) Deprecate StatelessScriptUpdateProcessor and disabled by default

2020-10-19 Thread David Eric Pugh (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14067?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216660#comment-17216660
 ] 

David Eric Pugh commented on SOLR-14067:


I'm not sure that this is Blocker for 8.7, since we haven't started it yet.   
Still very interested in seeing it become a proper Package for Solr!

> Deprecate StatelessScriptUpdateProcessor and disabled by default
> 
>
> Key: SOLR-14067
> URL: https://issues.apache.org/jira/browse/SOLR-14067
> Project: Solr
>  Issue Type: Improvement
>Reporter: Ishan Chattopadhyaya
>Priority: Blocker
> Fix For: 8.7
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> We should eliminate all scripting capabilities within Solr. Let us start with 
> the StatelessScriptUpdateProcessor deprecation/removal.



--
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] [Commented] (SOLR-14067) Deprecate StatelessScriptUpdateProcessor and disabled by default

2020-10-19 Thread David Eric Pugh (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14067?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216663#comment-17216663
 ] 

David Eric Pugh commented on SOLR-14067:


Reading back, I see that the plan is to move it over to /contrib, versus a 
totally seperate project.   That seems more doable, and I'll see if I can take 
a whack at that for 8.8 or 9!   If we move it to a /contrib project, then it 
isn't actually "Deprecated" right?   It just isn't available to Solr without 
you adding it explicitly, correct?

> Deprecate StatelessScriptUpdateProcessor and disabled by default
> 
>
> Key: SOLR-14067
> URL: https://issues.apache.org/jira/browse/SOLR-14067
> Project: Solr
>  Issue Type: Improvement
>Reporter: Ishan Chattopadhyaya
>Priority: Blocker
> Fix For: 8.7
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> We should eliminate all scripting capabilities within Solr. Let us start with 
> the StatelessScriptUpdateProcessor deprecation/removal.



--
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



[GitHub] [lucene-solr] msokolov commented on pull request #1930: LUCENE-9322: add VectorValues to new Lucene90 codec

2020-10-19 Thread GitBox


msokolov commented on pull request #1930:
URL: https://github.com/apache/lucene-solr/pull/1930#issuecomment-712104682


   @jtibshirani I am in sympathy with your points; the scoring implementations 
don't really belong in VectorValues which is more of an abstract interface 
otherwise, and random-access API should really be an internal detail of the 
HNSW implementation. I did fiddle with ideas for hiding the RandomAccess API 
but see my comments about visibility in the thread above; I'm not yet sure what 
the best way is. Probably it will be easiest to address these as part of the 
HNSW patch, as you say, but if you have specific ideas, please feel free to 
post a PR!



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[GitHub] [lucene-solr] epugh merged pull request #1999: SOLR-14943 Rework Monitoring Solr with Prometheus and Grafana ref guide to be clearer

2020-10-19 Thread GitBox


epugh merged pull request #1999:
URL: https://github.com/apache/lucene-solr/pull/1999


   



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[jira] [Commented] (SOLR-14943) Monitoring Solr with Prometheus and Grafana Ref Guide Page Needs Updates!

2020-10-19 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14943?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216664#comment-17216664
 ] 

ASF subversion and git services commented on SOLR-14943:


Commit 43edf379c3403bc853715c89e705cd3b4af9ecea in lucene-solr's branch 
refs/heads/master from Eric Pugh
[ https://gitbox.apache.org/repos/asf?p=lucene-solr.git;h=43edf37 ]

SOLR-14943 Rework Monitoring Solr with Prometheus and Grafana ref guide page to 
be clearer (#1999)

* fix some errors in the doc to match reality

* bit more introductory text, and fix the embedded zk port

* add sample image and a tip on directly importing from grafana.com

* per discussion on github issue, this is no longer experimental contrib

> Monitoring Solr with Prometheus and Grafana Ref Guide Page Needs Updates!
> -
>
> Key: SOLR-14943
> URL: https://issues.apache.org/jira/browse/SOLR-14943
> Project: Solr
>  Issue Type: Improvement
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: documentation
>Affects Versions: 8.7
>Reporter: David Eric Pugh
>Assignee: David Eric Pugh
>Priority: Minor
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> I am learning by following the refguide page Monitoring Solr with Prometheus 
> and Grafana, and it needs some updates based on my learning from a pretty 
> novice level about Prometheus and Grafana!  There are some incorrect ports in 
> the example commands, and or some paths that need updating that tripped me 
> up, and some transitions between sections would help onboard the next person.
> For example, it a LONG time to figure out that I needed to run a Prometheus 
> server as well as grafana as well as the exporter process ;-)



--
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] [Commented] (SOLR-14943) Monitoring Solr with Prometheus and Grafana Ref Guide Page Needs Updates!

2020-10-19 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14943?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216665#comment-17216665
 ] 

ASF subversion and git services commented on SOLR-14943:


Commit 6f646f343fb809839f22764f2152bcf7c645db89 in lucene-solr's branch 
refs/heads/branch_8x from Eric Pugh
[ https://gitbox.apache.org/repos/asf?p=lucene-solr.git;h=6f646f3 ]

SOLR-14943 Rework Monitoring Solr with Prometheus and Grafana ref guide page to 
be clearer (#1999)

* fix some errors in the doc to match reality

* bit more introductory text, and fix the embedded zk port

* add sample image and a tip on directly importing from grafana.com

* per discussion on github issue, this is no longer experimental contrib

> Monitoring Solr with Prometheus and Grafana Ref Guide Page Needs Updates!
> -
>
> Key: SOLR-14943
> URL: https://issues.apache.org/jira/browse/SOLR-14943
> Project: Solr
>  Issue Type: Improvement
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: documentation
>Affects Versions: 8.7
>Reporter: David Eric Pugh
>Assignee: David Eric Pugh
>Priority: Minor
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> I am learning by following the refguide page Monitoring Solr with Prometheus 
> and Grafana, and it needs some updates based on my learning from a pretty 
> novice level about Prometheus and Grafana!  There are some incorrect ports in 
> the example commands, and or some paths that need updating that tripped me 
> up, and some transitions between sections would help onboard the next person.
> For example, it a LONG time to figure out that I needed to run a Prometheus 
> server as well as grafana as well as the exporter process ;-)



--
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] [Commented] (SOLR-14943) Monitoring Solr with Prometheus and Grafana Ref Guide Page Needs Updates!

2020-10-19 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14943?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216667#comment-17216667
 ] 

ASF subversion and git services commented on SOLR-14943:


Commit 4c8b71d1bf5c7747aa1f77013a4de374c7fb74a4 in lucene-solr's branch 
refs/heads/branch_8_7 from Eric Pugh
[ https://gitbox.apache.org/repos/asf?p=lucene-solr.git;h=4c8b71d ]

SOLR-14943 Rework Monitoring Solr with Prometheus and Grafana ref guide page to 
be clearer (#1999)

* fix some errors in the doc to match reality

* bit more introductory text, and fix the embedded zk port

* add sample image and a tip on directly importing from grafana.com

* per discussion on github issue, this is no longer experimental contrib

> Monitoring Solr with Prometheus and Grafana Ref Guide Page Needs Updates!
> -
>
> Key: SOLR-14943
> URL: https://issues.apache.org/jira/browse/SOLR-14943
> Project: Solr
>  Issue Type: Improvement
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: documentation
>Affects Versions: 8.7
>Reporter: David Eric Pugh
>Assignee: David Eric Pugh
>Priority: Minor
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> I am learning by following the refguide page Monitoring Solr with Prometheus 
> and Grafana, and it needs some updates based on my learning from a pretty 
> novice level about Prometheus and Grafana!  There are some incorrect ports in 
> the example commands, and or some paths that need updating that tripped me 
> up, and some transitions between sections would help onboard the next person.
> For example, it a LONG time to figure out that I needed to run a Prometheus 
> server as well as grafana as well as the exporter process ;-)



--
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] [Resolved] (SOLR-14943) Monitoring Solr with Prometheus and Grafana Ref Guide Page Needs Updates!

2020-10-19 Thread David Eric Pugh (Jira)


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

David Eric Pugh resolved SOLR-14943.

Fix Version/s: 8.7
   Resolution: Fixed

> Monitoring Solr with Prometheus and Grafana Ref Guide Page Needs Updates!
> -
>
> Key: SOLR-14943
> URL: https://issues.apache.org/jira/browse/SOLR-14943
> Project: Solr
>  Issue Type: Improvement
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: documentation
>Affects Versions: 8.7
>Reporter: David Eric Pugh
>Assignee: David Eric Pugh
>Priority: Minor
> Fix For: 8.7
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> I am learning by following the refguide page Monitoring Solr with Prometheus 
> and Grafana, and it needs some updates based on my learning from a pretty 
> novice level about Prometheus and Grafana!  There are some incorrect ports in 
> the example commands, and or some paths that need updating that tripped me 
> up, and some transitions between sections would help onboard the next person.
> For example, it a LONG time to figure out that I needed to run a Prometheus 
> server as well as grafana as well as the exporter process ;-)



--
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



[GitHub] [lucene-solr] mocobeta commented on pull request #2000: LUCENE-9318: Clean up package name conflicts for backward-codecs

2020-10-19 Thread GitBox


mocobeta commented on pull request #2000:
URL: https://github.com/apache/lucene-solr/pull/2000#issuecomment-712117730


   Thanks guys for review.
   I merged the latest master and resolved conflicts (had a bit trouble 
though...)
   
   I have checked the changes again whether there is no unexpected 
modifications. I'll merge it soon after the checks by Github action are done. 
If any follow-ups are needed, I'll catch them later.



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[jira] [Commented] (SOLR-14067) Deprecate StatelessScriptUpdateProcessor and disabled by default

2020-10-19 Thread David Smiley (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14067?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216676#comment-17216676
 ] 

David Smiley commented on SOLR-14067:
-

Moving to "contrib" makes sense to me.  It's useful and committers like me want 
to maintain it.  Correct, that "moving" (esp. to contrib) is not "deprecating". 
 I wish we would not use the "deprecated" word to refer to moving to 3rd party 
package either, but that's not happening here any way.

> Deprecate StatelessScriptUpdateProcessor and disabled by default
> 
>
> Key: SOLR-14067
> URL: https://issues.apache.org/jira/browse/SOLR-14067
> Project: Solr
>  Issue Type: Improvement
>Reporter: Ishan Chattopadhyaya
>Priority: Blocker
> Fix For: 8.7
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> We should eliminate all scripting capabilities within Solr. Let us start with 
> the StatelessScriptUpdateProcessor deprecation/removal.



--
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] [Commented] (SOLR-14354) HttpShardHandler send requests in async

2020-10-19 Thread David Smiley (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14354?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216677#comment-17216677
 ] 

David Smiley commented on SOLR-14354:
-

What's blocking is that it needs to be reverted from 8.7.  [~caomanhdat] shall 
you?

> HttpShardHandler send requests in async
> ---
>
> Key: SOLR-14354
> URL: https://issues.apache.org/jira/browse/SOLR-14354
> Project: Solr
>  Issue Type: Improvement
>Reporter: Cao Manh Dat
>Assignee: Cao Manh Dat
>Priority: Blocker
> Fix For: master (9.0), 8.7
>
> Attachments: image-2020-03-23-10-04-08-399.png, 
> image-2020-03-23-10-09-10-221.png, image-2020-03-23-10-12-00-661.png
>
>  Time Spent: 4h
>  Remaining Estimate: 0h
>
> h2. 1. Current approach (problem) of Solr
> Below is the diagram describe the model on how currently handling a request.
> !image-2020-03-23-10-04-08-399.png!
> The main-thread that handles the search requests, will submit n requests (n 
> equals to number of shards) to an executor. So each request will correspond 
> to a thread, after sending a request that thread basically do nothing just 
> waiting for response from other side. That thread will be swapped out and CPU 
> will try to handle another thread (this is called context switch, CPU will 
> save the context of the current thread and switch to another one). When some 
> data (not all) come back, that thread will be called to parsing these data, 
> then it will wait until more data come back. So there will be lots of context 
> switching in CPU. That is quite inefficient on using threads.Basically we 
> want less threads and most of them must busy all the time, because threads 
> are not free as well as context switching. That is the main idea behind 
> everything, like executor
> h2. 2. Async call of Jetty HttpClient
> Jetty HttpClient offers async API like this.
> {code:java}
> httpClient.newRequest("http://domain.com/path";)
> // Add request hooks
> .onRequestQueued(request -> { ... })
> .onRequestBegin(request -> { ... })
> // Add response hooks
> .onResponseBegin(response -> { ... })
> .onResponseHeaders(response -> { ... })
> .onResponseContent((response, buffer) -> { ... })
> .send(result -> { ... }); {code}
> Therefore after calling {{send()}} the thread will return immediately without 
> any block. Then when the client received the header from other side, it will 
> call {{onHeaders()}} listeners. When the client received some {{byte[]}} (not 
> all response) from the data it will call {{onContent(buffer)}} listeners. 
> When everything finished it will call {{onComplete}} listeners. One main 
> thing that will must notice here is all listeners should finish quick, if the 
> listener block, all further data of that request won’t be handled until the 
> listener finish.
> h2. 3. Solution 1: Sending requests async but spin one thread per response
>  Jetty HttpClient already provides several listeners, one of them is 
> InputStreamResponseListener. This is how it is get used
> {code:java}
> InputStreamResponseListener listener = new InputStreamResponseListener();
> client.newRequest(...).send(listener);
> // Wait for the response headers to arrive
> Response response = listener.get(5, TimeUnit.SECONDS);
> if (response.getStatus() == 200) {
>   // Obtain the input stream on the response content
>   try (InputStream input = listener.getInputStream()) {
> // Read the response content
>   }
> } {code}
> In this case, there will be 2 thread
>  * one thread trying to read the response content from InputStream
>  * one thread (this is a short-live task) feeding content to above 
> InputStream whenever some byte[] is available. Note that if this thread 
> unable to feed data into InputStream, this thread will wait.
> By using this one, the model of HttpShardHandler can be written into 
> something like this
> {code:java}
> handler.sendReq(req, (is) -> {
>   executor.submit(() ->
> try (is) {
>   // Read the content from InputStream
> }
>   )
> }) {code}
>  The first diagram will be changed into this
> !image-2020-03-23-10-09-10-221.png!
> Notice that although “sending req to shard1” is wide, it won’t take long time 
> since sending req is a very quick operation. With this operation, handling 
> threads won’t be spin up until first bytes are sent back. Notice that in this 
> approach we still have active threads waiting for more data from InputStream
> h2. 4. Solution 2: Buffering data and handle it inside jetty’s thread.
> Jetty have another listener called BufferingResponseListener. This is how it 
> is get used
> {code:java}
> client.newRequest(...).send(new BufferingResponseListener() {
>   public void onComplete(Result result) {
> try {
>   byte[] res

[GitHub] [lucene-solr] mocobeta merged pull request #2000: LUCENE-9318: Clean up package name conflicts for backward-codecs

2020-10-19 Thread GitBox


mocobeta merged pull request #2000:
URL: https://github.com/apache/lucene-solr/pull/2000


   



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[jira] [Commented] (LUCENE-9318) Fix Codec API to not rely on package-private classes as part of changes to support java module system

2020-10-19 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/LUCENE-9318?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216679#comment-17216679
 ] 

ASF subversion and git services commented on LUCENE-9318:
-

Commit 44c1bd42c577e32b29032c8fb4b7e64729d4623b in lucene-solr's branch 
refs/heads/master from Tomoko Uchida
[ https://gitbox.apache.org/repos/asf?p=lucene-solr.git;h=44c1bd4 ]

LUCENE-9318: Clean up package name conflicts for backward-codecs (#2000)



> Fix Codec API to not rely on package-private classes as part of changes to 
> support java module system
> -
>
> Key: LUCENE-9318
> URL: https://issues.apache.org/jira/browse/LUCENE-9318
> Project: Lucene - Core
>  Issue Type: Improvement
>  Components: core/other
>Affects Versions: master (9.0)
>Reporter: David Ryan
>Priority: Major
>  Labels: build, features
>  Time Spent: 1.5h
>  Remaining Estimate: 0h
>
> To allow Lucene to be modularised with Java module system there are a few 
> preparatory tasks to be completed prior to this being possible. These are 
> detailed by Uwe on the mailing list here:
> [http://mail-archives.apache.org/mod_mbox/lucene-dev/202004.mbox/%3c0a5e01d60ff2$563f9c80$02bed580$@thetaphi.de%3e]
>  
> This task is:
> {quote}Fix Codec API to not rely on package-private classes, so we can have a 
> completely public API with abstract classes for codecs, so stuff in 
> backwards-codecs does not need to have access to package private stuff in 
> core.
> {quote}
>  



--
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



[GitHub] [lucene-solr] janhoy merged pull request #1986: SOLR-14936: Fixed Grafana dashboard filters

2020-10-19 Thread GitBox


janhoy merged pull request #1986:
URL: https://github.com/apache/lucene-solr/pull/1986


   



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[jira] [Commented] (SOLR-14936) Grafana dashboard filters for collection, shard, replica, core not working

2020-10-19 Thread Jira


[ 
https://issues.apache.org/jira/browse/SOLR-14936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216693#comment-17216693
 ] 

Jan Høydahl commented on SOLR-14936:


Thanks for the review Eric - I merged to master, will backport to 8.7 once I 
get RM permission.

> Grafana dashboard filters for collection, shard, replica, core not working
> --
>
> Key: SOLR-14936
> URL: https://issues.apache.org/jira/browse/SOLR-14936
> Project: Solr
>  Issue Type: Bug
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: contrib - prometheus-exporter
>Reporter: Jan Høydahl
>Assignee: Jan Høydahl
>Priority: Major
>  Labels: grafana, prometheus
> Attachments: image-2020-10-15-15-33-22-332.png
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> !image-2020-10-15-15-33-22-332.png!
> [https://lucene.apache.org/solr/guide/8_6/monitoring-solr-with-prometheus-and-grafana.html#sample-grafana-dashboard]
>  
> On top of the Grafana dashboard for the Prometheus Exporter, there are some 
> drop downs intended to filter the graphs. Only the {{zk_host}} and 
> {{base_url}} dropdowns seem to work. For the collection, shard, replicas and 
> core, they only list "All" value.
> Investigation showed that the dashboard was never really completed. Grafana 
> template variable definitions were mostly wrong (using {{=}} instead of 
> {{=~)}}, and lots of core graph definitions only filtered on {{base_url}}, 
> not all the others.
>  



--
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] [Commented] (SOLR-14936) Grafana dashboard filters for collection, shard, replica, core not working

2020-10-19 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216691#comment-17216691
 ] 

ASF subversion and git services commented on SOLR-14936:


Commit 3bc873e6d403ad2ebd69a3050712cc8cac967241 in lucene-solr's branch 
refs/heads/master from Jan Høydahl
[ https://gitbox.apache.org/repos/asf?p=lucene-solr.git;h=3bc873e ]

SOLR-14936: Fixed Grafana dashboard filters for collection, shard, replica and 
core (#1986)



> Grafana dashboard filters for collection, shard, replica, core not working
> --
>
> Key: SOLR-14936
> URL: https://issues.apache.org/jira/browse/SOLR-14936
> Project: Solr
>  Issue Type: Bug
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: contrib - prometheus-exporter
>Reporter: Jan Høydahl
>Assignee: Jan Høydahl
>Priority: Major
>  Labels: grafana, prometheus
> Attachments: image-2020-10-15-15-33-22-332.png
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> !image-2020-10-15-15-33-22-332.png!
> [https://lucene.apache.org/solr/guide/8_6/monitoring-solr-with-prometheus-and-grafana.html#sample-grafana-dashboard]
>  
> On top of the Grafana dashboard for the Prometheus Exporter, there are some 
> drop downs intended to filter the graphs. Only the {{zk_host}} and 
> {{base_url}} dropdowns seem to work. For the collection, shard, replicas and 
> core, they only list "All" value.
> Investigation showed that the dashboard was never really completed. Grafana 
> template variable definitions were mostly wrong (using {{=}} instead of 
> {{=~)}}, and lots of core graph definitions only filtered on {{base_url}}, 
> not all the others.
>  



--
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] [Commented] (SOLR-13973) Deprecate Tika

2020-10-19 Thread David Smiley (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-13973?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216695#comment-17216695
 ] 

David Smiley commented on SOLR-13973:
-

I don't think we should deprecate this because it is important enough for our 
users.  Telling a user "Deprecated" tells them to use something else, but there 
are no ready-made alternatives.  Two options: SOLR-7632 (external Tika server) 
or moving this to a 3rd party "package" will address the user need.  Tim, if 
you want to do the latter, I can help.

Given that we have an active committer here maintaining 
ExtractingRequestHandler (Tim Allison), I'm not sure why we need to remove it 
from Solr altogether.  My chief complaint is all those JARs adding weight to a 
default distribution, but that's solveable either by SOLR-7632 (which addresses 
the same-JVM issue as well), or by the "slim Solr" contrib proposal of 
Ishan/Noble.

> Deprecate Tika
> --
>
> Key: SOLR-13973
> URL: https://issues.apache.org/jira/browse/SOLR-13973
> Project: Solr
>  Issue Type: Improvement
>Reporter: Ishan Chattopadhyaya
>Priority: Blocker
> Fix For: 8.7
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Solr's primary responsibility should be to focus on search and scalability. 
> Having to deal with the problems (CVEs) of Velocity, Tika etc. can slow us 
> down. I propose that we deprecate it going forward.
> Tika can be run outside Solr. Going forward, if someone wants to use these, 
> it should be possible to bring them into third party packages and installed 
> via package manager.
> Plan is to just to throw warnings in logs and add deprecation notes in 
> reference guide for now. Removal can be done in 9.0.



--
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] [Resolved] (LUCENE-9318) Fix Codec API to not rely on package-private classes as part of changes to support java module system

2020-10-19 Thread Tomoko Uchida (Jira)


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

Tomoko Uchida resolved LUCENE-9318.
---
  Assignee: Tomoko Uchida
Resolution: Fixed

> Fix Codec API to not rely on package-private classes as part of changes to 
> support java module system
> -
>
> Key: LUCENE-9318
> URL: https://issues.apache.org/jira/browse/LUCENE-9318
> Project: Lucene - Core
>  Issue Type: Improvement
>  Components: core/other
>Affects Versions: master (9.0)
>Reporter: David Ryan
>Assignee: Tomoko Uchida
>Priority: Major
>  Labels: build, features
>  Time Spent: 1h 40m
>  Remaining Estimate: 0h
>
> To allow Lucene to be modularised with Java module system there are a few 
> preparatory tasks to be completed prior to this being possible. These are 
> detailed by Uwe on the mailing list here:
> [http://mail-archives.apache.org/mod_mbox/lucene-dev/202004.mbox/%3c0a5e01d60ff2$563f9c80$02bed580$@thetaphi.de%3e]
>  
> This task is:
> {quote}Fix Codec API to not rely on package-private classes, so we can have a 
> completely public API with abstract classes for codecs, so stuff in 
> backwards-codecs does not need to have access to package private stuff in 
> core.
> {quote}
>  



--
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] [Resolved] (LUCENE-9317) Resolve package name conflicts for StandardAnalyzer to allow Java module system support

2020-10-19 Thread Tomoko Uchida (Jira)


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

Tomoko Uchida resolved LUCENE-9317.
---
Fix Version/s: master (9.0)
   Resolution: Fixed

> Resolve package name conflicts for StandardAnalyzer to allow Java module 
> system support
> ---
>
> Key: LUCENE-9317
> URL: https://issues.apache.org/jira/browse/LUCENE-9317
> Project: Lucene - Core
>  Issue Type: Improvement
>  Components: core/other
>Affects Versions: master (9.0)
>Reporter: David Ryan
>Assignee: Tomoko Uchida
>Priority: Major
>  Labels: build, features
> Fix For: master (9.0)
>
>  Time Spent: 7h 20m
>  Remaining Estimate: 0h
>
>  
> To allow Lucene to be modularised there are a few preparatory tasks to be 
> completed prior to this being possible.  The Java module system requires that 
> jars do not use the same package name in different jars.  The lucene-core and 
> lucene-analyzers-common both share the package 
> org.apache.lucene.analysis.standard.
> Possible resolutions to this issue are discussed by Uwe on the mailing list 
> here:
>  
> [http://mail-archives.apache.org/mod_mbox/lucene-dev/202004.mbox/%3CCAM21Rt8FHOq_JeUSELhsQJH0uN0eKBgduBQX4fQKxbs49TLqzA%40mail.gmail.com%3E]
> {quote}About StandardAnalyzer: Unfortunately I aggressively complained a 
> while back when Mike McCandless wanted to move standard analyzer out of the 
> analysis package into core (“for convenience”). This was a bad step, and IMHO 
> we should revert that or completely rename the packages and everything. The 
> problem here is: As the analysis services are only part of lucene-analyzers, 
> we had to leave the factory classes there, but move the implementation 
> classes in core. The package has to be the same. The only way around that is 
> to move the analysis factory framework also to core (I would not be against 
> that). This would include all factory base classes and the service loading 
> stuff. Then we can move standard analyzer and some of the filters/tokenizers 
> including their factories to core an that problem would be solved.
> {quote}
> There are two options here, either move factory framework into core or revert 
> StandardAnalyzer back to lucene-analyzers.  In the email, the solution lands 
> on reverting back as per the task list:
> {quote}Add some preparatory issues to cleanup class hierarchy: Move Analysis 
> SPI to core / remove StandardAnalyzer and related classes out of core back to 
> anaysis
> {quote}
>  
>  
>  
>  



--
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] (LUCENE-9318) Fix Codec API to not rely on package-private classes as part of changes to support java module system

2020-10-19 Thread Tomoko Uchida (Jira)


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

Tomoko Uchida updated LUCENE-9318:
--
Fix Version/s: master (9.0)

> Fix Codec API to not rely on package-private classes as part of changes to 
> support java module system
> -
>
> Key: LUCENE-9318
> URL: https://issues.apache.org/jira/browse/LUCENE-9318
> Project: Lucene - Core
>  Issue Type: Improvement
>  Components: core/other
>Affects Versions: master (9.0)
>Reporter: David Ryan
>Assignee: Tomoko Uchida
>Priority: Major
>  Labels: build, features
> Fix For: master (9.0)
>
>  Time Spent: 1h 40m
>  Remaining Estimate: 0h
>
> To allow Lucene to be modularised with Java module system there are a few 
> preparatory tasks to be completed prior to this being possible. These are 
> detailed by Uwe on the mailing list here:
> [http://mail-archives.apache.org/mod_mbox/lucene-dev/202004.mbox/%3c0a5e01d60ff2$563f9c80$02bed580$@thetaphi.de%3e]
>  
> This task is:
> {quote}Fix Codec API to not rely on package-private classes, so we can have a 
> completely public API with abstract classes for codecs, so stuff in 
> backwards-codecs does not need to have access to package private stuff in 
> core.
> {quote}
>  



--
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] [Commented] (SOLR-14354) HttpShardHandler send requests in async

2020-10-19 Thread Cao Manh Dat (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14354?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216711#comment-17216711
 ] 

Cao Manh Dat commented on SOLR-14354:
-

Let's do a vote here, shall we?

I'm +1 with keeping this as it is now.

> HttpShardHandler send requests in async
> ---
>
> Key: SOLR-14354
> URL: https://issues.apache.org/jira/browse/SOLR-14354
> Project: Solr
>  Issue Type: Improvement
>Reporter: Cao Manh Dat
>Assignee: Cao Manh Dat
>Priority: Blocker
> Fix For: master (9.0), 8.7
>
> Attachments: image-2020-03-23-10-04-08-399.png, 
> image-2020-03-23-10-09-10-221.png, image-2020-03-23-10-12-00-661.png
>
>  Time Spent: 4h
>  Remaining Estimate: 0h
>
> h2. 1. Current approach (problem) of Solr
> Below is the diagram describe the model on how currently handling a request.
> !image-2020-03-23-10-04-08-399.png!
> The main-thread that handles the search requests, will submit n requests (n 
> equals to number of shards) to an executor. So each request will correspond 
> to a thread, after sending a request that thread basically do nothing just 
> waiting for response from other side. That thread will be swapped out and CPU 
> will try to handle another thread (this is called context switch, CPU will 
> save the context of the current thread and switch to another one). When some 
> data (not all) come back, that thread will be called to parsing these data, 
> then it will wait until more data come back. So there will be lots of context 
> switching in CPU. That is quite inefficient on using threads.Basically we 
> want less threads and most of them must busy all the time, because threads 
> are not free as well as context switching. That is the main idea behind 
> everything, like executor
> h2. 2. Async call of Jetty HttpClient
> Jetty HttpClient offers async API like this.
> {code:java}
> httpClient.newRequest("http://domain.com/path";)
> // Add request hooks
> .onRequestQueued(request -> { ... })
> .onRequestBegin(request -> { ... })
> // Add response hooks
> .onResponseBegin(response -> { ... })
> .onResponseHeaders(response -> { ... })
> .onResponseContent((response, buffer) -> { ... })
> .send(result -> { ... }); {code}
> Therefore after calling {{send()}} the thread will return immediately without 
> any block. Then when the client received the header from other side, it will 
> call {{onHeaders()}} listeners. When the client received some {{byte[]}} (not 
> all response) from the data it will call {{onContent(buffer)}} listeners. 
> When everything finished it will call {{onComplete}} listeners. One main 
> thing that will must notice here is all listeners should finish quick, if the 
> listener block, all further data of that request won’t be handled until the 
> listener finish.
> h2. 3. Solution 1: Sending requests async but spin one thread per response
>  Jetty HttpClient already provides several listeners, one of them is 
> InputStreamResponseListener. This is how it is get used
> {code:java}
> InputStreamResponseListener listener = new InputStreamResponseListener();
> client.newRequest(...).send(listener);
> // Wait for the response headers to arrive
> Response response = listener.get(5, TimeUnit.SECONDS);
> if (response.getStatus() == 200) {
>   // Obtain the input stream on the response content
>   try (InputStream input = listener.getInputStream()) {
> // Read the response content
>   }
> } {code}
> In this case, there will be 2 thread
>  * one thread trying to read the response content from InputStream
>  * one thread (this is a short-live task) feeding content to above 
> InputStream whenever some byte[] is available. Note that if this thread 
> unable to feed data into InputStream, this thread will wait.
> By using this one, the model of HttpShardHandler can be written into 
> something like this
> {code:java}
> handler.sendReq(req, (is) -> {
>   executor.submit(() ->
> try (is) {
>   // Read the content from InputStream
> }
>   )
> }) {code}
>  The first diagram will be changed into this
> !image-2020-03-23-10-09-10-221.png!
> Notice that although “sending req to shard1” is wide, it won’t take long time 
> since sending req is a very quick operation. With this operation, handling 
> threads won’t be spin up until first bytes are sent back. Notice that in this 
> approach we still have active threads waiting for more data from InputStream
> h2. 4. Solution 2: Buffering data and handle it inside jetty’s thread.
> Jetty have another listener called BufferingResponseListener. This is how it 
> is get used
> {code:java}
> client.newRequest(...).send(new BufferingResponseListener() {
>   public void onComplete(Result result) {
> try {
>   byte[] response = getCo

[GitHub] [lucene-solr] CaoManhDat commented on pull request #2004: SOLR-14942: Reduce leader election time on node shutdown

2020-10-19 Thread GitBox


CaoManhDat commented on pull request #2004:
URL: https://github.com/apache/lucene-solr/pull/2004#issuecomment-712152752


   +1 LGTM!



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[GitHub] [lucene-solr] risdenk closed pull request #1989: SOLR-14549 - Fix listing of Files in a Directory on Solr Admin UI

2020-10-19 Thread GitBox


risdenk closed pull request #1989:
URL: https://github.com/apache/lucene-solr/pull/1989


   



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[jira] [Commented] (SOLR-14549) Listing of Files in a Directory on Solr Admin is Broken

2020-10-19 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14549?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216729#comment-17216729
 ] 

ASF subversion and git services commented on SOLR-14549:


Commit 6ac5747d76300b153bee25268d3d7988aaa2caf9 in lucene-solr's branch 
refs/heads/master from Kevin Risden
[ https://gitbox.apache.org/repos/asf?p=lucene-solr.git;h=6ac5747 ]

SOLR-14549: Fix listing of Files in a Directory on Solr Admin UI

* Ensure that jstree can update data behind the scenes
* Fix file jstree object to represent open/closed correctly
* Upgrade jstree to 3.3.10 for compatibility with JQuery 3.5.x

Closes #1989


> Listing of Files in a Directory on Solr Admin is Broken
> ---
>
> Key: SOLR-14549
> URL: https://issues.apache.org/jira/browse/SOLR-14549
> Project: Solr
>  Issue Type: Bug
>  Components: Admin UI
>Affects Versions: master (9.0), 8.6, 8.5.1, 8.5.2, 8.6.1, 8.6.2, 8.6.3
>Reporter: David Eric Pugh
>Assignee: Kevin Risden
>Priority: Major
> Attachments: Screenshot at Jun 09 07-40-06.png
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> The Admin interface for showing files only lets you see the top level files, 
> no nested files in a directory:
> http://localhost:8983/solr/#/gettingstarted/files?file=lang%2F
> Choosing a nested directory doesn't generate any console errors, but the tree 
> doesn't open.
> I believe this was introduced during SOLR-14209 upgrade in Jquery.



--
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-14549) Listing of Files in a Directory on Solr Admin is Broken

2020-10-19 Thread Kevin Risden (Jira)


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

Kevin Risden updated SOLR-14549:

Fix Version/s: master (9.0)

> Listing of Files in a Directory on Solr Admin is Broken
> ---
>
> Key: SOLR-14549
> URL: https://issues.apache.org/jira/browse/SOLR-14549
> Project: Solr
>  Issue Type: Bug
>  Components: Admin UI
>Affects Versions: master (9.0), 8.6, 8.5.1, 8.5.2, 8.6.1, 8.6.2, 8.6.3
>Reporter: David Eric Pugh
>Assignee: Kevin Risden
>Priority: Major
> Fix For: master (9.0)
>
> Attachments: Screenshot at Jun 09 07-40-06.png
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> The Admin interface for showing files only lets you see the top level files, 
> no nested files in a directory:
> http://localhost:8983/solr/#/gettingstarted/files?file=lang%2F
> Choosing a nested directory doesn't generate any console errors, but the tree 
> doesn't open.
> I believe this was introduced during SOLR-14209 upgrade in Jquery.



--
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-14549) Listing of Files in a Directory on Solr Admin is Broken

2020-10-19 Thread Kevin Risden (Jira)


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

Kevin Risden updated SOLR-14549:

Fix Version/s: 8.8

> Listing of Files in a Directory on Solr Admin is Broken
> ---
>
> Key: SOLR-14549
> URL: https://issues.apache.org/jira/browse/SOLR-14549
> Project: Solr
>  Issue Type: Bug
>  Components: Admin UI
>Affects Versions: master (9.0), 8.6, 8.5.1, 8.5.2, 8.6.1, 8.6.2, 8.6.3
>Reporter: David Eric Pugh
>Assignee: Kevin Risden
>Priority: Major
> Fix For: master (9.0), 8.8
>
> Attachments: Screenshot at Jun 09 07-40-06.png
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> The Admin interface for showing files only lets you see the top level files, 
> no nested files in a directory:
> http://localhost:8983/solr/#/gettingstarted/files?file=lang%2F
> Choosing a nested directory doesn't generate any console errors, but the tree 
> doesn't open.
> I believe this was introduced during SOLR-14209 upgrade in Jquery.



--
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] [Commented] (SOLR-14549) Listing of Files in a Directory on Solr Admin is Broken

2020-10-19 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14549?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216731#comment-17216731
 ] 

ASF subversion and git services commented on SOLR-14549:


Commit ec3439611092e9b9f4f7c6735d2b2f2913e9cd11 in lucene-solr's branch 
refs/heads/branch_8x from Kevin Risden
[ https://gitbox.apache.org/repos/asf?p=lucene-solr.git;h=ec34396 ]

SOLR-14549: Fix listing of Files in a Directory on Solr Admin UI

* Ensure that jstree can update data behind the scenes
* Fix file jstree object to represent open/closed correctly
* Upgrade jstree to 3.3.10 for compatibility with JQuery 3.5.x

Closes #1989


> Listing of Files in a Directory on Solr Admin is Broken
> ---
>
> Key: SOLR-14549
> URL: https://issues.apache.org/jira/browse/SOLR-14549
> Project: Solr
>  Issue Type: Bug
>  Components: Admin UI
>Affects Versions: master (9.0), 8.6, 8.5.1, 8.5.2, 8.6.1, 8.6.2, 8.6.3
>Reporter: David Eric Pugh
>Assignee: Kevin Risden
>Priority: Major
> Fix For: master (9.0), 8.8
>
> Attachments: Screenshot at Jun 09 07-40-06.png
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> The Admin interface for showing files only lets you see the top level files, 
> no nested files in a directory:
> http://localhost:8983/solr/#/gettingstarted/files?file=lang%2F
> Choosing a nested directory doesn't generate any console errors, but the tree 
> doesn't open.
> I believe this was introduced during SOLR-14209 upgrade in Jquery.



--
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-14549) Listing of Files in a Directory on Solr Admin is Broken

2020-10-19 Thread Kevin Risden (Jira)


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

Kevin Risden updated SOLR-14549:

Fix Version/s: (was: 8.8)
   8.7

> Listing of Files in a Directory on Solr Admin is Broken
> ---
>
> Key: SOLR-14549
> URL: https://issues.apache.org/jira/browse/SOLR-14549
> Project: Solr
>  Issue Type: Bug
>  Components: Admin UI
>Affects Versions: master (9.0), 8.6, 8.5.1, 8.5.2, 8.6.1, 8.6.2, 8.6.3
>Reporter: David Eric Pugh
>Assignee: Kevin Risden
>Priority: Major
> Fix For: master (9.0), 8.7
>
> Attachments: Screenshot at Jun 09 07-40-06.png
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> The Admin interface for showing files only lets you see the top level files, 
> no nested files in a directory:
> http://localhost:8983/solr/#/gettingstarted/files?file=lang%2F
> Choosing a nested directory doesn't generate any console errors, but the tree 
> doesn't open.
> I believe this was introduced during SOLR-14209 upgrade in Jquery.



--
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-14549) Listing of Files in a Directory on Solr Admin is Broken

2020-10-19 Thread Kevin Risden (Jira)


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

Kevin Risden updated SOLR-14549:

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

> Listing of Files in a Directory on Solr Admin is Broken
> ---
>
> Key: SOLR-14549
> URL: https://issues.apache.org/jira/browse/SOLR-14549
> Project: Solr
>  Issue Type: Bug
>  Components: Admin UI
>Affects Versions: master (9.0), 8.6, 8.5.1, 8.5.2, 8.6.1, 8.6.2, 8.6.3
>Reporter: David Eric Pugh
>Assignee: Kevin Risden
>Priority: Major
> Fix For: master (9.0), 8.7
>
> Attachments: Screenshot at Jun 09 07-40-06.png
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> The Admin interface for showing files only lets you see the top level files, 
> no nested files in a directory:
> http://localhost:8983/solr/#/gettingstarted/files?file=lang%2F
> Choosing a nested directory doesn't generate any console errors, but the tree 
> doesn't open.
> I believe this was introduced during SOLR-14209 upgrade in Jquery.



--
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] [Commented] (SOLR-14549) Listing of Files in a Directory on Solr Admin is Broken

2020-10-19 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14549?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216733#comment-17216733
 ] 

ASF subversion and git services commented on SOLR-14549:


Commit d5531e9b7f98a535bf952fabc4f5c07ffbfe6406 in lucene-solr's branch 
refs/heads/branch_8_7 from Kevin Risden
[ https://gitbox.apache.org/repos/asf?p=lucene-solr.git;h=d5531e9 ]

SOLR-14549: Fix listing of Files in a Directory on Solr Admin UI

* Ensure that jstree can update data behind the scenes
* Fix file jstree object to represent open/closed correctly
* Upgrade jstree to 3.3.10 for compatibility with JQuery 3.5.x

Closes #1989


> Listing of Files in a Directory on Solr Admin is Broken
> ---
>
> Key: SOLR-14549
> URL: https://issues.apache.org/jira/browse/SOLR-14549
> Project: Solr
>  Issue Type: Bug
>  Components: Admin UI
>Affects Versions: master (9.0), 8.6, 8.5.1, 8.5.2, 8.6.1, 8.6.2, 8.6.3
>Reporter: David Eric Pugh
>Assignee: Kevin Risden
>Priority: Major
> Fix For: master (9.0), 8.7
>
> Attachments: Screenshot at Jun 09 07-40-06.png
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> The Admin interface for showing files only lets you see the top level files, 
> no nested files in a directory:
> http://localhost:8983/solr/#/gettingstarted/files?file=lang%2F
> Choosing a nested directory doesn't generate any console errors, but the tree 
> doesn't open.
> I believe this was introduced during SOLR-14209 upgrade in Jquery.



--
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] [Commented] (SOLR-14354) HttpShardHandler send requests in async

2020-10-19 Thread David Smiley (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14354?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216739#comment-17216739
 ] 

David Smiley commented on SOLR-14354:
-

-1, mainly because the API that is committed is not something I think our users 
should see (hence Rishi's contribution that is in-progress).  Were it not for 
that, I'd be indifferent based on Mark's opinions, which suggest to me a major 
release version is safer.

> HttpShardHandler send requests in async
> ---
>
> Key: SOLR-14354
> URL: https://issues.apache.org/jira/browse/SOLR-14354
> Project: Solr
>  Issue Type: Improvement
>Reporter: Cao Manh Dat
>Assignee: Cao Manh Dat
>Priority: Blocker
> Fix For: master (9.0), 8.7
>
> Attachments: image-2020-03-23-10-04-08-399.png, 
> image-2020-03-23-10-09-10-221.png, image-2020-03-23-10-12-00-661.png
>
>  Time Spent: 4h
>  Remaining Estimate: 0h
>
> h2. 1. Current approach (problem) of Solr
> Below is the diagram describe the model on how currently handling a request.
> !image-2020-03-23-10-04-08-399.png!
> The main-thread that handles the search requests, will submit n requests (n 
> equals to number of shards) to an executor. So each request will correspond 
> to a thread, after sending a request that thread basically do nothing just 
> waiting for response from other side. That thread will be swapped out and CPU 
> will try to handle another thread (this is called context switch, CPU will 
> save the context of the current thread and switch to another one). When some 
> data (not all) come back, that thread will be called to parsing these data, 
> then it will wait until more data come back. So there will be lots of context 
> switching in CPU. That is quite inefficient on using threads.Basically we 
> want less threads and most of them must busy all the time, because threads 
> are not free as well as context switching. That is the main idea behind 
> everything, like executor
> h2. 2. Async call of Jetty HttpClient
> Jetty HttpClient offers async API like this.
> {code:java}
> httpClient.newRequest("http://domain.com/path";)
> // Add request hooks
> .onRequestQueued(request -> { ... })
> .onRequestBegin(request -> { ... })
> // Add response hooks
> .onResponseBegin(response -> { ... })
> .onResponseHeaders(response -> { ... })
> .onResponseContent((response, buffer) -> { ... })
> .send(result -> { ... }); {code}
> Therefore after calling {{send()}} the thread will return immediately without 
> any block. Then when the client received the header from other side, it will 
> call {{onHeaders()}} listeners. When the client received some {{byte[]}} (not 
> all response) from the data it will call {{onContent(buffer)}} listeners. 
> When everything finished it will call {{onComplete}} listeners. One main 
> thing that will must notice here is all listeners should finish quick, if the 
> listener block, all further data of that request won’t be handled until the 
> listener finish.
> h2. 3. Solution 1: Sending requests async but spin one thread per response
>  Jetty HttpClient already provides several listeners, one of them is 
> InputStreamResponseListener. This is how it is get used
> {code:java}
> InputStreamResponseListener listener = new InputStreamResponseListener();
> client.newRequest(...).send(listener);
> // Wait for the response headers to arrive
> Response response = listener.get(5, TimeUnit.SECONDS);
> if (response.getStatus() == 200) {
>   // Obtain the input stream on the response content
>   try (InputStream input = listener.getInputStream()) {
> // Read the response content
>   }
> } {code}
> In this case, there will be 2 thread
>  * one thread trying to read the response content from InputStream
>  * one thread (this is a short-live task) feeding content to above 
> InputStream whenever some byte[] is available. Note that if this thread 
> unable to feed data into InputStream, this thread will wait.
> By using this one, the model of HttpShardHandler can be written into 
> something like this
> {code:java}
> handler.sendReq(req, (is) -> {
>   executor.submit(() ->
> try (is) {
>   // Read the content from InputStream
> }
>   )
> }) {code}
>  The first diagram will be changed into this
> !image-2020-03-23-10-09-10-221.png!
> Notice that although “sending req to shard1” is wide, it won’t take long time 
> since sending req is a very quick operation. With this operation, handling 
> threads won’t be spin up until first bytes are sent back. Notice that in this 
> approach we still have active threads waiting for more data from InputStream
> h2. 4. Solution 2: Buffering data and handle it inside jetty’s thread.
> Jetty have another listener called BufferingResponseListener. T

[jira] [Commented] (SOLR-14354) HttpShardHandler send requests in async

2020-10-19 Thread Ishan Chattopadhyaya (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14354?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216744#comment-17216744
 ] 

Ishan Chattopadhyaya commented on SOLR-14354:
-

I think a major non optional change like this *must* accompany performance 
benchmarks to make sure there are no regressions. I'm so busy these days in 
personal life that I've grown mostly indifferent to whatever this community is 
up to; so I'll abstain from voting. Dat, Please feel free to use your best 
judgement.

> HttpShardHandler send requests in async
> ---
>
> Key: SOLR-14354
> URL: https://issues.apache.org/jira/browse/SOLR-14354
> Project: Solr
>  Issue Type: Improvement
>Reporter: Cao Manh Dat
>Assignee: Cao Manh Dat
>Priority: Blocker
> Fix For: master (9.0), 8.7
>
> Attachments: image-2020-03-23-10-04-08-399.png, 
> image-2020-03-23-10-09-10-221.png, image-2020-03-23-10-12-00-661.png
>
>  Time Spent: 4h
>  Remaining Estimate: 0h
>
> h2. 1. Current approach (problem) of Solr
> Below is the diagram describe the model on how currently handling a request.
> !image-2020-03-23-10-04-08-399.png!
> The main-thread that handles the search requests, will submit n requests (n 
> equals to number of shards) to an executor. So each request will correspond 
> to a thread, after sending a request that thread basically do nothing just 
> waiting for response from other side. That thread will be swapped out and CPU 
> will try to handle another thread (this is called context switch, CPU will 
> save the context of the current thread and switch to another one). When some 
> data (not all) come back, that thread will be called to parsing these data, 
> then it will wait until more data come back. So there will be lots of context 
> switching in CPU. That is quite inefficient on using threads.Basically we 
> want less threads and most of them must busy all the time, because threads 
> are not free as well as context switching. That is the main idea behind 
> everything, like executor
> h2. 2. Async call of Jetty HttpClient
> Jetty HttpClient offers async API like this.
> {code:java}
> httpClient.newRequest("http://domain.com/path";)
> // Add request hooks
> .onRequestQueued(request -> { ... })
> .onRequestBegin(request -> { ... })
> // Add response hooks
> .onResponseBegin(response -> { ... })
> .onResponseHeaders(response -> { ... })
> .onResponseContent((response, buffer) -> { ... })
> .send(result -> { ... }); {code}
> Therefore after calling {{send()}} the thread will return immediately without 
> any block. Then when the client received the header from other side, it will 
> call {{onHeaders()}} listeners. When the client received some {{byte[]}} (not 
> all response) from the data it will call {{onContent(buffer)}} listeners. 
> When everything finished it will call {{onComplete}} listeners. One main 
> thing that will must notice here is all listeners should finish quick, if the 
> listener block, all further data of that request won’t be handled until the 
> listener finish.
> h2. 3. Solution 1: Sending requests async but spin one thread per response
>  Jetty HttpClient already provides several listeners, one of them is 
> InputStreamResponseListener. This is how it is get used
> {code:java}
> InputStreamResponseListener listener = new InputStreamResponseListener();
> client.newRequest(...).send(listener);
> // Wait for the response headers to arrive
> Response response = listener.get(5, TimeUnit.SECONDS);
> if (response.getStatus() == 200) {
>   // Obtain the input stream on the response content
>   try (InputStream input = listener.getInputStream()) {
> // Read the response content
>   }
> } {code}
> In this case, there will be 2 thread
>  * one thread trying to read the response content from InputStream
>  * one thread (this is a short-live task) feeding content to above 
> InputStream whenever some byte[] is available. Note that if this thread 
> unable to feed data into InputStream, this thread will wait.
> By using this one, the model of HttpShardHandler can be written into 
> something like this
> {code:java}
> handler.sendReq(req, (is) -> {
>   executor.submit(() ->
> try (is) {
>   // Read the content from InputStream
> }
>   )
> }) {code}
>  The first diagram will be changed into this
> !image-2020-03-23-10-09-10-221.png!
> Notice that although “sending req to shard1” is wide, it won’t take long time 
> since sending req is a very quick operation. With this operation, handling 
> threads won’t be spin up until first bytes are sent back. Notice that in this 
> approach we still have active threads waiting for more data from InputStream
> h2. 4. Solution 2: Buffering data and handle it inside jetty’s thr

[jira] [Commented] (SOLR-14354) HttpShardHandler send requests in async

2020-10-19 Thread Ishan Chattopadhyaya (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14354?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216748#comment-17216748
 ] 

Ishan Chattopadhyaya commented on SOLR-14354:
-

Oh, and I withdraw my veto. 

> HttpShardHandler send requests in async
> ---
>
> Key: SOLR-14354
> URL: https://issues.apache.org/jira/browse/SOLR-14354
> Project: Solr
>  Issue Type: Improvement
>Reporter: Cao Manh Dat
>Assignee: Cao Manh Dat
>Priority: Blocker
> Fix For: master (9.0), 8.7
>
> Attachments: image-2020-03-23-10-04-08-399.png, 
> image-2020-03-23-10-09-10-221.png, image-2020-03-23-10-12-00-661.png
>
>  Time Spent: 4h
>  Remaining Estimate: 0h
>
> h2. 1. Current approach (problem) of Solr
> Below is the diagram describe the model on how currently handling a request.
> !image-2020-03-23-10-04-08-399.png!
> The main-thread that handles the search requests, will submit n requests (n 
> equals to number of shards) to an executor. So each request will correspond 
> to a thread, after sending a request that thread basically do nothing just 
> waiting for response from other side. That thread will be swapped out and CPU 
> will try to handle another thread (this is called context switch, CPU will 
> save the context of the current thread and switch to another one). When some 
> data (not all) come back, that thread will be called to parsing these data, 
> then it will wait until more data come back. So there will be lots of context 
> switching in CPU. That is quite inefficient on using threads.Basically we 
> want less threads and most of them must busy all the time, because threads 
> are not free as well as context switching. That is the main idea behind 
> everything, like executor
> h2. 2. Async call of Jetty HttpClient
> Jetty HttpClient offers async API like this.
> {code:java}
> httpClient.newRequest("http://domain.com/path";)
> // Add request hooks
> .onRequestQueued(request -> { ... })
> .onRequestBegin(request -> { ... })
> // Add response hooks
> .onResponseBegin(response -> { ... })
> .onResponseHeaders(response -> { ... })
> .onResponseContent((response, buffer) -> { ... })
> .send(result -> { ... }); {code}
> Therefore after calling {{send()}} the thread will return immediately without 
> any block. Then when the client received the header from other side, it will 
> call {{onHeaders()}} listeners. When the client received some {{byte[]}} (not 
> all response) from the data it will call {{onContent(buffer)}} listeners. 
> When everything finished it will call {{onComplete}} listeners. One main 
> thing that will must notice here is all listeners should finish quick, if the 
> listener block, all further data of that request won’t be handled until the 
> listener finish.
> h2. 3. Solution 1: Sending requests async but spin one thread per response
>  Jetty HttpClient already provides several listeners, one of them is 
> InputStreamResponseListener. This is how it is get used
> {code:java}
> InputStreamResponseListener listener = new InputStreamResponseListener();
> client.newRequest(...).send(listener);
> // Wait for the response headers to arrive
> Response response = listener.get(5, TimeUnit.SECONDS);
> if (response.getStatus() == 200) {
>   // Obtain the input stream on the response content
>   try (InputStream input = listener.getInputStream()) {
> // Read the response content
>   }
> } {code}
> In this case, there will be 2 thread
>  * one thread trying to read the response content from InputStream
>  * one thread (this is a short-live task) feeding content to above 
> InputStream whenever some byte[] is available. Note that if this thread 
> unable to feed data into InputStream, this thread will wait.
> By using this one, the model of HttpShardHandler can be written into 
> something like this
> {code:java}
> handler.sendReq(req, (is) -> {
>   executor.submit(() ->
> try (is) {
>   // Read the content from InputStream
> }
>   )
> }) {code}
>  The first diagram will be changed into this
> !image-2020-03-23-10-09-10-221.png!
> Notice that although “sending req to shard1” is wide, it won’t take long time 
> since sending req is a very quick operation. With this operation, handling 
> threads won’t be spin up until first bytes are sent back. Notice that in this 
> approach we still have active threads waiting for more data from InputStream
> h2. 4. Solution 2: Buffering data and handle it inside jetty’s thread.
> Jetty have another listener called BufferingResponseListener. This is how it 
> is get used
> {code:java}
> client.newRequest(...).send(new BufferingResponseListener() {
>   public void onComplete(Result result) {
> try {
>   byte[] response = getContent();
>   //handling

[GitHub] [lucene-solr] msokolov edited a comment on pull request #2000: LUCENE-9318: Clean up package name conflicts for backward-codecs

2020-10-19 Thread GitBox


msokolov edited a comment on pull request #2000:
URL: https://github.com/apache/lucene-solr/pull/2000#issuecomment-712188759


> I merged the latest master and resolved conflicts (had a bit trouble 
though...)
   
   Woops! sorry if the new codec and related changes got in the way ;) Looks as 
if you overcame it



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[GitHub] [lucene-solr] msokolov commented on pull request #2000: LUCENE-9318: Clean up package name conflicts for backward-codecs

2020-10-19 Thread GitBox


msokolov commented on pull request #2000:
URL: https://github.com/apache/lucene-solr/pull/2000#issuecomment-712188759


> I merged the latest master and resolved conflicts (had a bit trouble 
though...)
   Woops! sorry if the new codec and related changes got in the way ;) Looks as 
if you overcame it



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[GitHub] [lucene-solr] sigram commented on pull request #1974: SOLR-14914: Add option to disable metrics collection

2020-10-19 Thread GitBox


sigram commented on pull request #1974:
URL: https://github.com/apache/lucene-solr/pull/1974#issuecomment-712191017


   This has been merged - @noblepaul , can you please close it? Thanks!



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[jira] [Commented] (SOLR-11611) Starting Solr using solr.cmd fails under Windows, when the path contains a parenthesis character

2020-10-19 Thread Jira


[ 
https://issues.apache.org/jira/browse/SOLR-11611?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216761#comment-17216761
 ] 

Jan Høydahl commented on SOLR-11611:


Not a blocker. Needs more tests, let's not hold up 8.7 for this

> Starting Solr using solr.cmd fails under Windows, when the path contains a 
> parenthesis character
> 
>
> Key: SOLR-11611
> URL: https://issues.apache.org/jira/browse/SOLR-11611
> Project: Solr
>  Issue Type: Bug
>  Components: scripts and tools, SolrCLI
>Affects Versions: 7.1, 7.4
> Environment: Microsoft Windows [Version 10.0.15063]
> java version "1.8.0_144"
> Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
> Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)
>Reporter: Jakob Furrer
>Priority: Minor
> Fix For: 8.7
>
> Attachments: SOLR-11611.patch, SOLR-11611.patch
>
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> Starting Solr using solr.cli fails in Windows, when the path contains spaces.
> Use the following example to reproduce the error:
> {quote}C:\>c:
> C:\>cd "C:\Program Files (x86)\Company Name\ProductName Solr\bin"
> C:\Program Files (x86)\Company Name\ProductName Solr\bin>dir
>  Volume in Laufwerk C: hat keine Bezeichnung.
>  Volumeseriennummer: 8207-3B8B
>  Verzeichnis von C:\Program Files (x86)\Company Name\ProductName Solr\bin
> 06.11.2017  15:52  .
> 06.11.2017  15:52  ..
> 06.11.2017  15:39  init.d
> 03.11.2017  17:32 8 209 post
> 03.11.2017  17:3275 963 solr
> 06.11.2017  14:2469 407 solr.cmd
>3 Datei(en),153 579 Bytes
>3 Verzeichnis(se), 51 191 619 584 Bytes frei
> C:\Program Files (x86)\Company Name\ProductName Solr\bin>solr.cmd start
> *"\Company" kann syntaktisch an dieser Stelle nicht verarbeitet werden.*
> C:\Program Files (x86)\Company Name\ProductName Solr\bin>{quote}



--
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-11611) Starting Solr using solr.cmd fails under Windows, when the path contains a parenthesis character

2020-10-19 Thread Jira


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

Jan Høydahl updated SOLR-11611:
---
Priority: Minor  (was: Blocker)

> Starting Solr using solr.cmd fails under Windows, when the path contains a 
> parenthesis character
> 
>
> Key: SOLR-11611
> URL: https://issues.apache.org/jira/browse/SOLR-11611
> Project: Solr
>  Issue Type: Bug
>  Components: scripts and tools, SolrCLI
>Affects Versions: 7.1, 7.4
> Environment: Microsoft Windows [Version 10.0.15063]
> java version "1.8.0_144"
> Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
> Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)
>Reporter: Jakob Furrer
>Priority: Minor
> Fix For: 8.7
>
> Attachments: SOLR-11611.patch, SOLR-11611.patch
>
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> Starting Solr using solr.cli fails in Windows, when the path contains spaces.
> Use the following example to reproduce the error:
> {quote}C:\>c:
> C:\>cd "C:\Program Files (x86)\Company Name\ProductName Solr\bin"
> C:\Program Files (x86)\Company Name\ProductName Solr\bin>dir
>  Volume in Laufwerk C: hat keine Bezeichnung.
>  Volumeseriennummer: 8207-3B8B
>  Verzeichnis von C:\Program Files (x86)\Company Name\ProductName Solr\bin
> 06.11.2017  15:52  .
> 06.11.2017  15:52  ..
> 06.11.2017  15:39  init.d
> 03.11.2017  17:32 8 209 post
> 03.11.2017  17:3275 963 solr
> 06.11.2017  14:2469 407 solr.cmd
>3 Datei(en),153 579 Bytes
>3 Verzeichnis(se), 51 191 619 584 Bytes frei
> C:\Program Files (x86)\Company Name\ProductName Solr\bin>solr.cmd start
> *"\Company" kann syntaktisch an dieser Stelle nicht verarbeitet werden.*
> C:\Program Files (x86)\Company Name\ProductName Solr\bin>{quote}



--
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



[GitHub] [lucene-solr] sigram commented on a change in pull request #1964: SOLR-14749: Cluster singleton part of PR-1785

2020-10-19 Thread GitBox


sigram commented on a change in pull request #1964:
URL: https://github.com/apache/lucene-solr/pull/1964#discussion_r507787040



##
File path: 
solr/core/src/java/org/apache/solr/handler/admin/ContainerPluginsApi.java
##
@@ -51,7 +51,7 @@
 public class ContainerPluginsApi {
   private static final Logger log = 
LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
 
-  public static final String PLUGIN = "plugin";
+  public static final String PLUGINS = "plugin";

Review comment:
   Removed.





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[GitHub] [lucene-solr] sigram commented on a change in pull request #1964: SOLR-14749: Cluster singleton part of PR-1785

2020-10-19 Thread GitBox


sigram commented on a change in pull request #1964:
URL: https://github.com/apache/lucene-solr/pull/1964#discussion_r507786868



##
File path: solr/core/src/java/org/apache/solr/core/CoreContainer.java
##
@@ -168,6 +172,33 @@ public CoreLoadFailure(CoreDescriptor cd, Exception 
loadFailure) {
 }
   }
 
+  public static class ClusterSingletons {

Review comment:
   Moved most of that into a utility class.





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[GitHub] [lucene-solr] sigram closed pull request #1758: SOLR-14749: Provide a clean API for cluster-level event processing, Initial draft.

2020-10-19 Thread GitBox


sigram closed pull request #1758:
URL: https://github.com/apache/lucene-solr/pull/1758


   



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[GitHub] [lucene-solr] sigram commented on pull request #1758: SOLR-14749: Provide a clean API for cluster-level event processing, Initial draft.

2020-10-19 Thread GitBox


sigram commented on pull request #1758:
URL: https://github.com/apache/lucene-solr/pull/1758#issuecomment-712195659


   I'm closing this PR - other PRs contain all the code here, only split into 
parts (events API, ClusterSingleton and scheduler)



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[GitHub] [lucene-solr] sigram closed pull request #1678: SOLR-14613: Initial POC based on Ilan's proposal.

2020-10-19 Thread GitBox


sigram closed pull request #1678:
URL: https://github.com/apache/lucene-solr/pull/1678


   



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[GitHub] [lucene-solr] sigram commented on pull request #1678: SOLR-14613: Initial POC based on Ilan's proposal.

2020-10-19 Thread GitBox


sigram commented on pull request #1678:
URL: https://github.com/apache/lucene-solr/pull/1678#issuecomment-712196256


   Another variant of this has already been merged.



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[jira] [Commented] (SOLR-14282) /get handler doesn't return copied fields

2020-10-19 Thread David Eric Pugh (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14282?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216771#comment-17216771
 ] 

David Eric Pugh commented on SOLR-14282:


Thanks [~ehatcher]for commenting.   One issue is we should be clear what 
realtime /get does in the Ref Guide.  Like, today, highlight that it doesn't 
return copied fields or "dynamically added via URP".  

> /get handler doesn't return copied fields
> -
>
> Key: SOLR-14282
> URL: https://issues.apache.org/jira/browse/SOLR-14282
> Project: Solr
>  Issue Type: Bug
>  Components: search, SolrJ
>Affects Versions: 8.4
> Environment: SOLR 8.4.0, SOLRJ, Oracle Java 8 
>Reporter: Andrei Minin
>Priority: Major
> Attachments: SOLR-14282-test-update.patch, copied_fields_test.zip, 
> managed-schema.xml
>
>
> We are using /get handler to retrieve documents by id in our Java application 
> (SolrJ)
> I found that copied fields are missing in documents returned by /get handler 
> but  same documents returned by  query contain copied (by schema) fields.
> Attached documents:
>  # Integration test project archive
>  # Managed schema file for SOLR
> SOLR schema details:
>  # Unique field name "d_ida_s"
>  # Lowecase text type definition:
> {code:java}
>   positionIncrementGap="100">
>   
> 
> 
>   
> {code}
>           3. Copy field instruction sample: 
> {code:java}
>  stored="true" multiValued="false"/>
>  /> 
> {code}
> ConcurrenceUserNamea_s is string type field and ConcurrenceUserNameu_lca_s is 
> lower case text type field.
> Integration test uploads document to SOLR server and makes 2 requests: one 
> using /get rest point to fetch document by id and one using query  field name>:.
> Document returned by /get rest, doesn't have copied fields while document 
> returned by query, contains copied fields.



--
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-14851) Http2SolrClient doesn't handle keystore type correctly

2020-10-19 Thread Andras Salamon (Jira)


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

Andras Salamon updated SOLR-14851:
--
Attachment: SOLR-14851-02.patch

> Http2SolrClient doesn't handle keystore type correctly
> --
>
> Key: SOLR-14851
> URL: https://issues.apache.org/jira/browse/SOLR-14851
> Project: Solr
>  Issue Type: Bug
>  Components: Server
>Reporter: Andras Salamon
>Assignee: Kevin Risden
>Priority: Major
> Attachments: SOLR-14851-01.patch, SOLR-14851-02.patch
>
>
> I wanted to use Solr SSL using bcfks keystore type. Even after specifying the 
> following JVM properties, Solr was not able to start: 
> {{-Djavax.net.ssl.keyStoreType=bcfks -Djavax.net.ssl.trustStoreType=bcfks 
> -Dsolr.jetty.truststore.type=bcfks -Dsolr.jetty.keystore.type=bcfks}}
> The error message in the log:
> {noformat}2020-09-07 14:42:29.429 ERROR (main) [   ] o.a.s.c.SolrCore 
> null:org.apache.solr.common.SolrException: Error instantiating 
> shardHandlerFactory class [HttpShardHandlerFactory]: java.io.IOException: 
> Invalid keystore format
> at 
> org.apache.solr.handler.component.ShardHandlerFactory.newInstance(ShardHandlerFactory.java:56)
> at org.apache.solr.core.CoreContainer.load(CoreContainer.java:660)
> at 
> org.apache.solr.servlet.SolrDispatchFilter.createCoreContainer(SolrDispatchFilter.java:262)
> at 
> org.apache.solr.servlet.SolrDispatchFilter.init(SolrDispatchFilter.java:182)
> at 
> org.eclipse.jetty.servlet.FilterHolder.initialize(FilterHolder.java:134)
> at 
> org.eclipse.jetty.servlet.ServletHandler.lambda$initialize$0(ServletHandler.java:751)
> at 
> java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:948)
> at 
> java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:742)
> at 
> java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:742)
> at 
> java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:647)
> at 
> org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:744)
> at 
> org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:360)
> at 
> org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1445)
> at 
> org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1409)
> at 
> org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:822)
> at 
> org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:275)
> at 
> org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:524)
> at 
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
> at 
> org.eclipse.jetty.deploy.bindings.StandardStarter.processBinding(StandardStarter.java:46)
> at 
> org.eclipse.jetty.deploy.AppLifeCycle.runBindings(AppLifeCycle.java:188)
> at 
> org.eclipse.jetty.deploy.DeploymentManager.requestAppGoal(DeploymentManager.java:513)
> at 
> org.eclipse.jetty.deploy.DeploymentManager.addApp(DeploymentManager.java:154)
> at 
> org.eclipse.jetty.deploy.providers.ScanningAppProvider.fileAdded(ScanningAppProvider.java:173)
> at 
> org.eclipse.jetty.deploy.providers.WebAppProvider.fileAdded(WebAppProvider.java:447)
> at 
> org.eclipse.jetty.deploy.providers.ScanningAppProvider$1.fileAdded(ScanningAppProvider.java:66)
> at org.eclipse.jetty.util.Scanner.reportAddition(Scanner.java:784)
> at org.eclipse.jetty.util.Scanner.reportDifferences(Scanner.java:753)
> at org.eclipse.jetty.util.Scanner.scan(Scanner.java:641)
> at org.eclipse.jetty.util.Scanner.doStart(Scanner.java:540)
> at 
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
> at 
> org.eclipse.jetty.deploy.providers.ScanningAppProvider.doStart(ScanningAppProvider.java:146)
> at 
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
> at 
> org.eclipse.jetty.deploy.DeploymentManager.startAppProvider(DeploymentManager.java:599)
> at 
> org.eclipse.jetty.deploy.DeploymentManager.doStart(DeploymentManager.java:249)
> at 
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
> at 
> org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
> at org.eclipse.jetty.server.Server.start(Server.java:407)
> at 
> org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:117)
> at 
> org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97)
> 

[jira] [Created] (SOLR-14946) responseHeader is returned when using EmbeddedSolrServer even when omitHeader=true

2020-10-19 Thread Munendra S N (Jira)
Munendra S N created SOLR-14946:
---

 Summary: responseHeader is returned when using EmbeddedSolrServer 
even when omitHeader=true
 Key: SOLR-14946
 URL: https://issues.apache.org/jira/browse/SOLR-14946
 Project: Solr
  Issue Type: Bug
  Security Level: Public (Default Security Level. Issues are Public)
Reporter: Munendra S N


When omitHeader=true, responseHeader shouldn't be returned which is not the 
case when using EmbededSolrServer



--
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



[GitHub] [lucene-solr] HoustonPutman commented on a change in pull request #1996: SOLR-14907: Adding V2 API for ConfigSet Upload.

2020-10-19 Thread GitBox


HoustonPutman commented on a change in pull request #1996:
URL: https://github.com/apache/lucene-solr/pull/1996#discussion_r507814091



##
File path: solr/core/src/java/org/apache/solr/handler/ClusterAPI.java
##
@@ -133,6 +134,62 @@ public void create(PayloadObj obj) 
throws Exception {
 
   }
 
+  @EndPoint(method = POST,
+  path =   "/cluster/configs/{name}",
+  permission = CONFIG_EDIT_PERM
+  )
+  public void uploadConfigSet(SolrQueryRequest req, SolrQueryResponse rsp) 
throws Exception {
+req = wrapParams(req,
+"action", ConfigSetParams.ConfigSetAction.UPLOAD.toString(),
+CommonParams.NAME, req.getPathTemplateValues().get("name"));
+configSetsHandler.handleRequestBody(req, rsp);
+  }
+
+  @EndPoint(method = PUT,
+  path =   "/cluster/configs/{name}",
+  permission = CONFIG_EDIT_PERM
+  )
+  public void uploadConfigSetWithOverwrite(SolrQueryRequest req, 
SolrQueryResponse rsp) throws Exception {
+req = wrapParams(req,
+"action", ConfigSetParams.ConfigSetAction.UPLOAD.toString(),
+CommonParams.NAME, req.getPathTemplateValues().get("name"),
+ConfigSetParams.OVERWRITE, true,
+ConfigSetParams.CLEANUP, 
req.getParams().getBool(ConfigSetParams.CLEANUP, false));
+configSetsHandler.handleRequestBody(req, rsp);
+  }
+
+  @EndPoint(method = POST,

Review comment:
   Would you be ok with `/cluster/configs/{configname}/file/*`? That's very 
restful, since it would be updating the `*` `file` under the `{configname}` 
`config`





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[jira] [Updated] (SOLR-14907) Support single file upload/overwrite in configSet API

2020-10-19 Thread Houston Putman (Jira)


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

Houston Putman updated SOLR-14907:
--
Description: 
After SOLR-10391 was implemented, users are now able to overwrite existing 
configSets using the configSet API. However the files uploaded are still 
required to be zipped and indexed from the base configSet path in ZK. Users 
might want to just update a single file, such as a synonyms list, and not have 
to tar it up first.

The proposed solution is to add parameters to the UPLOAD configSet action, to 
allow this single-file use case. This would utilize the protections already 
provided by the API, such as maintaining the trustiness of configSets being 
modified.

This feature is part of the solution to replace managed resources, which is 
planned to be deprecated and removed by 9.0 (SOLR-14766).

The following APIs are being proposed:

V1:

Adding to the configSet upload one urlParam, filePath:

"http://localhost:8983/solr/admin/configs?action=UPLOAD&name=myConfigSet&filePath=solrconfig.xml&overwrite=true";

V2:
 * Creating a configSet:
 ** POST - /cluster/configs/\{name}
 * Updating a configSet:
 ** PUT - /cluster/configs/\{name}
 * Creating a file in a configSet:
 ** POST - /cluster/configs/\{name}/file/\{filename}
 * Updating a file in a configSet:
 ** PUT - /cluster/configs/\{name}/file/\{filename}

  was:
After SOLR-10391 was implemented, users are now able to overwrite existing 
configSets using the configSet API. However the files uploaded are still 
required to be zipped and indexed from the base configSet path in ZK. Users 
might want to just update a single file, such as a synonyms list, and not have 
to tar it up first.

The proposed solution is to add parameters to the UPLOAD configSet action, to 
allow this single-file use case. This would utilize the protections already 
provided by the API, such as maintaining the trustiness of configSets being 
modified.

This feature is part of the solution to replace managed resources, which is 
planned to be deprecated and removed by 9.0 (SOLR-14766).


> Support single file upload/overwrite in configSet API
> -
>
> Key: SOLR-14907
> URL: https://issues.apache.org/jira/browse/SOLR-14907
> Project: Solr
>  Issue Type: Improvement
>  Components: configset-api
>Reporter: Houston Putman
>Assignee: Houston Putman
>Priority: Major
> Fix For: 8.7
>
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> After SOLR-10391 was implemented, users are now able to overwrite existing 
> configSets using the configSet API. However the files uploaded are still 
> required to be zipped and indexed from the base configSet path in ZK. Users 
> might want to just update a single file, such as a synonyms list, and not 
> have to tar it up first.
> The proposed solution is to add parameters to the UPLOAD configSet action, to 
> allow this single-file use case. This would utilize the protections already 
> provided by the API, such as maintaining the trustiness of configSets being 
> modified.
> This feature is part of the solution to replace managed resources, which is 
> planned to be deprecated and removed by 9.0 (SOLR-14766).
> The following APIs are being proposed:
> V1:
> Adding to the configSet upload one urlParam, filePath:
> "http://localhost:8983/solr/admin/configs?action=UPLOAD&name=myConfigSet&filePath=solrconfig.xml&overwrite=true";
> V2:
>  * Creating a configSet:
>  ** POST - /cluster/configs/\{name}
>  * Updating a configSet:
>  ** PUT - /cluster/configs/\{name}
>  * Creating a file in a configSet:
>  ** POST - /cluster/configs/\{name}/file/\{filename}
>  * Updating a file in a configSet:
>  ** PUT - /cluster/configs/\{name}/file/\{filename}



--
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] [Commented] (SOLR-14907) Support single file upload/overwrite in configSet API

2020-10-19 Thread Houston Putman (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14907?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216784#comment-17216784
 ] 

Houston Putman commented on SOLR-14907:
---

Added the proposed APIs in the Jira description. Good call on the 
[~noble.paul], I should have included it from the start.

> Support single file upload/overwrite in configSet API
> -
>
> Key: SOLR-14907
> URL: https://issues.apache.org/jira/browse/SOLR-14907
> Project: Solr
>  Issue Type: Improvement
>  Components: configset-api
>Reporter: Houston Putman
>Assignee: Houston Putman
>Priority: Major
> Fix For: 8.7
>
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> After SOLR-10391 was implemented, users are now able to overwrite existing 
> configSets using the configSet API. However the files uploaded are still 
> required to be zipped and indexed from the base configSet path in ZK. Users 
> might want to just update a single file, such as a synonyms list, and not 
> have to tar it up first.
> The proposed solution is to add parameters to the UPLOAD configSet action, to 
> allow this single-file use case. This would utilize the protections already 
> provided by the API, such as maintaining the trustiness of configSets being 
> modified.
> This feature is part of the solution to replace managed resources, which is 
> planned to be deprecated and removed by 9.0 (SOLR-14766).
> The following APIs are being proposed:
> V1:
> Adding to the configSet upload one urlParam, filePath:
> "http://localhost:8983/solr/admin/configs?action=UPLOAD&name=myConfigSet&filePath=solrconfig.xml&overwrite=true";
> V2:
>  * Creating a configSet:
>  ** POST - /cluster/configs/\{name}
>  * Updating a configSet:
>  ** PUT - /cluster/configs/\{name}
>  * Creating a file in a configSet:
>  ** POST - /cluster/configs/\{name}/file/\{filename}
>  * Updating a file in a configSet:
>  ** PUT - /cluster/configs/\{name}/file/\{filename}



--
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



[GitHub] [lucene-solr] madrob commented on a change in pull request #2004: SOLR-14942: Reduce leader election time on node shutdown

2020-10-19 Thread GitBox


madrob commented on a change in pull request #2004:
URL: https://github.com/apache/lucene-solr/pull/2004#discussion_r507808511



##
File path: solr/core/src/java/org/apache/solr/update/SolrCoreState.java
##
@@ -86,7 +103,45 @@ public boolean decrefSolrCoreState(IndexWriterCloser 
closer) {
 }
 return close;
   }
-  
+
+  /**
+   * Pauses all update requests to this core and waits (indefinitely) for all 
in-flight
+   * update requests to finish
+   */
+  public void pauseUpdatesAndAwaitInflightRequests() {
+if (pauseUpdateRequests.compareAndSet(false, true)) {
+  inflightUpdatesCounter.register();
+  inflightUpdatesCounter.arriveAndAwaitAdvance();
+}
+  }
+
+  /**
+   * Unpauses update requests to this core
+   */
+  public void unpauseUpdates() {

Review comment:
   This is never used?

##
File path: solr/core/src/java/org/apache/solr/cloud/ZkController.java
##
@@ -1838,6 +1838,22 @@ private void checkStateInZk(CoreDescriptor cd) throws 
InterruptedException, NotI
 }
   }
 
+  public void tryCancelAllElections() {
+if (zkClient.isClosed()) {
+  return;
+}
+electionContexts.values().parallelStream().forEach(context -> {

Review comment:
   How many contexts do we expect here. Does it actually make sense to do a 
parallel stream?

##
File path: solr/core/src/java/org/apache/solr/update/SolrCoreState.java
##
@@ -86,7 +103,45 @@ public boolean decrefSolrCoreState(IndexWriterCloser 
closer) {
 }
 return close;
   }
-  
+
+  /**
+   * Pauses all update requests to this core and waits (indefinitely) for all 
in-flight
+   * update requests to finish
+   */
+  public void pauseUpdatesAndAwaitInflightRequests() {
+if (pauseUpdateRequests.compareAndSet(false, true)) {
+  inflightUpdatesCounter.register();
+  inflightUpdatesCounter.arriveAndAwaitAdvance();

Review comment:
   This is in the shutdown path, should we add a timeout? What happens if a 
disk is slow on write and something else times out underneath us?

##
File path: solr/core/src/java/org/apache/solr/update/SolrCoreState.java
##
@@ -86,7 +103,45 @@ public boolean decrefSolrCoreState(IndexWriterCloser 
closer) {
 }
 return close;
   }
-  
+
+  /**
+   * Pauses all update requests to this core and waits (indefinitely) for all 
in-flight
+   * update requests to finish
+   */
+  public void pauseUpdatesAndAwaitInflightRequests() {
+if (pauseUpdateRequests.compareAndSet(false, true)) {
+  inflightUpdatesCounter.register();
+  inflightUpdatesCounter.arriveAndAwaitAdvance();
+}
+  }
+
+  /**
+   * Unpauses update requests to this core
+   */
+  public void unpauseUpdates() {
+this.pauseUpdateRequests.set(false);
+  }
+
+  /**
+   * Registers in-flight update requests to this core.
+   *
+   * @return true if request was registered, false if update requests are 
paused
+   */
+  public boolean registerInFlightUpdate() {
+if (pauseUpdateRequests.get()) {
+  return false;
+}
+inflightUpdatesCounter.register();

Review comment:
   Do we need to check for termination?





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[jira] [Updated] (SOLR-14907) Support single file upload/overwrite in configSet API

2020-10-19 Thread Houston Putman (Jira)


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

Houston Putman updated SOLR-14907:
--
Description: 
After SOLR-10391 was implemented, users are now able to overwrite existing 
configSets using the configSet API. However the files uploaded are still 
required to be zipped and indexed from the base configSet path in ZK. Users 
might want to just update a single file, such as a synonyms list, and not have 
to tar it up first.

The proposed solution is to add parameters to the UPLOAD configSet action, to 
allow this single-file use case. This would utilize the protections already 
provided by the API, such as maintaining the trustiness of configSets being 
modified.

This feature is part of the solution to replace managed resources, which is 
planned to be deprecated and removed by 9.0 (SOLR-14766).

The following APIs are being proposed:

V1:

Adding to the configSet upload one urlParam, filePath:

"http://localhost:8983/solr/admin/configs?action=UPLOAD&name=myConfigSet&filePath=solrconfig.xml&overwrite=true";

V2:
 * Creating a configSet:
 ** POST - /cluster/configs/\{name}
 * Updating a configSet:
 ** PUT - /cluster/configs/\{name}
 * Creating a file in a configSet:
 ** POST - /cluster/configs/\{name}/files/\{filename}
 * Updating a file in a configSet:
 ** PUT - /cluster/configs/\{name}/files/\{filename}

  was:
After SOLR-10391 was implemented, users are now able to overwrite existing 
configSets using the configSet API. However the files uploaded are still 
required to be zipped and indexed from the base configSet path in ZK. Users 
might want to just update a single file, such as a synonyms list, and not have 
to tar it up first.

The proposed solution is to add parameters to the UPLOAD configSet action, to 
allow this single-file use case. This would utilize the protections already 
provided by the API, such as maintaining the trustiness of configSets being 
modified.

This feature is part of the solution to replace managed resources, which is 
planned to be deprecated and removed by 9.0 (SOLR-14766).

The following APIs are being proposed:

V1:

Adding to the configSet upload one urlParam, filePath:

"http://localhost:8983/solr/admin/configs?action=UPLOAD&name=myConfigSet&filePath=solrconfig.xml&overwrite=true";

V2:
 * Creating a configSet:
 ** POST - /cluster/configs/\{name}
 * Updating a configSet:
 ** PUT - /cluster/configs/\{name}
 * Creating a file in a configSet:
 ** POST - /cluster/configs/\{name}/file/\{filename}
 * Updating a file in a configSet:
 ** PUT - /cluster/configs/\{name}/file/\{filename}


> Support single file upload/overwrite in configSet API
> -
>
> Key: SOLR-14907
> URL: https://issues.apache.org/jira/browse/SOLR-14907
> Project: Solr
>  Issue Type: Improvement
>  Components: configset-api
>Reporter: Houston Putman
>Assignee: Houston Putman
>Priority: Major
> Fix For: 8.7
>
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> After SOLR-10391 was implemented, users are now able to overwrite existing 
> configSets using the configSet API. However the files uploaded are still 
> required to be zipped and indexed from the base configSet path in ZK. Users 
> might want to just update a single file, such as a synonyms list, and not 
> have to tar it up first.
> The proposed solution is to add parameters to the UPLOAD configSet action, to 
> allow this single-file use case. This would utilize the protections already 
> provided by the API, such as maintaining the trustiness of configSets being 
> modified.
> This feature is part of the solution to replace managed resources, which is 
> planned to be deprecated and removed by 9.0 (SOLR-14766).
> The following APIs are being proposed:
> V1:
> Adding to the configSet upload one urlParam, filePath:
> "http://localhost:8983/solr/admin/configs?action=UPLOAD&name=myConfigSet&filePath=solrconfig.xml&overwrite=true";
> V2:
>  * Creating a configSet:
>  ** POST - /cluster/configs/\{name}
>  * Updating a configSet:
>  ** PUT - /cluster/configs/\{name}
>  * Creating a file in a configSet:
>  ** POST - /cluster/configs/\{name}/files/\{filename}
>  * Updating a file in a configSet:
>  ** PUT - /cluster/configs/\{name}/files/\{filename}



--
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



[GitHub] [lucene-solr] HoustonPutman commented on a change in pull request #1996: SOLR-14907: Adding V2 API for ConfigSet Upload.

2020-10-19 Thread GitBox


HoustonPutman commented on a change in pull request #1996:
URL: https://github.com/apache/lucene-solr/pull/1996#discussion_r507814091



##
File path: solr/core/src/java/org/apache/solr/handler/ClusterAPI.java
##
@@ -133,6 +134,62 @@ public void create(PayloadObj obj) 
throws Exception {
 
   }
 
+  @EndPoint(method = POST,
+  path =   "/cluster/configs/{name}",
+  permission = CONFIG_EDIT_PERM
+  )
+  public void uploadConfigSet(SolrQueryRequest req, SolrQueryResponse rsp) 
throws Exception {
+req = wrapParams(req,
+"action", ConfigSetParams.ConfigSetAction.UPLOAD.toString(),
+CommonParams.NAME, req.getPathTemplateValues().get("name"));
+configSetsHandler.handleRequestBody(req, rsp);
+  }
+
+  @EndPoint(method = PUT,
+  path =   "/cluster/configs/{name}",
+  permission = CONFIG_EDIT_PERM
+  )
+  public void uploadConfigSetWithOverwrite(SolrQueryRequest req, 
SolrQueryResponse rsp) throws Exception {
+req = wrapParams(req,
+"action", ConfigSetParams.ConfigSetAction.UPLOAD.toString(),
+CommonParams.NAME, req.getPathTemplateValues().get("name"),
+ConfigSetParams.OVERWRITE, true,
+ConfigSetParams.CLEANUP, 
req.getParams().getBool(ConfigSetParams.CLEANUP, false));
+configSetsHandler.handleRequestBody(req, rsp);
+  }
+
+  @EndPoint(method = POST,

Review comment:
   Would you be ok with `/cluster/configs/{configname}/files/*`? That's 
very restful, since it would be updating the `*` `file` under the 
`{configname}` `config`





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[GitHub] [lucene-solr] madrob commented on a change in pull request #1997: SOLR-14940: Add ability to remove SolrCore.closeHooks. Keep reference…

2020-10-19 Thread GitBox


madrob commented on a change in pull request #1997:
URL: https://github.com/apache/lucene-solr/pull/1997#discussion_r507825509



##
File path: solr/core/src/java/org/apache/solr/handler/ReplicationHandler.java
##
@@ -415,19 +415,15 @@ private void fetchIndex(SolrParams solrParams, 
SolrQueryResponse rsp) throws Int
   }
 
   static Long getCheckSum(Checksum checksum, File f) {
-FileInputStream fis = null;
 checksum.reset();
 byte[] buffer = new byte[1024 * 1024];
 int bytesRead;
-try {
-  fis = new FileInputStream(f);
+try (final FileInputStream fis = new FileInputStream(f)) {
   while ((bytesRead = fis.read(buffer)) >= 0)
 checksum.update(buffer, 0, bytesRead);
   return checksum.getValue();
 } catch (Exception e) {

Review comment:
   @TomMD I think this is a bug in Muse?





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[jira] [Assigned] (SOLR-14275) Policy calculations are very slow for large clusters and large operations

2020-10-19 Thread Andrzej Bialecki (Jira)


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

Andrzej Bialecki reassigned SOLR-14275:
---

Assignee: (was: Andrzej Bialecki)

> Policy calculations are very slow for large clusters and large operations
> -
>
> Key: SOLR-14275
> URL: https://issues.apache.org/jira/browse/SOLR-14275
> Project: Solr
>  Issue Type: Bug
>  Components: AutoScaling
>Affects Versions: 7.7.2, 8.4.1
>Reporter: Andrzej Bialecki
>Priority: Major
>  Labels: scaling
> Attachments: SOLR-14275.patch, scenario.txt
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> Replica placement calculations performed during collection creation take 
> extremely long time (several minutes) when using a large cluster and creating 
> a large collection (eg. 1000 nodes, 500 shards, 4 replicas).
> Profiling shows that most of the time is spent in 
> {{Row.computeCacheIfAbsent}}, which probably doesn't reuse this cache as much 
> as it should.



--
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] [Commented] (SOLR-14275) Policy calculations are very slow for large clusters and large operations

2020-10-19 Thread Andrzej Bialecki (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14275?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216804#comment-17216804
 ] 

Andrzej Bialecki commented on SOLR-14275:
-

I'm not planning to work on this anymore - any efforts to fix it would probably 
be better spent on implementing a simpler alternative placement strategy.

> Policy calculations are very slow for large clusters and large operations
> -
>
> Key: SOLR-14275
> URL: https://issues.apache.org/jira/browse/SOLR-14275
> Project: Solr
>  Issue Type: Bug
>  Components: AutoScaling
>Affects Versions: 7.7.2, 8.4.1
>Reporter: Andrzej Bialecki
>Priority: Major
>  Labels: scaling
> Attachments: SOLR-14275.patch, scenario.txt
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> Replica placement calculations performed during collection creation take 
> extremely long time (several minutes) when using a large cluster and creating 
> a large collection (eg. 1000 nodes, 500 shards, 4 replicas).
> Profiling shows that most of the time is spent in 
> {{Row.computeCacheIfAbsent}}, which probably doesn't reuse this cache as much 
> as it should.



--
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



[GitHub] [lucene-solr] TomMD commented on a change in pull request #1997: SOLR-14940: Add ability to remove SolrCore.closeHooks. Keep reference…

2020-10-19 Thread GitBox


TomMD commented on a change in pull request #1997:
URL: https://github.com/apache/lucene-solr/pull/1997#discussion_r507839162



##
File path: solr/core/src/java/org/apache/solr/handler/ReplicationHandler.java
##
@@ -415,19 +415,15 @@ private void fetchIndex(SolrParams solrParams, 
SolrQueryResponse rsp) throws Int
   }
 
   static Long getCheckSum(Checksum checksum, File f) {
-FileInputStream fis = null;
 checksum.reset();
 byte[] buffer = new byte[1024 * 1024];
 int bytesRead;
-try {
-  fis = new FileInputStream(f);
+try (final FileInputStream fis = new FileInputStream(f)) {
   while ((bytesRead = fis.read(buffer)) >= 0)
 checksum.update(buffer, 0, bytesRead);
   return checksum.getValue();
 } catch (Exception e) {

Review comment:
   @madrob Could you say more about why you think it's a bug? Do you think 
it is a false positive?  I don't have nearly the same view into the code as you 
do, so perhaps you are right but my unfamiliar reading leads me to another 
conclusion.
   
   This Muse result originates from Infer - I can get the full trace if you'd 
like but by eye I'd expect it to say:
   
   1. `fis` is allocated a new FileInputStream on line 421.
   2. The fall to `fis.read()` could throw an IO exception.
   3. There are no further references to `fis` in the code path.
   
   Notably, the prior code of `finally { IOUtils.closeQuietly(fis); }` has been 
removed.  S not only Infer, but also some prior author, believe `fis` needs 
closed and now a path exists where `fis` is not closed.
   





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[jira] [Commented] (SOLR-14940) ReplicationHandler memory leak through SolrCore.closeHooks

2020-10-19 Thread Mike Drob (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14940?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216830#comment-17216830
 ] 

Mike Drob commented on SOLR-14940:
--

This is a great find, it looks like your solution implements approach number 1? 
Do you think you would be able to add a test? I'm working on reproducing this 
locally right now.

> ReplicationHandler memory leak through SolrCore.closeHooks
> --
>
> Key: SOLR-14940
> URL: https://issues.apache.org/jira/browse/SOLR-14940
> Project: Solr
>  Issue Type: Bug
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: replication (java)
> Environment: Solr Cloud Cluster on v.8.6.2 configured as 3 TLOG nodes 
> with 2 cores in each JVM.
>  
>Reporter: Anver Sotnikov
>Priority: Major
>  Time Spent: 1h
>  Remaining Estimate: 0h
>
> We are experiencing a memory leak in Solr Cloud cluster configured as 3 TLOG 
> nodes.
> Leader does not seem to be affected while Followers are.
>  
> Looking at memory dump we noticed that SolrCore holds lots of references to 
> ReplicationHandler through anonymous inner classes in SolrCore.closeHooks, 
> which in turn holds ReplicationHandlers.
> ReplicationHandler registers hooks as anonymous inner classes in 
> SolrCore.closeHooks through ReplicationHandler.inform() -> 
> ReplicationHandler.registerCloseHook().
>  
> Whenever ZkController.stopReplicationFromLeader is called - it would shutdown 
> ReplicationHandler (ReplicationHandler.shutdown()), BUT reference to 
> ReplicationHandler will stay in SolrCore.closeHooks. Once replication is 
> started again on same SolrCore - new ReplicationHandler will be created and 
> registered in closeHooks.
>  
> It looks like there are few scenarios when replication is stopped and 
> restarted on same core and in our TLOG setup it shows up quite often.
>  
> Potential solutions:
>  # Allow unregistering SolrCore.closeHooks so it can be used from 
> ReplicationHandler.shutdown
>  # Hack but easier - break the link between ReplicationHandler close hooks 
> and full ReplicationHandler object so ReplicationHandler can be GCed even 
> when hooks are still registered in SolrCore.closeHooks



--
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] [Created] (SOLR-14947) Gradle docker build task should output image id or tag

2020-10-19 Thread Mike Drob (Jira)
Mike Drob created SOLR-14947:


 Summary: Gradle docker build task should output image id or tag
 Key: SOLR-14947
 URL: https://issues.apache.org/jira/browse/SOLR-14947
 Project: Solr
  Issue Type: Improvement
  Security Level: Public (Default Security Level. Issues are Public)
  Components: Build
Affects Versions: master (9.0)
Reporter: Mike Drob
Assignee: Houston Putman


When calling {{./gradlew docker}} it build the image, but I have no idea what 
it's called so that I can run it.

When I run with {{--info}} I get the requested output, but also a lot of other 
stuff.

{code}
Successfully built 02d86c5c7357
Successfully tagged apache/solr:9.0.0-SNAPSHOT
:solr:docker:docker (Thread[Execution worker for ':' Thread 11,5,main]) 
completed. Took 0.172 secs.
{code}

We could put some of that in a {{doLast}} block, similar to 
https://github.com/apache/lucene-solr/blob/master/gradle/releasing.gradle#L51



--
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



[GitHub] [lucene-solr] HoustonPutman merged pull request #1891: SOLR-14877: Add github action for running SolrJ tests.

2020-10-19 Thread GitBox


HoustonPutman merged pull request #1891:
URL: https://github.com/apache/lucene-solr/pull/1891


   



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[jira] [Commented] (SOLR-14877) Add github PR Action for running SolrJ tests

2020-10-19 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14877?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216870#comment-17216870
 ] 

ASF subversion and git services commented on SOLR-14877:


Commit 0746d30302e549958b32c8cedc2ade9be4e8 in lucene-solr's branch 
refs/heads/master from Houston Putman
[ https://gitbox.apache.org/repos/asf?p=lucene-solr.git;h=0746d30 ]

SOLR-14877: Add github action for running SolrJ tests. (#1891)



> Add github PR Action for running SolrJ tests
> 
>
> Key: SOLR-14877
> URL: https://issues.apache.org/jira/browse/SOLR-14877
> Project: Solr
>  Issue Type: Test
>  Components: github, SolrJ, Tests
>Affects Versions: master (9.0)
>Reporter: Houston Putman
>Assignee: Houston Putman
>Priority: Major
>  Time Spent: 1h
>  Remaining Estimate: 0h
>
> The gradle tests would only be run if the code within SolrJ is changed by the 
> PR.



--
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] [Resolved] (SOLR-14877) Add github PR Action for running SolrJ tests

2020-10-19 Thread Houston Putman (Jira)


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

Houston Putman resolved SOLR-14877.
---
Resolution: Implemented

> Add github PR Action for running SolrJ tests
> 
>
> Key: SOLR-14877
> URL: https://issues.apache.org/jira/browse/SOLR-14877
> Project: Solr
>  Issue Type: Test
>  Components: github, SolrJ, Tests
>Affects Versions: master (9.0)
>Reporter: Houston Putman
>Assignee: Houston Putman
>Priority: Major
>  Time Spent: 1h
>  Remaining Estimate: 0h
>
> The gradle tests would only be run if the code within SolrJ is changed by the 
> PR.



--
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



[GitHub] [lucene-solr] HoustonPutman commented on a change in pull request #1996: SOLR-14907: Adding V2 API for ConfigSet Upload.

2020-10-19 Thread GitBox


HoustonPutman commented on a change in pull request #1996:
URL: https://github.com/apache/lucene-solr/pull/1996#discussion_r507907209



##
File path: solr/core/src/java/org/apache/solr/handler/ClusterAPI.java
##
@@ -133,6 +134,62 @@ public void create(PayloadObj obj) 
throws Exception {
 
   }
 
+  @EndPoint(method = POST,
+  path =   "/cluster/configs/{name}",
+  permission = CONFIG_EDIT_PERM
+  )
+  public void uploadConfigSet(SolrQueryRequest req, SolrQueryResponse rsp) 
throws Exception {
+req = wrapParams(req,
+"action", ConfigSetParams.ConfigSetAction.UPLOAD.toString(),
+CommonParams.NAME, req.getPathTemplateValues().get("name"));
+configSetsHandler.handleRequestBody(req, rsp);
+  }
+
+  @EndPoint(method = PUT,
+  path =   "/cluster/configs/{name}",
+  permission = CONFIG_EDIT_PERM
+  )
+  public void uploadConfigSetWithOverwrite(SolrQueryRequest req, 
SolrQueryResponse rsp) throws Exception {
+req = wrapParams(req,
+"action", ConfigSetParams.ConfigSetAction.UPLOAD.toString(),
+CommonParams.NAME, req.getPathTemplateValues().get("name"),
+ConfigSetParams.OVERWRITE, true,
+ConfigSetParams.CLEANUP, 
req.getParams().getBool(ConfigSetParams.CLEANUP, false));
+configSetsHandler.handleRequestBody(req, rsp);
+  }
+
+  @EndPoint(method = POST,

Review comment:
   I've updated the PR to reflect this new API.





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[GitHub] [lucene-solr] dweiss commented on a change in pull request #1997: SOLR-14940: Add ability to remove SolrCore.closeHooks. Keep reference…

2020-10-19 Thread GitBox


dweiss commented on a change in pull request #1997:
URL: https://github.com/apache/lucene-solr/pull/1997#discussion_r507914155



##
File path: solr/core/src/java/org/apache/solr/handler/ReplicationHandler.java
##
@@ -415,19 +415,15 @@ private void fetchIndex(SolrParams solrParams, 
SolrQueryResponse rsp) throws Int
   }
 
   static Long getCheckSum(Checksum checksum, File f) {
-FileInputStream fis = null;
 checksum.reset();
 byte[] buffer = new byte[1024 * 1024];
 int bytesRead;
-try {
-  fis = new FileInputStream(f);
+try (final FileInputStream fis = new FileInputStream(f)) {
   while ((bytesRead = fis.read(buffer)) >= 0)
 checksum.update(buffer, 0, bytesRead);
   return checksum.getValue();
 } catch (Exception e) {

Review comment:
   This handle is always released in the finally block. I don't think an 
automated tool can "see" this from this code alone but the 
IOUtils.closeQuietly(fis); in finally ensures fis is always closed. The 
replacement try-with-resources isn't exactly the same as previous version would 
omit exceptions during close while the replacement would rethrow an exception 
during close attempt.





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[jira] [Created] (SOLR-14948) Autoscaling maxComputeOperations override causes exceptions

2020-10-19 Thread Andrzej Bialecki (Jira)
Andrzej Bialecki created SOLR-14948:
---

 Summary: Autoscaling maxComputeOperations override causes 
exceptions
 Key: SOLR-14948
 URL: https://issues.apache.org/jira/browse/SOLR-14948
 Project: Solr
  Issue Type: Bug
  Security Level: Public (Default Security Level. Issues are Public)
  Components: AutoScaling
Affects Versions: 8.6.3
Reporter: Andrzej Bialecki
Assignee: Andrzej Bialecki


The maximum number of operations to calculate in {{ComputePlanAction}} is 
estimated based on the average collection replication factor and the size of 
the cluster.

In some cases this estimate may be insufficient, and there's an override 
property that can be defined in {{autoscaling.json}} named 
{{maxComputeOperations}}. However, the code in {{ComputePlanAction}} makes and 
explicit cast to {{Integer}} whereas the value coming from a parsed JSON is of 
type {{Long}}. This results in a {{ClassCastException}} being thrown.



--
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-14948) Autoscaling maxComputeOperations override causes exceptions

2020-10-19 Thread Andrzej Bialecki (Jira)


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

Andrzej Bialecki updated SOLR-14948:

Fix Version/s: 8.8

> Autoscaling maxComputeOperations override causes exceptions
> ---
>
> Key: SOLR-14948
> URL: https://issues.apache.org/jira/browse/SOLR-14948
> Project: Solr
>  Issue Type: Bug
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: AutoScaling
>Affects Versions: 8.6.3
>Reporter: Andrzej Bialecki
>Assignee: Andrzej Bialecki
>Priority: Major
> Fix For: 8.8
>
>
> The maximum number of operations to calculate in {{ComputePlanAction}} is 
> estimated based on the average collection replication factor and the size of 
> the cluster.
> In some cases this estimate may be insufficient, and there's an override 
> property that can be defined in {{autoscaling.json}} named 
> {{maxComputeOperations}}. However, the code in {{ComputePlanAction}} makes 
> and explicit cast to {{Integer}} whereas the value coming from a parsed JSON 
> is of type {{Long}}. This results in a {{ClassCastException}} being thrown.



--
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-14948) Autoscaling maxComputeOperations override causes exceptions

2020-10-19 Thread Andrzej Bialecki (Jira)


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

Andrzej Bialecki updated SOLR-14948:

Description: 
The maximum number of operations to calculate in {{ComputePlanAction}} is 
estimated based on the average collection replication factor and the size of 
the cluster.

In some cases this estimate may be insufficient, and there's an override 
property that can be defined in {{autoscaling.json}} named 
{{maxComputeOperations}}. However, the code in {{ComputePlanAction}} makes an 
explicit cast to {{Integer}} whereas the value coming from a parsed JSON is of 
type {{Long}}. This results in a {{ClassCastException}} being thrown.

  was:
The maximum number of operations to calculate in {{ComputePlanAction}} is 
estimated based on the average collection replication factor and the size of 
the cluster.

In some cases this estimate may be insufficient, and there's an override 
property that can be defined in {{autoscaling.json}} named 
{{maxComputeOperations}}. However, the code in {{ComputePlanAction}} makes and 
explicit cast to {{Integer}} whereas the value coming from a parsed JSON is of 
type {{Long}}. This results in a {{ClassCastException}} being thrown.


> Autoscaling maxComputeOperations override causes exceptions
> ---
>
> Key: SOLR-14948
> URL: https://issues.apache.org/jira/browse/SOLR-14948
> Project: Solr
>  Issue Type: Bug
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: AutoScaling
>Affects Versions: 8.6.3
>Reporter: Andrzej Bialecki
>Assignee: Andrzej Bialecki
>Priority: Major
> Fix For: 8.8
>
>
> The maximum number of operations to calculate in {{ComputePlanAction}} is 
> estimated based on the average collection replication factor and the size of 
> the cluster.
> In some cases this estimate may be insufficient, and there's an override 
> property that can be defined in {{autoscaling.json}} named 
> {{maxComputeOperations}}. However, the code in {{ComputePlanAction}} makes an 
> explicit cast to {{Integer}} whereas the value coming from a parsed JSON is 
> of type {{Long}}. This results in a {{ClassCastException}} being thrown.



--
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] [Commented] (LUCENE-9524) NullPointerException in IndexSearcher.explain() when using ComplexPhraseQueryParser

2020-10-19 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/LUCENE-9524?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216943#comment-17216943
 ] 

ASF subversion and git services commented on LUCENE-9524:
-

Commit 0bc494e38151479065115d1ab4cd66ba21838f2a in lucene-solr's branch 
refs/heads/master from Adrien Grand
[ https://gitbox.apache.org/repos/asf?p=lucene-solr.git;h=0bc494e ]

LUCENE-9524: Fix test failure.


> NullPointerException in IndexSearcher.explain() when using 
> ComplexPhraseQueryParser
> ---
>
> Key: LUCENE-9524
> URL: https://issues.apache.org/jira/browse/LUCENE-9524
> Project: Lucene - Core
>  Issue Type: Bug
>  Components: core/queryparser, core/search
>Affects Versions: 8.6, 8.6.2
>Reporter: Michał Słomkowski
>Priority: Major
> Fix For: 8.7
>
>  Time Spent: 1.5h
>  Remaining Estimate: 0h
>
> I get NPE when I use {{IndexSearcher.explain()}}. Checked with Lucene 8.6.0
> and 8.6.2.
> The query: {{(lorem AND NOT "dolor lorem") OR ipsum}}
> The text: {{dolor lorem ipsum}}
> Stack trace:
> {code}
> java.lang.NullPointerException at 
> java.util.Objects.requireNonNull(Objects.java:203)
>   at org.apache.lucene.search.LeafSimScorer.(LeafSimScorer.java:38)
>   at 
> org.apache.lucene.search.spans.SpanWeight.explain(SpanWeight.java:160)
>   at org.apache.lucene.search.BooleanWeight.explain(BooleanWeight.java:87)
>   at org.apache.lucene.search.BooleanWeight.explain(BooleanWeight.java:87)
>   at 
> org.apache.lucene.search.IndexSearcher.explain(IndexSearcher.java:716)
>   at 
> org.apache.lucene.search.IndexSearcher.explain(IndexSearcher.java:693)
> {code}
> Minimal example code:
> {code:java}
> val analyzer = new StandardAnalyzer();
> val query = new ComplexPhraseQueryParser("", analyzer).parse(queryString);
> final MemoryIndex memoryIndex = new MemoryIndex(true);
> memoryIndex.addField("", text, analyzer);
> final IndexSearcher searcher = memoryIndex.createSearcher();
> final TopDocs topDocs = searcher.search(query, 1);
> final ScoreDoc match = topDocs.scoreDocs[0];
> searcher.explain(query, match.doc);
> {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] [Commented] (LUCENE-9524) NullPointerException in IndexSearcher.explain() when using ComplexPhraseQueryParser

2020-10-19 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/LUCENE-9524?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216942#comment-17216942
 ] 

ASF subversion and git services commented on LUCENE-9524:
-

Commit 2019433e92f3c26e3abe1b2201f4590f9dfb21be in lucene-solr's branch 
refs/heads/branch_8_7 from Adrien Grand
[ https://gitbox.apache.org/repos/asf?p=lucene-solr.git;h=2019433 ]

LUCENE-9524: Fix test failure.


> NullPointerException in IndexSearcher.explain() when using 
> ComplexPhraseQueryParser
> ---
>
> Key: LUCENE-9524
> URL: https://issues.apache.org/jira/browse/LUCENE-9524
> Project: Lucene - Core
>  Issue Type: Bug
>  Components: core/queryparser, core/search
>Affects Versions: 8.6, 8.6.2
>Reporter: Michał Słomkowski
>Priority: Major
> Fix For: 8.7
>
>  Time Spent: 1.5h
>  Remaining Estimate: 0h
>
> I get NPE when I use {{IndexSearcher.explain()}}. Checked with Lucene 8.6.0
> and 8.6.2.
> The query: {{(lorem AND NOT "dolor lorem") OR ipsum}}
> The text: {{dolor lorem ipsum}}
> Stack trace:
> {code}
> java.lang.NullPointerException at 
> java.util.Objects.requireNonNull(Objects.java:203)
>   at org.apache.lucene.search.LeafSimScorer.(LeafSimScorer.java:38)
>   at 
> org.apache.lucene.search.spans.SpanWeight.explain(SpanWeight.java:160)
>   at org.apache.lucene.search.BooleanWeight.explain(BooleanWeight.java:87)
>   at org.apache.lucene.search.BooleanWeight.explain(BooleanWeight.java:87)
>   at 
> org.apache.lucene.search.IndexSearcher.explain(IndexSearcher.java:716)
>   at 
> org.apache.lucene.search.IndexSearcher.explain(IndexSearcher.java:693)
> {code}
> Minimal example code:
> {code:java}
> val analyzer = new StandardAnalyzer();
> val query = new ComplexPhraseQueryParser("", analyzer).parse(queryString);
> final MemoryIndex memoryIndex = new MemoryIndex(true);
> memoryIndex.addField("", text, analyzer);
> final IndexSearcher searcher = memoryIndex.createSearcher();
> final TopDocs topDocs = searcher.search(query, 1);
> final ScoreDoc match = topDocs.scoreDocs[0];
> searcher.explain(query, match.doc);
> {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] [Commented] (LUCENE-9524) NullPointerException in IndexSearcher.explain() when using ComplexPhraseQueryParser

2020-10-19 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/LUCENE-9524?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216941#comment-17216941
 ] 

ASF subversion and git services commented on LUCENE-9524:
-

Commit fd4154073ab64ac7a248dc6fa1d256fc9be71063 in lucene-solr's branch 
refs/heads/branch_8x from Adrien Grand
[ https://gitbox.apache.org/repos/asf?p=lucene-solr.git;h=fd41540 ]

LUCENE-9524: Fix test failure.


> NullPointerException in IndexSearcher.explain() when using 
> ComplexPhraseQueryParser
> ---
>
> Key: LUCENE-9524
> URL: https://issues.apache.org/jira/browse/LUCENE-9524
> Project: Lucene - Core
>  Issue Type: Bug
>  Components: core/queryparser, core/search
>Affects Versions: 8.6, 8.6.2
>Reporter: Michał Słomkowski
>Priority: Major
> Fix For: 8.7
>
>  Time Spent: 1.5h
>  Remaining Estimate: 0h
>
> I get NPE when I use {{IndexSearcher.explain()}}. Checked with Lucene 8.6.0
> and 8.6.2.
> The query: {{(lorem AND NOT "dolor lorem") OR ipsum}}
> The text: {{dolor lorem ipsum}}
> Stack trace:
> {code}
> java.lang.NullPointerException at 
> java.util.Objects.requireNonNull(Objects.java:203)
>   at org.apache.lucene.search.LeafSimScorer.(LeafSimScorer.java:38)
>   at 
> org.apache.lucene.search.spans.SpanWeight.explain(SpanWeight.java:160)
>   at org.apache.lucene.search.BooleanWeight.explain(BooleanWeight.java:87)
>   at org.apache.lucene.search.BooleanWeight.explain(BooleanWeight.java:87)
>   at 
> org.apache.lucene.search.IndexSearcher.explain(IndexSearcher.java:716)
>   at 
> org.apache.lucene.search.IndexSearcher.explain(IndexSearcher.java:693)
> {code}
> Minimal example code:
> {code:java}
> val analyzer = new StandardAnalyzer();
> val query = new ComplexPhraseQueryParser("", analyzer).parse(queryString);
> final MemoryIndex memoryIndex = new MemoryIndex(true);
> memoryIndex.addField("", text, analyzer);
> final IndexSearcher searcher = memoryIndex.createSearcher();
> final TopDocs topDocs = searcher.search(query, 1);
> final ScoreDoc match = topDocs.scoreDocs[0];
> searcher.explain(query, match.doc);
> {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] [Commented] (SOLR-14942) Reduce leader election time on node shutdown

2020-10-19 Thread Chris M. Hostetter (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14942?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216948#comment-17216948
 ] 

Chris M. Hostetter commented on SOLR-14942:
---

spot check comments on skimming the diff...

 
 * every method should have javadocs, especially public ones
 * ZkController.exlectionContexts is a syncrhonized map – but the new code that 
streams over it's `values()` doesn't synchronize on it which smells like a bug?
 * if canceling & closing elections is a "slow" enough operation that it makes 
sense to parallelize them, then does it make sense to also check 
zkClient.isClosed() inside the loop, in case the client gets closed out from 
under us? (it's a cheap call, so i don't see any advantage to only checking 
once)
 * 'handler instanceof UpdateRequestHandler' feels somewhat brittle?
 ** are there other "inflight" cases where it's risky to shutdown in the middle 
of? replication? peersync? core admin?
 ** instead of hardcoding this instanceof check in HttpSolrCall would it make 
more sense to add a new 'default' method to SolrRequestHandler that 
UpdateRequestHandler (and potentially other handlers) could override to let 
them inspect the request and return true/false if it's "important" enough that 
it must be allowed to block shutdown until complete?
 *** this would also make it easier to bring back the "only block updates if 
i'm the leader" type logic  (living inside thee UpdateRequestHandler impl of 
the new method) at a later date if viable – w/o more API changes

> Reduce leader election time on node shutdown
> 
>
> Key: SOLR-14942
> URL: https://issues.apache.org/jira/browse/SOLR-14942
> Project: Solr
>  Issue Type: Improvement
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: SolrCloud
>Affects Versions: 7.7.3, 8.6.3
>Reporter: Shalin Shekhar Mangar
>Assignee: Shalin Shekhar Mangar
>Priority: Major
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> The credit for this issue and investigation belongs to [~caomanhdat]. I am 
> merely reporting the issue and creating PRs based on his work.
> The shutdown process waits for all replicas/cores to be closed before 
> removing the election node of the leader. This can take some time due to 
> index flush or merge activities on the leader cores and delays new leaders 
> from being elected.
> This process happens at CoreContainer.shutdown():
> # zkController.preClose(): remove current node from live_node and change 
> states of all cores in this node to DOWN state. Assuming that the current 
> node hosting a leader of a shard, the shard becomes leaderless after calling 
> this method, since the state of the leader is DOWN now. The leader election 
> process is not triggered for the shard since the election node is still 
> on-hold by the current node.
> # Waiting for all cores to be loaded (if there are any).
> # SolrCores.close(): close all cores.
> # zkController.close(): this is where all ephemeral nodes are removed from ZK 
> which include election nodes created by this node. Therefore other replicas 
> in the shard can take part in the leader election from now.
> Note that CoreContainer.shutdown() is invoked when Jetty/Solr nodes receive 
> SIGTERM signal. 
> On receiving SIGTERM, Jetty will also stop accepting new connections and new 
> requests. This is a very important factor, since even if the leader replica 
> is ACTIVE and its node in live_nodes, the shard will be considered as 
> leaderless if no-one can index to that shard. Therefore shards become 
> leaderless as soon as the node (which contains shard’s leader) receives 
> SIGTERM.
> Therefore the longer time step 1, 2 and 3 needed to finish, the longer shards 
> remain leaderless. The time needed for step 3 scales with the number of cores 
> so the more cores a node has, the worse. This time is spent in 
> IndexWriter.close() where the system will 
> # Flush all pending updates to disk
> # Waiting for all merge finish (this most likely is the meaty part)
> The shutdown process is proposed to changed to:
> # Wait for all in-flight indexing requests and replication requests to 
> complete
> # Remove election nodes
> # Close all replicas/cores
> This ensures that index flush or merges do not block new leader elections 
> anymore.



--
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



[GitHub] [lucene-solr] HoustonPutman opened a new pull request #2005: Add example for ConfigSet create with properties map.

2020-10-19 Thread GitBox


HoustonPutman opened a new pull request #2005:
URL: https://github.com/apache/lucene-solr/pull/2005


   The previous example in the documentation only used the less-user-friendly 
`configSetProp.` option.



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[jira] [Commented] (SOLR-14907) Support single file upload/overwrite in configSet API

2020-10-19 Thread David Smiley (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14907?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216990#comment-17216990
 ] 

David Smiley commented on SOLR-14907:
-

Why the HTTP POST/PUT distinction on "Create" vs "Update"?  A quick google 
search reveals https://restfulapi.net/rest-put-vs-post/   and it seems we 
should have only PUT.  I suppose you are trying to map overwrite=true/false to 
the restful action.  Maybe there simply is no "false" for the RESTful side... 
if you want to avoid over-writing, then see if it's there first.  Thoughts?

> Support single file upload/overwrite in configSet API
> -
>
> Key: SOLR-14907
> URL: https://issues.apache.org/jira/browse/SOLR-14907
> Project: Solr
>  Issue Type: Improvement
>  Components: configset-api
>Reporter: Houston Putman
>Assignee: Houston Putman
>Priority: Major
> Fix For: 8.7
>
>  Time Spent: 1.5h
>  Remaining Estimate: 0h
>
> After SOLR-10391 was implemented, users are now able to overwrite existing 
> configSets using the configSet API. However the files uploaded are still 
> required to be zipped and indexed from the base configSet path in ZK. Users 
> might want to just update a single file, such as a synonyms list, and not 
> have to tar it up first.
> The proposed solution is to add parameters to the UPLOAD configSet action, to 
> allow this single-file use case. This would utilize the protections already 
> provided by the API, such as maintaining the trustiness of configSets being 
> modified.
> This feature is part of the solution to replace managed resources, which is 
> planned to be deprecated and removed by 9.0 (SOLR-14766).
> The following APIs are being proposed:
> V1:
> Adding to the configSet upload one urlParam, filePath:
> "http://localhost:8983/solr/admin/configs?action=UPLOAD&name=myConfigSet&filePath=solrconfig.xml&overwrite=true";
> V2:
>  * Creating a configSet:
>  ** POST - /cluster/configs/\{name}
>  * Updating a configSet:
>  ** PUT - /cluster/configs/\{name}
>  * Creating a file in a configSet:
>  ** POST - /cluster/configs/\{name}/files/\{filename}
>  * Updating a file in a configSet:
>  ** PUT - /cluster/configs/\{name}/files/\{filename}



--
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



[GitHub] [lucene-solr] TomMD commented on a change in pull request #1997: SOLR-14940: Add ability to remove SolrCore.closeHooks. Keep reference…

2020-10-19 Thread GitBox


TomMD commented on a change in pull request #1997:
URL: https://github.com/apache/lucene-solr/pull/1997#discussion_r507963519



##
File path: solr/core/src/java/org/apache/solr/handler/ReplicationHandler.java
##
@@ -415,19 +415,15 @@ private void fetchIndex(SolrParams solrParams, 
SolrQueryResponse rsp) throws Int
   }
 
   static Long getCheckSum(Checksum checksum, File f) {
-FileInputStream fis = null;
 checksum.reset();
 byte[] buffer = new byte[1024 * 1024];
 int bytesRead;
-try {
-  fis = new FileInputStream(f);
+try (final FileInputStream fis = new FileInputStream(f)) {
   while ((bytesRead = fis.read(buffer)) >= 0)
 checksum.update(buffer, 0, bytesRead);
   return checksum.getValue();
 } catch (Exception e) {

Review comment:
   @dweiss Are we talking about the same code?  The pull request / commit 
Muse commented on actually deleted the finally block and its `closeQuietly` 
call.  [Here is the code 
analyzed](https://github.com/apache/lucene-solr/blob/c244474b2d3934a4b3d1ee2fbb419cf90605495d/solr/core/src/java/org/apache/solr/handler/ReplicationHandler.java#L421)
 which was flagged with the bug.
   
   That change was subsequently reverted by @anver-trip (commit 8a10d1b) so 
this PR no longer has the bug in the comment.  Github helpfully adds an 
"Outdated" tag to comments that are on lines which have changed, such as this 
one.
   
   Please let me know if I've misunderstood the situation or we can make things 
flow more smoothly!





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[jira] [Commented] (SOLR-14907) Support single file upload/overwrite in configSet API

2020-10-19 Thread Houston Putman (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14907?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216997#comment-17216997
 ] 

Houston Putman commented on SOLR-14907:
---

bq. I suppose you are trying to map overwrite=true/false to the restful action

Yeah that's the idea.

After reading through that though, I think you are right that PUT works best 
overall for both create & update. And users can override the "overwrite=false" 
if they so desire. Slightly awkward that the default behavior is different 
between v1 and v2, but it does make the most since with the REST API.

I'll make those changes real quick.

> Support single file upload/overwrite in configSet API
> -
>
> Key: SOLR-14907
> URL: https://issues.apache.org/jira/browse/SOLR-14907
> Project: Solr
>  Issue Type: Improvement
>  Components: configset-api
>Reporter: Houston Putman
>Assignee: Houston Putman
>Priority: Major
> Fix For: 8.7
>
>  Time Spent: 1.5h
>  Remaining Estimate: 0h
>
> After SOLR-10391 was implemented, users are now able to overwrite existing 
> configSets using the configSet API. However the files uploaded are still 
> required to be zipped and indexed from the base configSet path in ZK. Users 
> might want to just update a single file, such as a synonyms list, and not 
> have to tar it up first.
> The proposed solution is to add parameters to the UPLOAD configSet action, to 
> allow this single-file use case. This would utilize the protections already 
> provided by the API, such as maintaining the trustiness of configSets being 
> modified.
> This feature is part of the solution to replace managed resources, which is 
> planned to be deprecated and removed by 9.0 (SOLR-14766).
> The following APIs are being proposed:
> V1:
> Adding to the configSet upload one urlParam, filePath:
> "http://localhost:8983/solr/admin/configs?action=UPLOAD&name=myConfigSet&filePath=solrconfig.xml&overwrite=true";
> V2:
>  * Creating a configSet:
>  ** POST - /cluster/configs/\{name}
>  * Updating a configSet:
>  ** PUT - /cluster/configs/\{name}
>  * Creating a file in a configSet:
>  ** POST - /cluster/configs/\{name}/files/\{filename}
>  * Updating a file in a configSet:
>  ** PUT - /cluster/configs/\{name}/files/\{filename}



--
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] [Commented] (SOLR-14588) Circuit Breakers Infrastructure and Real JVM Based Circuit Breaker

2020-10-19 Thread David Smiley (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14588?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17217003#comment-17217003
 ] 

David Smiley commented on SOLR-14588:
-

The backport forgot the package-info.json, and so precommit is failing.

> Circuit Breakers Infrastructure and Real JVM Based Circuit Breaker
> --
>
> Key: SOLR-14588
> URL: https://issues.apache.org/jira/browse/SOLR-14588
> Project: Solr
>  Issue Type: Improvement
>Reporter: Atri Sharma
>Assignee: Atri Sharma
>Priority: Blocker
> Fix For: master (9.0), 8.7
>
>  Time Spent: 13h 50m
>  Remaining Estimate: 0h
>
> This Jira tracks addition of circuit breakers in the search path and 
> implements JVM based circuit breaker which rejects incoming search requests 
> if the JVM heap usage exceeds a defined percentage.



--
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



[GitHub] [lucene-solr] dsmiley commented on pull request #2002: SOLR Mark only @deprecated tag, not @Deprecated annotation

2020-10-19 Thread GitBox


dsmiley commented on pull request #2002:
URL: https://github.com/apache/lucene-solr/pull/2002#issuecomment-712359085


   @epugh I modified to include a link to 
https://cwiki.apache.org/confluence/display/SOLR/Deprecations which I think is 
easier to maintain and sufficient



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[GitHub] [lucene-solr] dweiss commented on a change in pull request #1997: SOLR-14940: Add ability to remove SolrCore.closeHooks. Keep reference…

2020-10-19 Thread GitBox


dweiss commented on a change in pull request #1997:
URL: https://github.com/apache/lucene-solr/pull/1997#discussion_r507970674



##
File path: solr/core/src/java/org/apache/solr/handler/ReplicationHandler.java
##
@@ -415,19 +415,15 @@ private void fetchIndex(SolrParams solrParams, 
SolrQueryResponse rsp) throws Int
   }
 
   static Long getCheckSum(Checksum checksum, File f) {
-FileInputStream fis = null;
 checksum.reset();
 byte[] buffer = new byte[1024 * 1024];
 int bytesRead;
-try {
-  fis = new FileInputStream(f);
+try (final FileInputStream fis = new FileInputStream(f)) {
   while ((bytesRead = fis.read(buffer)) >= 0)
 checksum.update(buffer, 0, bytesRead);
   return checksum.getValue();
 } catch (Exception e) {

Review comment:
   Ok, I'm confused then. I was looking at the closeQuietly version... 
these are not the same in what they do. Please disregard.





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[GitHub] [lucene-solr] dsmiley commented on pull request #2002: SOLR Mark only @deprecated tag, not @Deprecated annotation

2020-10-19 Thread GitBox


dsmiley commented on pull request #2002:
URL: https://github.com/apache/lucene-solr/pull/2002#issuecomment-712359499


   @chatman are you okay with what I'm doing here?



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



[jira] [Comment Edited] (LUCENE-9322) Discussing a unified vectors format API

2020-10-19 Thread Julie Tibshirani (Jira)


[ 
https://issues.apache.org/jira/browse/LUCENE-9322?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17216503#comment-17216503
 ] 

Julie Tibshirani edited comment on LUCENE-9322 at 10/19/20, 6:28 PM:
-

Thank [~sokolov] for the great PR!! I left some belated thoughts on the PR 
regarding ScoreFunction.


was (Author: jtibshirani):
Thank @msokolov for the great PR!! I left some belated thoughts on the PR 
regarding ScoreFunction.

> Discussing a unified vectors format API
> ---
>
> Key: LUCENE-9322
> URL: https://issues.apache.org/jira/browse/LUCENE-9322
> Project: Lucene - Core
>  Issue Type: New Feature
>Reporter: Julie Tibshirani
>Priority: Major
> Fix For: master (9.0)
>
>  Time Spent: 6h 10m
>  Remaining Estimate: 0h
>
> Two different approximate nearest neighbor approaches are currently being 
> developed, one based on HNSW (LUCENE-9004) and another based on coarse 
> quantization ([#LUCENE-9136]). Each prototype proposes to add a new format to 
> handle vectors. In LUCENE-9136 we discussed the possibility of a unified API 
> that could support both approaches. The two ANN strategies give different 
> trade-offs in terms of speed, memory, and complexity, and it’s likely that 
> we’ll want to support both. Vector search is also an active research area, 
> and it would be great to be able to prototype and incorporate new approaches 
> without introducing more formats.
> To me it seems like a good time to begin discussing a unified API. The 
> prototype for coarse quantization 
> ([https://github.com/apache/lucene-solr/pull/1314]) could be ready to commit 
> soon (this depends on everyone's feedback of course). The approach is simple 
> and shows solid search performance, as seen 
> [here|https://github.com/apache/lucene-solr/pull/1314#issuecomment-608645326].
>  I think this API discussion is an important step in moving that 
> implementation forward.
> The goals of the API would be
> # Support for storing and retrieving individual float vectors.
> # Support for approximate nearest neighbor search -- given a query vector, 
> return the indexed vectors that are closest to it.



--
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-14907) Support single file upload/overwrite in configSet API

2020-10-19 Thread Houston Putman (Jira)


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

Houston Putman updated SOLR-14907:
--
Description: 
After SOLR-10391 was implemented, users are now able to overwrite existing 
configSets using the configSet API. However the files uploaded are still 
required to be zipped and indexed from the base configSet path in ZK. Users 
might want to just update a single file, such as a synonyms list, and not have 
to tar it up first.

The proposed solution is to add parameters to the UPLOAD configSet action, to 
allow this single-file use case. This would utilize the protections already 
provided by the API, such as maintaining the trustiness of configSets being 
modified.

This feature is part of the solution to replace managed resources, which is 
planned to be deprecated and removed by 9.0 (SOLR-14766).

The following APIs are being proposed:

V1:

Adding to the configSet upload one urlParam, filePath:

"http://localhost:8983/solr/admin/configs?action=UPLOAD&name=myConfigSet&filePath=solrconfig.xml&overwrite=true";

V2:
 * Uploading a configSet:
 ** PUT - /cluster/configs/\{name}
 * Uploading a file in a configSet:
 ** PUT - /cluster/configs/\{name}/files/\{filename}

  was:
After SOLR-10391 was implemented, users are now able to overwrite existing 
configSets using the configSet API. However the files uploaded are still 
required to be zipped and indexed from the base configSet path in ZK. Users 
might want to just update a single file, such as a synonyms list, and not have 
to tar it up first.

The proposed solution is to add parameters to the UPLOAD configSet action, to 
allow this single-file use case. This would utilize the protections already 
provided by the API, such as maintaining the trustiness of configSets being 
modified.

This feature is part of the solution to replace managed resources, which is 
planned to be deprecated and removed by 9.0 (SOLR-14766).

The following APIs are being proposed:

V1:

Adding to the configSet upload one urlParam, filePath:

"http://localhost:8983/solr/admin/configs?action=UPLOAD&name=myConfigSet&filePath=solrconfig.xml&overwrite=true";

V2:
 * Creating a configSet:
 ** POST - /cluster/configs/\{name}
 * Updating a configSet:
 ** PUT - /cluster/configs/\{name}
 * Creating a file in a configSet:
 ** POST - /cluster/configs/\{name}/files/\{filename}
 * Updating a file in a configSet:
 ** PUT - /cluster/configs/\{name}/files/\{filename}


> Support single file upload/overwrite in configSet API
> -
>
> Key: SOLR-14907
> URL: https://issues.apache.org/jira/browse/SOLR-14907
> Project: Solr
>  Issue Type: Improvement
>  Components: configset-api
>Reporter: Houston Putman
>Assignee: Houston Putman
>Priority: Major
> Fix For: 8.7
>
>  Time Spent: 1.5h
>  Remaining Estimate: 0h
>
> After SOLR-10391 was implemented, users are now able to overwrite existing 
> configSets using the configSet API. However the files uploaded are still 
> required to be zipped and indexed from the base configSet path in ZK. Users 
> might want to just update a single file, such as a synonyms list, and not 
> have to tar it up first.
> The proposed solution is to add parameters to the UPLOAD configSet action, to 
> allow this single-file use case. This would utilize the protections already 
> provided by the API, such as maintaining the trustiness of configSets being 
> modified.
> This feature is part of the solution to replace managed resources, which is 
> planned to be deprecated and removed by 9.0 (SOLR-14766).
> The following APIs are being proposed:
> V1:
> Adding to the configSet upload one urlParam, filePath:
> "http://localhost:8983/solr/admin/configs?action=UPLOAD&name=myConfigSet&filePath=solrconfig.xml&overwrite=true";
> V2:
>  * Uploading a configSet:
>  ** PUT - /cluster/configs/\{name}
>  * Uploading a file in a configSet:
>  ** PUT - /cluster/configs/\{name}/files/\{filename}



--
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-14948) Autoscaling maxComputeOperations override causes exceptions

2020-10-19 Thread Andrzej Bialecki (Jira)


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

Andrzej Bialecki updated SOLR-14948:

Fix Version/s: (was: 8.8)
   8.7

> Autoscaling maxComputeOperations override causes exceptions
> ---
>
> Key: SOLR-14948
> URL: https://issues.apache.org/jira/browse/SOLR-14948
> Project: Solr
>  Issue Type: Bug
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: AutoScaling
>Affects Versions: 8.6.3
>Reporter: Andrzej Bialecki
>Assignee: Andrzej Bialecki
>Priority: Major
> Fix For: 8.7
>
>
> The maximum number of operations to calculate in {{ComputePlanAction}} is 
> estimated based on the average collection replication factor and the size of 
> the cluster.
> In some cases this estimate may be insufficient, and there's an override 
> property that can be defined in {{autoscaling.json}} named 
> {{maxComputeOperations}}. However, the code in {{ComputePlanAction}} makes an 
> explicit cast to {{Integer}} whereas the value coming from a parsed JSON is 
> of type {{Long}}. This results in a {{ClassCastException}} being thrown.



--
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] [Commented] (SOLR-14948) Autoscaling maxComputeOperations override causes exceptions

2020-10-19 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/SOLR-14948?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17217024#comment-17217024
 ] 

ASF subversion and git services commented on SOLR-14948:


Commit 15d2bdd28b890b7bc478ca3ae8724eb68056d8d4 in lucene-solr's branch 
refs/heads/branch_8x from Andrzej Bialecki
[ https://gitbox.apache.org/repos/asf?p=lucene-solr.git;h=15d2bdd ]

SOLR-14948: Autoscaling maxComputeOperations override causes exceptions.


> Autoscaling maxComputeOperations override causes exceptions
> ---
>
> Key: SOLR-14948
> URL: https://issues.apache.org/jira/browse/SOLR-14948
> Project: Solr
>  Issue Type: Bug
>  Security Level: Public(Default Security Level. Issues are Public) 
>  Components: AutoScaling
>Affects Versions: 8.6.3
>Reporter: Andrzej Bialecki
>Assignee: Andrzej Bialecki
>Priority: Major
> Fix For: 8.7
>
>
> The maximum number of operations to calculate in {{ComputePlanAction}} is 
> estimated based on the average collection replication factor and the size of 
> the cluster.
> In some cases this estimate may be insufficient, and there's an override 
> property that can be defined in {{autoscaling.json}} named 
> {{maxComputeOperations}}. However, the code in {{ComputePlanAction}} makes an 
> explicit cast to {{Integer}} whereas the value coming from a parsed JSON is 
> of type {{Long}}. This results in a {{ClassCastException}} being thrown.



--
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



[GitHub] [lucene-solr] yurikpanic opened a new pull request #2006: Add a unit test for a tessellator failure

2020-10-19 Thread GitBox


yurikpanic opened a new pull request #2006:
URL: https://github.com/apache/lucene-solr/pull/2006


   Tessellator fails with ` java.lang.IllegalArgumentException: Unable to 
Tessellate shape ...` exception for the polygon in the unit test.



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



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



  1   2   >