Commit 438f11ef authored by unknown's avatar unknown
Browse files

Merge msvensson@bk-internal.mysql.com:/home/bk/mysql-4.1

into neptunus.(none):/home/magnus/mysql-4.1

parents 84e2df6d 94a1e482
Loading
Loading
Loading
Loading
+31 −0
Original line number Diff line number Diff line
DROP TABLE IF EXISTS t2;
CREATE TABLE t2 (
a bigint unsigned NOT NULL PRIMARY KEY,
b int unsigned not null,
c int unsigned
) engine=ndbcluster;
select count(*) from t2;
count(*)
10000
delete from t2 limit 1;
select count(*) from t2;
count(*)
9999
delete from t2 limit 100;
select count(*) from t2;
count(*)
9899
delete from t2 limit 1000;
select count(*) from t2;
count(*)
8899
update t2 set c=12345678 limit 100;
select count(*) from t2 where c=12345678;
count(*)
100
select count(*) from t2 where c=12345678 limit 1000;
count(*)
100
select * from t2 limit 0;
a	b	c
drop table t2;
+14 −0
Original line number Diff line number Diff line
DROP TABLE IF EXISTS t2;
CREATE TABLE t2 (
a bigint unsigned NOT NULL PRIMARY KEY,
b int unsigned not null,
c int unsigned
) engine=ndbcluster;
select count(*) from t2;
count(*)
5000
truncate table t2;
select count(*) from t2;
count(*)
0
drop table t2;
+44 −0
Original line number Diff line number Diff line
-- source include/have_ndb.inc

--disable_warnings
DROP TABLE IF EXISTS t2;
--enable_warnings


CREATE TABLE t2 (
  a bigint unsigned NOT NULL PRIMARY KEY,
  b int unsigned not null,
  c int unsigned
) engine=ndbcluster;


#
# insert records into table
#
let $1=1000;
disable_query_log;
while ($1)
{
 eval insert into t2 values($1*10, $1+9, 5*$1), ($1*10+1, $1+10, 7),($1*10+2, $1+10, 7*$1), ($1*10+3, $1+10, 10+$1), ($1*10+4, $1+10, 70*$1), ($1*10+5, $1+10, 7), ($1*10+6, $1+10, 9), ($1*10+7, $1+299, 899), ($1*10+8, $1+10, 12), ($1*10+9, $1+10, 14*$1);
 dec $1;
}
enable_query_log;

select count(*) from t2;

delete from t2 limit 1;
select count(*) from t2;

delete from t2 limit 100;
select count(*) from t2;

delete from t2 limit 1000;
select count(*) from t2;

update t2 set c=12345678 limit 100;
select count(*) from t2 where c=12345678;
select count(*) from t2 where c=12345678 limit 1000;

select * from t2 limit 0;

drop table t2;
+33 −0
Original line number Diff line number Diff line
-- source include/have_ndb.inc

--disable_warnings
DROP TABLE IF EXISTS t2;
--enable_warnings


CREATE TABLE t2 (
  a bigint unsigned NOT NULL PRIMARY KEY,
  b int unsigned not null,
  c int unsigned
) engine=ndbcluster;


#
# insert records into table
#
let $1=500;
disable_query_log;
while ($1)
{
 eval insert into t2 values($1*10, $1+9, 5*$1), ($1*10+1, $1+10, 7),($1*10+2, $1+10, 7*$1), ($1*10+3, $1+10, 10+$1), ($1*10+4, $1+10, 70*$1), ($1*10+5, $1+10, 7), ($1*10+6, $1+10, 9), ($1*10+7, $1+299, 899), ($1*10+8, $1+10, 12), ($1*10+9, $1+10, 14*$1);
 dec $1;
}
enable_query_log;

select count(*) from t2;

truncate table t2;

select count(*) from t2;

drop table t2;
+14 −0
Original line number Diff line number Diff line
@@ -1937,11 +1937,25 @@ int ha_ndbcluster::rnd_init(bool scan)
int ha_ndbcluster::close_scan()
{
  NdbResultSet *cursor= m_active_cursor;
  NdbConnection *trans= m_active_trans;
  DBUG_ENTER("close_scan");

  if (!cursor)
    DBUG_RETURN(1);

  
  if (ops_pending)
  {
    /*
      Take over any pending transactions to the 
      deleteing/updating transaction before closing the scan    
    */
    DBUG_PRINT("info", ("ops_pending: %d", ops_pending));    
    if (trans->execute(NoCommit) != 0)
      DBUG_RETURN(ndb_err(trans));
    ops_pending= 0;
  }
  
  cursor->close();
  m_active_cursor= NULL;
  DBUG_RETURN(0);
Loading