Author: jukka
Date: Tue Nov 26 15:54:01 2013
New Revision: 1545696
URL: http://svn.apache.org/r1545696
Log:
OAK-1184: Uploading large number of files to single folder fails.
Need to flush already when refcount reaches SEGMENT_REFERENCE_LIMIT,
not just when it exceeds it. Otherwise there's a conflict on the 0xff
refid used for the current segment.
Modified:
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/SegmentWriter.java
Modified:
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/SegmentWriter.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/SegmentWriter.java?rev=1545696&r1=1545695&r2=1545696&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/SegmentWriter.java
(original)
+++
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/SegmentWriter.java
Tue Nov 26 15:54:01 2013
@@ -230,7 +230,7 @@ public class SegmentWriter {
int segmentSize = headerSize + refCount * 16 + recordSize + length;
if (segmentSize > buffer.length - 1
|| rootCount > 0xffff
- || refCount > Segment.SEGMENT_REFERENCE_LIMIT) {
+ || refCount >= Segment.SEGMENT_REFERENCE_LIMIT) {
flush();
}