Examples of releasePage()


Examples of org.chaidb.db.index.btree.bufmgr.PageBufferManager.releasePage()

            byte[] oldData = ByteTool.copyByteArray(curDataNode.getPage().getPage(), curDataNode.getNodeOffset(), (int) curDataNode.getNodeSpace());
            byte[] data = new byte[8];
            ByteTool.intToBytes(data, 0, nextNodePos.getOffsetInPage());
            ByteTool.intToBytes(data, 4, nextNodePos.getPageNo());
            curDataNode.storeNode(data, oldData, kContext);
            buffer.releasePage(btree.getBtreeId(), nodePos.getPageNo(), true);
        } catch (ChaiDBException e) {
            logger.error(e);
            buffer.releasePage(btree.getBtreeId(), nodePos.getPageNo(), false);
        }
    }
View Full Code Here

Examples of org.chaidb.db.index.btree.bufmgr.PageBufferManager.releasePage()

            ByteTool.intToBytes(data, 4, nextNodePos.getPageNo());
            curDataNode.storeNode(data, oldData, kContext);
            buffer.releasePage(btree.getBtreeId(), nodePos.getPageNo(), true);
        } catch (ChaiDBException e) {
            logger.error(e);
            buffer.releasePage(btree.getBtreeId(), nodePos.getPageNo(), false);
        }
    }

    protected void removeOneNode(NodePosition prevNodeNextPos, NodeInfo curNode, NodePosition nextNodePos) {
        if (prevNodeNextPos == null || prevNodeNextPos.equals(curNode.nodePosition)) {
View Full Code Here

Examples of org.chaidb.db.index.btree.bufmgr.PageBufferManager.releasePage()

                        if (cache.size() > 0) {
                            pageCount++;
                        }
                        if (pageCount < page) {
                            nPageNo = bulkNextNodePos.getPageNo();
                            buffer.releasePage(id, dupPageNumber, false);
                            dupPageNumber = new PageNumber(nPageNo);
                            dupDataPage = new DataPage(id, dupPageNumber, btreeSpec, buffer);
                        }
                    }
                } else {
View Full Code Here

Examples of org.chaidb.db.index.btree.bufmgr.PageBufferManager.releasePage()

                }
            }
        } catch (ChaiDBException e) {
            logger.error(e);
        } finally {
            buffer.releasePage(id, dupPageNumber, false);
        }
        return Collections.unmodifiableList(cache);
    }

}
View Full Code Here

Examples of org.chaidb.db.index.btree.bufmgr.PageBufferManager.releasePage()

                    return node;
                } else if ((ret & DUP_NEXT) == DUP_NEXT) {
                    node.nodePosition = node.nodeNextPosition;
                    if (node.nodeNextPosition.getPageNo() != curPageNo) {
                        curPageNo = node.nodeNextPosition.getPageNo();
                        buffer.releasePage(id, dupPageNumber, false);
                        dupPageNumber = new PageNumber(curPageNo);
                        dupDataPage = new DataPage(id, dupPageNumber, btreeSpec, buffer);
                    }
                } else {
                    logger.error("Failed to get next dup node.");
View Full Code Here

Examples of org.chaidb.db.index.btree.bufmgr.PageBufferManager.releasePage()

                }
            }
        } catch (ChaiDBException e) {
            logger.error(e);
        } finally {
            buffer.releasePage(id, dupPageNumber, false);
        }

        return null;
    }
View Full Code Here

Examples of org.chaidb.db.index.btree.bufmgr.PageBufferManager.releasePage()

        try {
            //lock the page pointed by this node
            DataPage dataPage = new DataPage(page.getBtreeSpec().btree.getBtreeId(), pageNumber, page.getBtreeSpec(), page.getBuffer());
            data = new DataNode(dataPage, dataNodeOffset).getData();
            PageBufferManager buffer = page.getBuffer();
            buffer.releasePage(pageNumber.getTreeId(), pageNumber, false);
            return data;
        } catch (ChaiDBException e) {
            String details = page.pageNumber.toHexString() + " of " + page.getBtreeSpec().btree.getBTreeName();
            logger.error(details);
            throw e;
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.