[jira] Created: (LUCENE-2292) ByteBuffer Directory - allowing to store the index outside the heap

2010-03-02 Thread Shay Banon (JIRA)
ByteBuffer Directory - allowing to store the index outside the heap
---

 Key: LUCENE-2292
 URL: https://issues.apache.org/jira/browse/LUCENE-2292
 Project: Lucene - Java
  Issue Type: New Feature
  Components: Store
Reporter: Shay Banon


A byte buffer based directory with the benefit of being able to create direct 
byte buffer thus storing the index outside the JVM heap.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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



[jira] Updated: (LUCENE-2292) ByteBuffer Directory - allowing to store the index outside the heap

2010-03-02 Thread Shay Banon (JIRA)

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

Shay Banon updated LUCENE-2292:
---

Attachment: LUCENE-2292.patch

 ByteBuffer Directory - allowing to store the index outside the heap
 ---

 Key: LUCENE-2292
 URL: https://issues.apache.org/jira/browse/LUCENE-2292
 Project: Lucene - Java
  Issue Type: New Feature
  Components: Store
Reporter: Shay Banon
 Attachments: LUCENE-2292.patch


 A byte buffer based directory with the benefit of being able to create direct 
 byte buffer thus storing the index outside the JVM heap.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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



[jira] Commented: (LUCENE-2292) ByteBuffer Directory - allowing to store the index outside the heap

2010-03-02 Thread Shay Banon (JIRA)

[ 
https://issues.apache.org/jira/browse/LUCENE-2292?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=12840379#action_12840379
 ] 

Shay Banon commented on LUCENE-2292:


Hi,

 looks interesting as a replacement for RAMDirectory.

This class uses ByteBuffer, which has its overhead over simple byte[], though 
using the same logic (if you verify it) can be used to improve the concurrency 
in RAMDirectory (just use byte[[).

 Your patch uses a sun. internal package. If you want to do something 
 similar to MMapDirectory to release the buffer without waiting for GC, do it 
 in the same way using reflection like in MMapDirectory.

From what I know, it was there in all JDKs I worked with (its like 
sun.misc.Unsafe). Have you seen otherwise? If so, its a simple change (though 
I am not sure about the access control thingy in MMapDirectory, its a 
performance killer, and caching of the Method(s) make sense).

   

 ByteBuffer Directory - allowing to store the index outside the heap
 ---

 Key: LUCENE-2292
 URL: https://issues.apache.org/jira/browse/LUCENE-2292
 Project: Lucene - Java
  Issue Type: New Feature
  Components: Store
Reporter: Shay Banon
 Attachments: LUCENE-2292.patch


 A byte buffer based directory with the benefit of being able to create direct 
 byte buffer thus storing the index outside the JVM heap.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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



[jira] Updated: (LUCENE-2292) ByteBuffer Directory - allowing to store the index outside the heap

2010-03-02 Thread Shay Banon (JIRA)

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

Shay Banon updated LUCENE-2292:
---

Attachment: LUCENE-2292.patch

Attached new patch, does not use sun.* package. I still cache Method since 
cleaning a buffer is not only done on close of the directory.

 ByteBuffer Directory - allowing to store the index outside the heap
 ---

 Key: LUCENE-2292
 URL: https://issues.apache.org/jira/browse/LUCENE-2292
 Project: Lucene - Java
  Issue Type: New Feature
  Components: Store
Reporter: Shay Banon
 Attachments: LUCENE-2292.patch, LUCENE-2292.patch


 A byte buffer based directory with the benefit of being able to create direct 
 byte buffer thus storing the index outside the JVM heap.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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



[jira] Commented: (LUCENE-2292) ByteBuffer Directory - allowing to store the index outside the heap

2010-03-02 Thread Shay Banon (JIRA)

[ 
https://issues.apache.org/jira/browse/LUCENE-2292?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=12840394#action_12840394
 ] 

Shay Banon commented on LUCENE-2292:


By the way, an implementation note. I thought about preallocating a large 
direct buffer and then splicing it into chunks, but currently I think that the 
complexity (and overhead in maintaining splicing locations) is not really 
needed and the current caching should do the trick (with the ability to control 
both the buffer size and the cache size).

 ByteBuffer Directory - allowing to store the index outside the heap
 ---

 Key: LUCENE-2292
 URL: https://issues.apache.org/jira/browse/LUCENE-2292
 Project: Lucene - Java
  Issue Type: New Feature
  Components: Store
Reporter: Shay Banon
 Attachments: LUCENE-2292.patch, LUCENE-2292.patch


 A byte buffer based directory with the benefit of being able to create direct 
 byte buffer thus storing the index outside the JVM heap.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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



[jira] Created: (LUCENE-1637) Getting an IndexReader from a committed IndexWriter

2009-05-14 Thread Shay Banon (JIRA)
Getting an IndexReader from a committed IndexWriter
---

 Key: LUCENE-1637
 URL: https://issues.apache.org/jira/browse/LUCENE-1637
 Project: Lucene - Java
  Issue Type: Improvement
  Components: Index
Affects Versions: 2.9
Reporter: Shay Banon


I just had a look at the job done in IndexWriter in order to get an IndexReader 
with all the current ongoing changes done using the IndexWriter. This feature 
is very useful, and I was wondering if another feature, which (I think) is 
simple to implement (compared to the previous one) might make sense. 

   Many times, an application opens an IndexWriter, does whatever changes it 
does, and then commits the changes. It would be nice to get an IndexReader 
(read only one is fine) that corresponds to the committed (or even closed) 
IndexWriter. This will allow for a cache of IndexReader that is already used to 
be updated with a fresh IndexReader, without the need to reopen one (which 
should be slower than opening one based on the IndexWriter information). The 
main difference is the fact that the mentioned IndexReader could still be 
reopened without the need to throw an AlreadyClosedException. 

   More information can be found here: 
http://www.nabble.com/Getting-an-IndexReader-from-a-committed-IndexWriter-td23551978.html

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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



[jira] Commented: (LUCENE-1239) IndexWriter deadlock when using ConcurrentMergeScheduler

2008-03-18 Thread Shay Banon (JIRA)

[ 
https://issues.apache.org/jira/browse/LUCENE-1239?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=12579874#action_12579874
 ] 

Shay Banon commented on LUCENE-1239:


Yea, it looks like it is my bad, great catch!. While trying to create a better 
scheduler (at least in terms of reusing threads instead of creating them), I 
wondered if there is a chance that the current scheduler can be enhanced to 
support an extension point for that... . I can give such a refactoring a go if 
you think it make sense.

 IndexWriter deadlock when using ConcurrentMergeScheduler
 

 Key: LUCENE-1239
 URL: https://issues.apache.org/jira/browse/LUCENE-1239
 Project: Lucene - Java
  Issue Type: Bug
  Components: Index
Affects Versions: 2.3.1
 Environment: Compass 2.0.0M3 (nightly build #57), Lucene 2.3.1, 
 Spring Framework 2.0.7.0
Reporter: Michael Lossos
Assignee: Michael McCandless

 I'm trying to update our application from Compass 2.0.0M1 with Lucene 2.2 to 
 Compass 2.0.0M3 (latest build) with Lucene 2.3.1. I'm holding all other 
 things constant and only changing the Compass and Lucene jars. I'm recreating 
 the search index for our data and seeing deadlock in Lucene's IndexWriter. It 
 appears to be waiting on a signal from the merge thread. I've tried creating 
 a simple reproduction case for this but to no avail.
 Doing the exact same steps with Compass 2.0.0M1 and Lucene 2.2 has no 
 problems and recreates our search index. That is to say, it's not our code.
 In particular, the main thread performing the commit (Lucene document save) 
 from Compass is calling Lucene's IndexWriter.optimize(). We're using 
 Compass's ExecutorMergeScheduler to handle the merging, and it is calling 
 IndexWriter.merge(). The main thread in IndexWriter.optimize() enters the 
 wait() at the bottom of that method and is never notified. I can't tell if 
 this is because optimizeMergesPending() is returning true incorrectly, or if 
 IndexWriter.merge()'s notifyAll() is being called prematurely. Looking at the 
 code, it doesn't seem possible for IndexWriter.optimize() to be waiting and 
 miss a notifyAll(), and Lucene's IndexWriter.merge() was recently fixed to 
 always call notifyAll() even on exceptions -- that is all the relevant 
 IndexWriter code looks properly synchronized. Nevertheless, I'm seeing the 
 deadlock behavior described, and it's reproducible using our app and our test 
 data set.
 Could someone familiar with IndexWriter's synchronization code take another 
 look at it? I'm sorry that I can't give you a simple reproduction test case.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[jira] Updated: (LUCENE-511) New BufferedIndexOutput optimization fails to update bufferStart

2006-03-02 Thread Shay Banon (JIRA)
 [ http://issues.apache.org/jira/browse/LUCENE-511?page=all ]

Shay Banon updated LUCENE-511:
--

Attachment: BufferedIndexOutput.java

 New BufferedIndexOutput optimization fails to update bufferStart
 

  Key: LUCENE-511
  URL: http://issues.apache.org/jira/browse/LUCENE-511
  Project: Lucene - Java
 Type: Bug
   Components: Store
 Versions: 1.9
 Reporter: Shay Banon
 Priority: Critical
  Attachments: BufferedIndexOutput.java, RAMOutputTest.java

 New BufferIndexOutput optimization of writeBytes fails to update bufferStart 
 under some conditions. Test case and fix attached.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]