Package com.salesforce.phoenix.iterate.OrderedResultIterator

Examples of com.salesforce.phoenix.iterate.OrderedResultIterator.ResultEntry


                    writeBuffer = fc.map(MapMode.READ_WRITE, writeIndex, mappingSize);
               
                    int resSize = results.size();
                    for (int i = 0; i < resSize; i++) {               
                        int totalLen = 0;
                        ResultEntry re = results.pollFirst();
                        List<KeyValue> keyValues = toKeyValues(re);
                        for (KeyValue kv : keyValues) {
                            totalLen += (kv.getLength() + Bytes.SIZEOF_INT);
                        }
                        writeBuffer.putInt(totalLen);
View Full Code Here


        public IndexedResultEntry getNextResult() throws IOException {
            if (isClosed)
                return null;
           
            if (!flushBuffer) {
                ResultEntry re = results.poll();
                if (re == null) {
                    reachedEnd();
                    return null;
                }
                return new IndexedResultEntry(index, re);
            }
           
            if (readBuffer == null) {
                readBuffer = this.fc.map(MapMode.READ_ONLY, readIndex, mappingSize);
            }
           
            int length = readBuffer.getInt();
            if (length < 0) {
                reachedEnd();
                return null;
            }
           
            byte[] rb = new byte[length];
            readBuffer.get(rb);
            Result result = new Result(new ImmutableBytesWritable(rb));
            ResultTuple rt = new ResultTuple(result);
            int sortKeySize = readBuffer.getInt();
            ImmutableBytesWritable[] sortKeys = new ImmutableBytesWritable[sortKeySize];
            for (int i = 0; i < sortKeySize; i++) {
                int contentLength = readBuffer.getInt();
                if (contentLength > 0) {
                    byte[] sortKeyContent = new byte[contentLength];
                    readBuffer.get(sortKeyContent);
                    sortKeys[i] = new ImmutableBytesWritable(sortKeyContent);
                } else {
                    sortKeys[i] = null;
                }
            }
            // buffer close to exhausted, re-map.
            if (mappingSize - readBuffer.position() < maxResultSize) {
                readIndex += readBuffer.position();
                readBuffer = fc.map(MapMode.READ_ONLY, readIndex, mappingSize);
            }
           
            return new IndexedResultEntry(index, new ResultEntry(sortKeys, rt));
        }
View Full Code Here

TOP

Related Classes of com.salesforce.phoenix.iterate.OrderedResultIterator.ResultEntry

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.