Author: schor Date: Sat Dec 30 17:05:41 2017 New Revision: 1819631 URL: http://svn.apache.org/viewvc?rev=1819631&view=rev Log: [UIMA-5683] array size calc for v2
Modified: uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/CASImpl.java uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/BooleanArray.java uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/ByteArray.java uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/DoubleArray.java uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/FSArray.java uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/FloatArray.java uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/IntegerArray.java uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/LongArray.java uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/ShortArray.java uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/StringArray.java Modified: uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/CASImpl.java URL: http://svn.apache.org/viewvc/uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/CASImpl.java?rev=1819631&r1=1819630&r2=1819631&view=diff ============================================================================== --- uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/CASImpl.java (original) +++ uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/CASImpl.java Sat Dec 30 17:05:41 2017 @@ -786,7 +786,9 @@ public class CASImpl extends AbstractCas private int getNextFsId(TOP fs) { if (reuseId != 0) { // for pear use // l.setStrongRef(fs, reuseId); - return reuseId; // reuseId reset to 0 by callers' try/finally block + int r = reuseId; + reuseId = 0; + return r; // reuseId reset to 0 by callers' try/finally block } // l.add(fs); @@ -1053,6 +1055,18 @@ public class CASImpl extends AbstractCas svd.id2fs.put(fs); } + void set_reuseId(int id) { + svd.reuseId = id; + } + + void setLastUsedFsId(int id) { + svd.fsIdGenerator = id; + } + + void setLastFsV2Size(int size) { + svd.lastFsV2Size = size; + } + void addSofaViewName(String id) { svd.sofaNameSet.add(id); } @@ -4696,10 +4710,14 @@ public class CASImpl extends AbstractCas return svd.getNextFsId(fs); } - public void adjustLastFsV2size(int arrayLength) { + public void adjustLastFsV2Size_arrays(int arrayLength) { svd.lastFsV2Size += 1 + arrayLength; // 1 is for array length value } + public void adjustLastFsV2size_nonHeapStoredArrays() { + svd.lastFsV2Size += 2; // length and index into other special heap + } + /** * Test case use * @param fss the FSs to include in the id 2 fs map Modified: uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/BooleanArray.java URL: http://svn.apache.org/viewvc/uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/BooleanArray.java?rev=1819631&r1=1819630&r2=1819631&view=diff ============================================================================== --- uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/BooleanArray.java (original) +++ uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/BooleanArray.java Sat Dec 30 17:05:41 2017 @@ -78,7 +78,7 @@ public final class BooleanArray extends _casView.traceFSCreate(this); } if (_casView.isId2Fs()) { - _casView.adjustLastFsV2size(2); // space for length and ref + _casView.adjustLastFsV2size_nonHeapStoredArrays(); } } @@ -95,7 +95,7 @@ public final class BooleanArray extends _casView.traceFSCreate(this); } if (_casView.isId2Fs()) { - _casView.adjustLastFsV2size(2); // space for length and ref + _casView.adjustLastFsV2size_nonHeapStoredArrays(); } } Modified: uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/ByteArray.java URL: http://svn.apache.org/viewvc/uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/ByteArray.java?rev=1819631&r1=1819630&r2=1819631&view=diff ============================================================================== --- uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/ByteArray.java (original) +++ uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/ByteArray.java Sat Dec 30 17:05:41 2017 @@ -74,7 +74,7 @@ public final class ByteArray extends TOP _casView.traceFSCreate(this); } if (_casView.isId2Fs()) { - _casView.adjustLastFsV2size(2); // space for length and ref + _casView.adjustLastFsV2size_nonHeapStoredArrays(); } } @@ -92,7 +92,7 @@ public final class ByteArray extends TOP _casView.traceFSCreate(this); } if (_casView.isId2Fs()) { - _casView.adjustLastFsV2size(2); // space for length and ref + _casView.adjustLastFsV2size_nonHeapStoredArrays(); } } Modified: uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/DoubleArray.java URL: http://svn.apache.org/viewvc/uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/DoubleArray.java?rev=1819631&r1=1819630&r2=1819631&view=diff ============================================================================== --- uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/DoubleArray.java (original) +++ uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/DoubleArray.java Sat Dec 30 17:05:41 2017 @@ -79,7 +79,7 @@ public final class DoubleArray extends T _casView.traceFSCreate(this); } if (_casView.isId2Fs()) { - _casView.adjustLastFsV2size(2); // space for length and ref + _casView.adjustLastFsV2size_nonHeapStoredArrays(); } } @@ -97,7 +97,7 @@ public final class DoubleArray extends T _casView.traceFSCreate(this); } if (_casView.isId2Fs()) { - _casView.adjustLastFsV2size(2); // space for length and ref + _casView.adjustLastFsV2size_nonHeapStoredArrays(); } } Modified: uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/FSArray.java URL: http://svn.apache.org/viewvc/uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/FSArray.java?rev=1819631&r1=1819630&r2=1819631&view=diff ============================================================================== --- uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/FSArray.java (original) +++ uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/FSArray.java Sat Dec 30 17:05:41 2017 @@ -88,7 +88,7 @@ public final class FSArray<T extends Fea _casView.traceFSCreate(this); } if (_casView.isId2Fs()) { - _casView.adjustLastFsV2size(length); + _casView.adjustLastFsV2Size_arrays(length); } } @@ -108,7 +108,7 @@ public final class FSArray<T extends Fea _casView.traceFSCreate(this); } if (_casView.isId2Fs()) { - _casView.adjustLastFsV2size(length); + _casView.adjustLastFsV2Size_arrays(length); } } Modified: uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/FloatArray.java URL: http://svn.apache.org/viewvc/uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/FloatArray.java?rev=1819631&r1=1819630&r2=1819631&view=diff ============================================================================== --- uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/FloatArray.java (original) +++ uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/FloatArray.java Sat Dec 30 17:05:41 2017 @@ -76,7 +76,7 @@ public final class FloatArray extends TO _casView.traceFSCreate(this); } if (_casView.isId2Fs()) { - _casView.adjustLastFsV2size(length); + _casView.adjustLastFsV2Size_arrays(length); } } @@ -94,7 +94,7 @@ public final class FloatArray extends TO _casView.traceFSCreate(this); } if (_casView.isId2Fs()) { - _casView.adjustLastFsV2size(length); + _casView.adjustLastFsV2Size_arrays(length); } } Modified: uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/IntegerArray.java URL: http://svn.apache.org/viewvc/uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/IntegerArray.java?rev=1819631&r1=1819630&r2=1819631&view=diff ============================================================================== --- uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/IntegerArray.java (original) +++ uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/IntegerArray.java Sat Dec 30 17:05:41 2017 @@ -78,7 +78,7 @@ public final class IntegerArray extends _casView.traceFSCreate(this); } if (_casView.isId2Fs()) { - _casView.adjustLastFsV2size(length); + _casView.adjustLastFsV2Size_arrays(length); } } @@ -96,7 +96,7 @@ public final class IntegerArray extends _casView.traceFSCreate(this); } if (_casView.isId2Fs()) { - _casView.adjustLastFsV2size(length); + _casView.adjustLastFsV2Size_arrays(length); } } Modified: uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/LongArray.java URL: http://svn.apache.org/viewvc/uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/LongArray.java?rev=1819631&r1=1819630&r2=1819631&view=diff ============================================================================== --- uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/LongArray.java (original) +++ uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/LongArray.java Sat Dec 30 17:05:41 2017 @@ -79,7 +79,7 @@ public final class LongArray extends TOP _casView.traceFSCreate(this); } if (_casView.isId2Fs()) { - _casView.adjustLastFsV2size(2); // space for length and ref + _casView.adjustLastFsV2size_nonHeapStoredArrays(); } } @@ -97,7 +97,7 @@ public final class LongArray extends TOP _casView.traceFSCreate(this); } if (_casView.isId2Fs()) { - _casView.adjustLastFsV2size(2); // space for length and ref + _casView.adjustLastFsV2size_nonHeapStoredArrays(); } } Modified: uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/ShortArray.java URL: http://svn.apache.org/viewvc/uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/ShortArray.java?rev=1819631&r1=1819630&r2=1819631&view=diff ============================================================================== --- uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/ShortArray.java (original) +++ uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/ShortArray.java Sat Dec 30 17:05:41 2017 @@ -74,7 +74,7 @@ public final class ShortArray extends TO _casView.traceFSCreate(this); } if (_casView.isId2Fs()) { - _casView.adjustLastFsV2size(2); // space for length and ref + _casView.adjustLastFsV2size_nonHeapStoredArrays(); } } @@ -92,7 +92,7 @@ public final class ShortArray extends TO _casView.traceFSCreate(this); } if (_casView.isId2Fs()) { - _casView.adjustLastFsV2size(2); // space for length and ref + _casView.adjustLastFsV2size_nonHeapStoredArrays(); } } Modified: uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/StringArray.java URL: http://svn.apache.org/viewvc/uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/StringArray.java?rev=1819631&r1=1819630&r2=1819631&view=diff ============================================================================== --- uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/StringArray.java (original) +++ uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/jcas/cas/StringArray.java Sat Dec 30 17:05:41 2017 @@ -76,7 +76,7 @@ public final class StringArray extends T _casView.traceFSCreate(this); } if (_casView.isId2Fs()) { - _casView.adjustLastFsV2size(length); + _casView.adjustLastFsV2Size_arrays(length); } } @@ -94,7 +94,7 @@ public final class StringArray extends T _casView.traceFSCreate(this); } if (_casView.isId2Fs()) { - _casView.adjustLastFsV2size(length); + _casView.adjustLastFsV2Size_arrays(length); } }