summaryrefslogtreecommitdiff
path: root/sql/handler.h
diff options
context:
space:
mode:
authorAlexey Botchkov <holyfoot@askmonty.org>2017-12-18 01:55:40 +0400
committerAlexey Botchkov <holyfoot@askmonty.org>2017-12-18 01:55:40 +0400
commit0acac4fe5fd6d8fab9f13859219f46842153803b (patch)
tree3a4bf0caaf81d6248fa581912630da6f1ea46133 /sql/handler.h
parent1b5f0cbd465f92ffc278a924e765e41413d97420 (diff)
downloadmariadb-git-0acac4fe5fd6d8fab9f13859219f46842153803b.tar.gz
MDEV-14593 human-readable XA RECOVER.
The 'data' field in the XA RECOVER resultset changed to be charset_bin. It seems to me right and also --binary-as-hex starts working. The XA RECOVER FORMAT='SQL' option implemented. It returns the XID string that fits to be an argument for the XA ... statements.
Diffstat (limited to 'sql/handler.h')
-rw-r--r--sql/handler.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/sql/handler.h b/sql/handler.h
index 9ada2ccbe7c..9941462da8d 100644
--- a/sql/handler.h
+++ b/sql/handler.h
@@ -652,6 +652,15 @@ struct xid_t {
};
typedef struct xid_t XID;
+/*
+ The size of XID string representation in the form
+ 'gtrid', 'bqual', formatID
+ see xid_t::get_sql_string() for details.
+*/
+#define SQL_XIDSIZE (XIDDATASIZE * 2 + 8 + MY_INT64_NUM_DECIMAL_DIGITS)
+/* The 'buf' has to have space for at least SQL_XIDSIZE bytes. */
+uint get_sql_xid(XID *xid, char *buf);
+
/* for recover() handlerton call */
#define MIN_XID_LIST_SIZE 128
#define MAX_XID_LIST_SIZE (1024*128)