forked from mysql/mysql-server
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
WL#7440: Moving binlog event decoding into separate package
This patch remove all files that are not part of the decoder files and that will only be available in the Binlog Events repository.
- Loading branch information
Mats Kindahl
committed
Oct 13, 2014
1 parent
173fa3a
commit d7e7655
Showing
27 changed files
with
236 additions
and
1,658 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,69 @@ | ||
/* Copyright (c) 2014 Oracle and/or its affiliates. All rights reserved. | ||
This program is free software; you can redistribute it and/or modify | ||
it under the terms of the GNU General Public License as published by | ||
the Free Software Foundation; version 2 of the License. | ||
This program is distributed in the hope that it will be useful, | ||
but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
GNU General Public License for more details. | ||
You should have received a copy of the GNU General Public License | ||
along with this program; if not, write to the Free Software | ||
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ | ||
|
||
/** | ||
@file binary_log_types.h | ||
@brief Functions and types that are used to compute information | ||
about date and time values. | ||
@note This file can be imported both from C and C++ code, so the | ||
definitions have to be constructed to support this. | ||
*/ | ||
|
||
#ifndef BINARY_LOG_TYPES_INCLUDED | ||
#define BINARY_LOG_TYPES_INCLUDED | ||
|
||
#ifdef __cplusplus | ||
extern "C" | ||
{ | ||
#endif | ||
|
||
/* | ||
* Constants exported from this package. | ||
*/ | ||
|
||
typedef enum enum_field_types { | ||
MYSQL_TYPE_DECIMAL, MYSQL_TYPE_TINY, | ||
MYSQL_TYPE_SHORT, MYSQL_TYPE_LONG, | ||
MYSQL_TYPE_FLOAT, MYSQL_TYPE_DOUBLE, | ||
MYSQL_TYPE_NULL, MYSQL_TYPE_TIMESTAMP, | ||
MYSQL_TYPE_LONGLONG,MYSQL_TYPE_INT24, | ||
MYSQL_TYPE_DATE, MYSQL_TYPE_TIME, | ||
MYSQL_TYPE_DATETIME, MYSQL_TYPE_YEAR, | ||
MYSQL_TYPE_NEWDATE, MYSQL_TYPE_VARCHAR, | ||
MYSQL_TYPE_BIT, | ||
MYSQL_TYPE_TIMESTAMP2, | ||
MYSQL_TYPE_DATETIME2, | ||
MYSQL_TYPE_TIME2, | ||
MYSQL_TYPE_NEWDECIMAL=246, | ||
MYSQL_TYPE_ENUM=247, | ||
MYSQL_TYPE_SET=248, | ||
MYSQL_TYPE_TINY_BLOB=249, | ||
MYSQL_TYPE_MEDIUM_BLOB=250, | ||
MYSQL_TYPE_LONG_BLOB=251, | ||
MYSQL_TYPE_BLOB=252, | ||
MYSQL_TYPE_VAR_STRING=253, | ||
MYSQL_TYPE_STRING=254, | ||
MYSQL_TYPE_GEOMETRY=255 | ||
} enum_field_types; | ||
|
||
#define DATETIME_MAX_DECIMALS 6 | ||
|
||
#ifdef __cplusplus | ||
} | ||
#endif // __cplusplus | ||
|
||
#endif /* BINARY_LOG_TYPES_INCLUDED */ |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,65 @@ | ||
/* | ||
* Functions exported from this package. | ||
*/ | ||
|
||
#ifndef BINARY_LOG_FUNCS_INCLUDED | ||
#define BINARY_LOG_FUNCS_INCLUDED | ||
|
||
#include "binary_log_types.h" | ||
|
||
// We use cstdint if this is 2011 standard (or later) | ||
#if __cplusplus > 201100L | ||
#include <cstdint> | ||
#else | ||
#include <stdint.h> | ||
#endif | ||
|
||
#ifdef __cplusplus | ||
extern "C" | ||
{ | ||
#endif | ||
|
||
unsigned int my_time_binary_length(unsigned int dec); | ||
unsigned int my_datetime_binary_length(unsigned int dec); | ||
unsigned int my_timestamp_binary_length(unsigned int dec); | ||
|
||
/** | ||
This helper function calculates the size in bytes of a particular field in a | ||
row type event as defined by the field_ptr and metadata_ptr arguments. | ||
@param column_type Field type code | ||
@param field_ptr The field data | ||
@param metadata_ptr The field metadata | ||
@note We need the actual field data because the string field size is not | ||
part of the meta data. :( | ||
@return The size in bytes of a particular field | ||
*/ | ||
uint32_t calc_field_size(unsigned char column_type, const unsigned char *field_ptr, | ||
unsigned int metadata); | ||
|
||
|
||
/** | ||
Compute the maximum display length of a field. | ||
@param sql_type Type of the field | ||
@param metadata The metadata from the master for the field. | ||
@return Maximum length of the field in bytes. | ||
*/ | ||
unsigned int max_display_length_for_field(enum_field_types sql_type, | ||
unsigned int metadata); | ||
|
||
/** | ||
Returns the size of array to hold a binary representation of a decimal | ||
@param precision number of significant digits in a particular radix R | ||
where R is either 2 or 10. | ||
@param scale to what position to round. | ||
@return size in bytes | ||
*/ | ||
int decimal_binary_size(int precision, int scale); | ||
|
||
#ifdef __cplusplus | ||
} | ||
#endif // __cplusplus | ||
|
||
#endif /* BINARY_LOG_FUNCS_INCLUDED */ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
/** | ||
Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved. | ||
This program is free software; you can redistribute it and/or modify | ||
it under the terms of the GNU General Public License as published by | ||
the Free Software Foundation; version 2 of the License. | ||
This program is distributed in the hope that it will be useful, | ||
but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
GNU General Public License for more details. | ||
You should have received a copy of the GNU General Public License | ||
along with this program; if not, write to the Free Software | ||
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ | ||
|
||
#ifndef BAPI_CONFIG_INCLUDED | ||
#define BAPI_CONFIG_INCLUDED | ||
/* Headers we may use */ | ||
#define HAVE_STDINT_H 1 | ||
#define HAVE_ENDIAN_H 1 | ||
/* Symbols we may use */ | ||
/* #undef IS_BIG_ENDIAN */ | ||
#define HAVE_LE64TOH 1 | ||
#define HAVE_LE32TOH 1 | ||
#define HAVE_LE16TOH 1 | ||
#define HAVE_STRNDUP 1 | ||
#define HAVE_ENDIAN_CONVERSION_MACROS 1 | ||
#define SIZEOF_LONG_LONG 8 | ||
#define HAVE_LONG_LONG 1 | ||
#define SIZEOF_LONG 4 | ||
#define HAVE_LONG 1 | ||
#define SIZEOF_INT 4 | ||
#define HAVE_INT 1 | ||
|
||
#endif |
Oops, something went wrong.