Search in sources :

Example 6 with MetastoreDataRecord

use of org.apache.ignite.internal.pagemem.wal.record.MetastoreDataRecord in project ignite by apache.

the class MetaStorage method putData.

/**
 */
public void putData(String key, byte[] data) throws IgniteCheckedException {
    if (!readOnly) {
        WALPointer ptr = wal.log(new MetastoreDataRecord(key, data));
        wal.fsync(ptr);
        synchronized (this) {
            MetastorageDataRow oldRow = tree.findOne(new MetastorageDataRow(key, null));
            if (oldRow != null) {
                tree.removex(oldRow);
                tree.rowStore().removeRow(oldRow.link());
            }
            MetastorageDataRow row = new MetastorageDataRow(key, data);
            tree.rowStore().addRow(row);
            tree.put(row);
        }
    }
}
Also used : MetastoreDataRecord(org.apache.ignite.internal.pagemem.wal.record.MetastoreDataRecord) WALPointer(org.apache.ignite.internal.pagemem.wal.WALPointer)

Aggregations

MetastoreDataRecord (org.apache.ignite.internal.pagemem.wal.record.MetastoreDataRecord)6 DataRecord (org.apache.ignite.internal.pagemem.wal.record.DataRecord)4 CheckpointRecord (org.apache.ignite.internal.pagemem.wal.record.CheckpointRecord)3 DataEntry (org.apache.ignite.internal.pagemem.wal.record.DataEntry)3 PageSnapshot (org.apache.ignite.internal.pagemem.wal.record.PageSnapshot)3 DataPageInsertFragmentRecord (org.apache.ignite.internal.pagemem.wal.record.delta.DataPageInsertFragmentRecord)3 DataPageInsertRecord (org.apache.ignite.internal.pagemem.wal.record.delta.DataPageInsertRecord)3 DataPageUpdateRecord (org.apache.ignite.internal.pagemem.wal.record.delta.DataPageUpdateRecord)3 MetaPageUpdatePartitionDataRecord (org.apache.ignite.internal.pagemem.wal.record.delta.MetaPageUpdatePartitionDataRecord)3 PartitionMetaStateRecord (org.apache.ignite.internal.pagemem.wal.record.delta.PartitionMetaStateRecord)3 UUID (java.util.UUID)2 WALPointer (org.apache.ignite.internal.pagemem.wal.WALPointer)2 LazyDataEntry (org.apache.ignite.internal.pagemem.wal.record.LazyDataEntry)2 MemoryRecoveryRecord (org.apache.ignite.internal.pagemem.wal.record.MemoryRecoveryRecord)2 DataPageRemoveRecord (org.apache.ignite.internal.pagemem.wal.record.delta.DataPageRemoveRecord)2 DataPageSetFreeListPageRecord (org.apache.ignite.internal.pagemem.wal.record.delta.DataPageSetFreeListPageRecord)2 FixCountRecord (org.apache.ignite.internal.pagemem.wal.record.delta.FixCountRecord)2 FixLeftmostChildRecord (org.apache.ignite.internal.pagemem.wal.record.delta.FixLeftmostChildRecord)2 FixRemoveId (org.apache.ignite.internal.pagemem.wal.record.delta.FixRemoveId)2 InitNewPageRecord (org.apache.ignite.internal.pagemem.wal.record.delta.InitNewPageRecord)2