1/*****************************************************************************
2
3Copyright (c) 1995, 2016, Oracle and/or its affiliates. All Rights Reserved.
4
5This program is free software; you can redistribute it and/or modify it under
6the terms of the GNU General Public License as published by the Free Software
7Foundation; version 2 of the License.
8
9This program is distributed in the hope that it will be useful, but WITHOUT
10ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
12
13You should have received a copy of the GNU General Public License along with
14this program; if not, write to the Free Software Foundation, Inc.,
1551 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
16
17*****************************************************************************/
18
19/*
20 * Start of xa.h header
21 *
22 * Define a symbol to prevent multiple inclusions of this header file
23 */
24#ifndef XA_H
25#define XA_H
26
27#include "handler.h"
28
29/*
30 * Transaction branch identification: XID and NULLXID:
31 */
32#ifndef XIDDATASIZE
33
34/** Sizes of transaction identifier */
35#define XIDDATASIZE 128 /*!< maximum size of a transaction
36 identifier, in bytes */
37#define MAXGTRIDSIZE 64 /*!< maximum size in bytes of gtrid */
38#define MAXBQUALSIZE 64 /*!< maximum size in bytes of bqual */
39
40#endif
41/** X/Open XA distributed transaction status codes */
42/* @{ */
43#define XA_OK 0 /*!< normal execution */
44#define XAER_ASYNC -2 /*!< asynchronous operation already
45 outstanding */
46#define XAER_RMERR -3 /*!< a resource manager error
47 occurred in the transaction
48 branch */
49#define XAER_NOTA -4 /*!< the XID is not valid */
50#define XAER_INVAL -5 /*!< invalid arguments were given */
51#define XAER_PROTO -6 /*!< routine invoked in an improper
52 context */
53#define XAER_RMFAIL -7 /*!< resource manager unavailable */
54#define XAER_DUPID -8 /*!< the XID already exists */
55#define XAER_OUTSIDE -9 /*!< resource manager doing
56 work outside transaction */
57/* @} */
58#endif /* ifndef XA_H */
59/*
60 * End of xa.h header
61 */
62