Below is the list of changes that have just been committed into a local
4.1 repository of serg. When serg does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://www.mysql.com/doc/I/n/Installing_source_tree.html
ChangeSet
1.1615 03/08/21 18:30:43 serg@stripped +7 -0
use crc32() from bundled zlib if system zlib is unavailable
mysys/my_crc32.c
1.1 03/08/21 18:30:39 serg@stripped +36 -0
sql/lex.h
1.121 03/08/21 18:30:39 serg@stripped +0 -2
previous patch cleanup
sql/item_strfunc.h
1.67 03/08/21 18:30:39 serg@stripped +20 -20
previous patch cleanup
sql/item_strfunc.cc
1.137 03/08/21 18:30:39 serg@stripped +3 -16
previous patch cleanup
sql/item_create.h
1.30 03/08/21 18:30:39 serg@stripped +0 -2
previous patch cleanup
mysys/my_crc32.c
1.0 03/08/21 18:30:39 serg@stripped +0 -0
BitKeeper file /usr/home/serg/Abk/mysql-4.1/mysys/my_crc32.c
mysys/Makefile.am
1.46 03/08/21 18:30:38 serg@stripped +1 -1
use crc32() from bundled zlib if system zlib is unavailable
include/my_sys.h
1.104 03/08/21 18:30:38 serg@stripped +2 -1
use crc32() from bundled zlib if system zlib is unavailable
# This is a BitKeeper patch. What follows are the unified diffs for the
# set of deltas contained in the patch. The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User: serg
# Host: serg.mylan
# Root: /usr/home/serg/Abk/mysql-4.1
--- 1.103/include/my_sys.h Tue Aug 5 21:14:11 2003
+++ 1.104/include/my_sys.h Thu Aug 21 18:30:38 2003
@@ -753,8 +753,9 @@
extern byte *my_compress_alloc(const byte *packet, ulong *len, ulong *complen);
extern ha_checksum my_checksum(ha_checksum crc, const byte *mem, uint count);
extern uint my_bit_log2(ulong value);
-uint my_count_bits(ulonglong v);
+extern uint my_count_bits(ulonglong v);
extern void my_sleep(ulong m_seconds);
+extern ulong crc32(ulong crc, const uchar *buf, uint len);
#ifdef __WIN__
extern my_bool have_tcpip; /* Is set if tcpip is used */
--- 1.45/mysys/Makefile.am Tue Feb 4 20:52:10 2003
+++ 1.46/mysys/Makefile.am Thu Aug 21 18:30:38 2003
@@ -29,7 +29,7 @@
mf_path.c mf_loadpath.c\
my_open.c my_create.c my_dup.c my_seek.c my_read.c \
my_pread.c my_write.c \
- mf_keycache.c \
+ mf_keycache.c my_crc32.c \
mf_iocache.c mf_iocache2.c mf_cache.c mf_tempfile.c \
mf_tempdir.c my_lock.c mf_brkhant.c my_alarm.c \
my_malloc.c my_realloc.c my_once.c mulalloc.c \
--- 1.29/sql/item_create.h Mon Jul 14 10:54:17 2003
+++ 1.30/sql/item_create.h Thu Aug 21 18:30:39 2003
@@ -33,9 +33,7 @@
Item *create_func_conv(Item* a, Item *b, Item *c);
Item *create_func_cos(Item* a);
Item *create_func_cot(Item* a);
-#ifdef HAVE_COMPRESS
Item *create_func_crc32(Item* a);
-#endif
Item *create_func_date_format(Item* a,Item *b);
Item *create_func_dayname(Item* a);
Item *create_func_dayofmonth(Item* a);
--- 1.136/sql/item_strfunc.cc Thu Aug 21 16:15:02 2003
+++ 1.137/sql/item_strfunc.cc Thu Aug 21 18:30:39 2003
@@ -2561,9 +2561,6 @@
return uint4korr(res->c_ptr()) & 0x3FFFFFFF;
}
-#ifdef HAVE_COMPRESS
-#include "zlib.h"
-
longlong Item_func_crc32::val_int()
{
String *res=args[0]->val_str(&value);
@@ -2573,21 +2570,11 @@
return 0; /* purecov: inspected */
}
null_value=0;
- return (longlong) crc32(0L, (Bytef*)res->ptr(), res->length());
+ return (longlong) crc32(0L, (uchar*)res->ptr(), res->length());
}
-longlong Item_func_uncompressed_length::val_int()
-{
- String *res= args[0]->val_str(&value);
- if (!res)
- {
- null_value=1;
- return 0; /* purecov: inspected */
- }
- null_value=0;
- if (res->is_empty()) return 0;
- return uint4korr(res->c_ptr()) & 0x3FFFFFFF;
-}
+#ifdef HAVE_COMPRESS
+#include "zlib.h"
String *Item_func_compress::val_str(String *str)
{
--- 1.66/sql/item_strfunc.h Thu Aug 21 16:15:02 2003
+++ 1.67/sql/item_strfunc.h Thu Aug 21 18:30:39 2003
@@ -630,6 +630,26 @@
};
};
+class Item_func_crc32 :public Item_int_func
+{
+ String value;
+public:
+ Item_func_crc32(Item *a) :Item_int_func(a) {}
+ const char *func_name() const { return "crc32"; }
+ void fix_length_and_dec() { max_length=10; }
+ longlong val_int();
+};
+
+class Item_func_uncompressed_length : public Item_int_func
+{
+ String value;
+public:
+ Item_func_uncompressed_length(Item *a):Item_int_func(a){}
+ const char *func_name() const{return "uncompressed_length";}
+ void fix_length_and_dec() { max_length=10; }
+ longlong val_int();
+};
+
#ifdef HAVE_COMPRESS
#define ZLIB_DEPENDED_FUNCTION ;
#else
@@ -654,25 +674,5 @@
void fix_length_and_dec(){max_length= MAX_BLOB_WIDTH;}
const char *func_name() const{return "uncompress";}
String *val_str(String *) ZLIB_DEPENDED_FUNCTION
-};
-
-class Item_func_crc32 :public Item_int_func
-{
- String value;
-public:
- Item_func_crc32(Item *a) :Item_int_func(a) {}
- const char *func_name() const { return "crc32"; }
- void fix_length_and_dec() { max_length=10; }
- longlong val_int() ZLIB_DEPENDED_FUNCTION
-};
-
-class Item_func_uncompressed_length : public Item_int_func
-{
- String value;
-public:
- Item_func_uncompressed_length(Item *a):Item_int_func(a){}
- const char *func_name() const{return "uncompressed_length";}
- void fix_length_and_dec() { max_length=10; }
- longlong val_int();
};
--- 1.120/sql/lex.h Mon Aug 11 21:42:42 2003
+++ 1.121/sql/lex.h Thu Aug 21 18:30:39 2003
@@ -472,9 +472,7 @@
{ "COUNT", SYM(COUNT_SYM),0,0},
{ "COS", SYM(FUNC_ARG1),0,CREATE_FUNC(create_func_cos)},
{ "COT", SYM(FUNC_ARG1),0,CREATE_FUNC(create_func_cot)},
-#ifdef HAVE_COMPRESS
{ "CRC32", SYM(FUNC_ARG1),0,CREATE_FUNC(create_func_crc32)},
-#endif
{ "CROSSES", SYM(FUNC_ARG2),0,CREATE_FUNC(create_func_crosses)},
{ "CURDATE", SYM(CURDATE),0,0},
{ "CURTIME", SYM(CURTIME),0,0},
--- New file ---
+++ mysys/my_crc32.c 03/08/21 18:30:39
/* Copyright (C) 2003 MySQL AB
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; either version 2 of the License, or
(at your option) any later version.
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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
#include "mysys_priv.h"
#ifndef HAVE_COMPRESS
/* minimal set of defines for using crc32() from zlib codebase */
#define _ZLIB_H
#define ZEXPORT
#define Z_NULL 0
#define OF(args) args
#undef DYNAMIC_CRC_TABLE
typedef uchar Byte;
typedef uchar Bytef;
typedef uint uInt;
typedef ulong uLong;
typedef ulong uLongf;
#include "../zlib/crc32.c"
#endif
| Thread |
|---|
| • bk commit into 4.1 tree (1.1615) | Sergei Golubchik | 21 Aug |