summaryrefslogtreecommitdiff
path: root/qpid/cpp/src/qpid/linearstore/jrnl/txn_hdr.h
diff options
context:
space:
mode:
Diffstat (limited to 'qpid/cpp/src/qpid/linearstore/jrnl/txn_hdr.h')
-rw-r--r--qpid/cpp/src/qpid/linearstore/jrnl/txn_hdr.h125
1 files changed, 0 insertions, 125 deletions
diff --git a/qpid/cpp/src/qpid/linearstore/jrnl/txn_hdr.h b/qpid/cpp/src/qpid/linearstore/jrnl/txn_hdr.h
deleted file mode 100644
index 94b812ccec..0000000000
--- a/qpid/cpp/src/qpid/linearstore/jrnl/txn_hdr.h
+++ /dev/null
@@ -1,125 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-/**
- * \file txn_hdr.h
- *
- * Qpid asynchronous store plugin library
- *
- * File containing code for class mrg::journal::txn_hdr (transaction
- * record header), used to start a transaction (commit or abort) record.
- *
- * \author Kim van der Riet
- */
-
-#ifndef QPID_LEGACYSTORE_JRNL_TXN_HDR_H
-#define QPID_LEGACYSTORE_JRNL_TXN_HDR_H
-
-#include <cstddef>
-#include "qpid/legacystore/jrnl/rec_hdr.h"
-
-namespace mrg
-{
-namespace journal
-{
-
-#pragma pack(1)
-
- /**
- * \brief Struct for transaction commit and abort records.
- *
- * Struct for DTX commit and abort records. Only the magic distinguishes between them. Since
- * this record must be used in the context of a valid XID, the xidsize field must not be zero.
- * Immediately following this record is the XID itself which is xidsize bytes long, followed by
- * a rec_tail.
- *
- * Note that this record had its own rid distinct from the rids of the record(s) making up the
- * transaction it is committing or aborting.
- *
- * Record header info in binary format (24 bytes):
- * <pre>
- * 0 7
- * +---+---+---+---+---+---+---+---+ -+
- * | magic | v | e | flags | |
- * +---+---+---+---+---+---+---+---+ | struct hdr
- * | rid | |
- * +---+---+---+---+---+---+---+---+ -+
- * | xidsize |
- * +---+---+---+---+---+---+---+---+
- * v = file version (If the format or encoding of this file changes, then this
- * number should be incremented)
- * e = endian flag, false (0x00) for little endian, true (0x01) for big endian
- * </pre>
- *
- * Note that journal files should be transferable between 32- and 64-bit
- * hardware of the same endianness, but not between hardware of opposite
- * entianness without some sort of binary conversion utility. Thus buffering
- * will be needed for types that change size between 32- and 64-bit compiles.
- */
- struct txn_hdr : rec_hdr
- {
-#if defined(JRNL_BIG_ENDIAN) && defined(JRNL_32_BIT)
- u_int32_t _filler0; ///< Big-endian filler for 32-bit size_t
-#endif
- std::size_t _xidsize; ///< XID size
-#if defined(JRNL_LITTLE_ENDIAN) && defined(JRNL_32_BIT)
- u_int32_t _filler0; ///< Little-endian filler for 32-bit size_t
-#endif
-
- /**
- * \brief Default constructor, which sets all values to 0.
- */
- txn_hdr(): rec_hdr(),
-#if defined(JRNL_BIG_ENDIAN) && defined(JRNL_32_BIT)
- _filler0(0),
-#endif
- _xidsize(0)
-#if defined(JRNL_LITTLE_ENDIAN) && defined(JRNL_32_BIT)
- , _filler0(0)
-#endif
- {}
-
- /**
- * \brief Convenience constructor which initializes values during construction.
- */
- txn_hdr(const u_int32_t magic, const u_int8_t version, const u_int64_t rid,
- const std::size_t xidsize, const bool owi): rec_hdr(magic, version, rid, owi),
-#if defined(JRNL_BIG_ENDIAN) && defined(JRNL_32_BIT)
- _filler0(0),
-#endif
- _xidsize(xidsize)
-#if defined(JRNL_LITTLE_ENDIAN) && defined(JRNL_32_BIT)
- , _filler0(0)
-#endif
- {}
-
- /**
- * \brief Returns the size of the header in bytes.
- */
- inline static std::size_t size() { return sizeof(txn_hdr); }
- };
-
-#pragma pack()
-
-} // namespace journal
-} // namespace mrg
-
-#endif // ifndef QPID_LEGACYSTORE_JRNL_TXN_HDR_H