summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorunknown <sasha@mysql.sashanet.com>2001-03-01 11:49:45 -0700
committerunknown <sasha@mysql.sashanet.com>2001-03-01 11:49:45 -0700
commita9322ae00bfe74b28839f781c1281717d7058b4f (patch)
treeffa10d6efef53cfc84940c537451aceb9406e8a7
parent59eafdac11b39732b23720ff277a75ce234abc86 (diff)
parent6bb380a0ce11d55d6fbe6cf7e1b3f0404d77d17a (diff)
downloadmariadb-git-a9322ae00bfe74b28839f781c1281717d7058b4f.tar.gz
Merge work:/home/bk/mysql
into mysql.sashanet.com:/home/sasha/src/bk/mysql
-rw-r--r--mysql-test/t/bdb-crash.test33
-rw-r--r--mysql-test/t/bdb.test2
-rw-r--r--mysql-test/t/fulltext.test17
-rw-r--r--sql/field.cc2
4 files changed, 45 insertions, 9 deletions
diff --git a/mysql-test/t/bdb-crash.test b/mysql-test/t/bdb-crash.test
new file mode 100644
index 00000000000..febcfcafde4
--- /dev/null
+++ b/mysql-test/t/bdb-crash.test
@@ -0,0 +1,33 @@
+# test for bug reported by Mark Steele
+
+drop table if exists tblChange;
+CREATE TABLE tblCharge (
+ ChargeID int(10) unsigned DEFAULT '0' NOT NULL auto_increment,
+ ServiceID int(10) unsigned DEFAULT '0' NOT NULL,
+ ChargeDate date DEFAULT '0000-00-00' NOT NULL,
+ ChargeAmount decimal(20,2) DEFAULT '0.00' NOT NULL,
+ FedTaxes decimal(20,2) DEFAULT '0.00' NOT NULL,
+ ProvTaxes decimal(20,2) DEFAULT '0.00' NOT NULL,
+ ChargeStatus enum('New','Auth','Unauth','Sale','Denied','Refund')
+DEFAULT 'New' NOT NULL,
+ ChargeAuthorizationMessage text,
+ ChargeComment text,
+ ChargeTimeStamp varchar(20),
+ PRIMARY KEY (ChargeID),
+ KEY ServiceID (ServiceID),
+ KEY ChargeDate (ChargeDate)
+) type=BDB;
+
+BEGIN;
+INSERT INTO tblCharge
+VALUES(NULL,1,CURRENT_DATE(),1,1,1,'New',NULL,NULL,UNIX_TIMESTAMP(NOW()));
+COMMIT;
+
+BEGIN;
+UPDATE tblCharge SET ChargeAuthorizationMessage = 'blablabla' WHERE
+ChargeID = 1;
+COMMIT;
+
+INSERT INTO tblCharge
+VALUES(NULL,1,CURRENT_DATE(),1,1,1,'New',NULL,NULL,UNIX_TIMESTAMP(NOW()));
+drop table tblCharge;
diff --git a/mysql-test/t/bdb.test b/mysql-test/t/bdb.test
index b3bb76dee34..72fbbe1dafa 100644
--- a/mysql-test/t/bdb.test
+++ b/mysql-test/t/bdb.test
@@ -428,3 +428,5 @@ select * from t1 where i=1 and j=2;
create index ax1 on t1 (i,j);
select * from t1 where i=1 and j=2;
drop table t1;
+
+
diff --git a/mysql-test/t/fulltext.test b/mysql-test/t/fulltext.test
index 555c543664e..29c115f2bdd 100644
--- a/mysql-test/t/fulltext.test
+++ b/mysql-test/t/fulltext.test
@@ -48,8 +48,8 @@ drop table t1,t2;
# check for bug reported by Stephan Skusa
-drop table if exists fulltextTEST;
-CREATE TABLE fulltextTEST (
+drop table if exists t1;
+CREATE TABLE t1 (
field1 varchar(40) NOT NULL,
field2 varchar(20) NOT NULL,
field3 varchar(40) NOT NULL,
@@ -57,9 +57,10 @@ CREATE TABLE fulltextTEST (
FULLTEXT idx_fulltext (field1, field2, field3)
);
-INSERT INTO fulltextTEST VALUES ( 'test1', 'test1.1', 'test1.1.1');
-INSERT INTO fulltextTEST VALUES ( 'test2', 'test2.1', 'test2.1.1');
-select *
-from fulltextTEST
-where MATCH (field1,field2,field3) AGAINST (NULL);
-drop table fulltextTEST;
+INSERT INTO t1 VALUES ( 'test1', 'test1.1', 'test1.1.1');
+INSERT INTO t1 VALUES ( 'test2', 'test2.1', 'test2.1.1');
+#select *
+#from t1
+#where MATCH (field1,field2,field3) AGAINST (NULL);
+drop table t1;
+
diff --git a/sql/field.cc b/sql/field.cc
index 17717b14649..a5eca021695 100644
--- a/sql/field.cc
+++ b/sql/field.cc
@@ -4075,8 +4075,8 @@ char *Field_blob::pack(char *to, const char *from, uint max_length)
const char *Field_blob::unpack(char *to, const char *from)
{
memcpy(to,from,packlength);
+ ulong length=get_length(from);
from+=packlength;
- ulong length=get_length();
if (length)
memcpy_fixed(to+packlength, &from, sizeof(from));
else