Update of /cvsroot/monetdb/sql/src/test/BugTracker-2010/Tests
In directory 
sfp-cvsdas-1.v30.ch3.sourceforge.com:/tmp/cvs-serv21586/src/test/BugTracker-2010/Tests

Added Files:
        corrupted_values_after_updates.SF-2938065.sql 
Log Message:
propagated changes of Sunday Jan 24 2010 - Tuesday Jan 26 2010
from the Feb2010 branch to the development trunk

  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  2010/01/24 - nielsnes:
          
src/test/BugTracker-2010/Tests/corrupted_values_after_updates.SF-2938065.sql,1.1.2.1
  added test for bug showing problems with varheap
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


--- NEW FILE: corrupted_values_after_updates.SF-2938065.sql ---
CREATE TABLE change (
    new_value VARCHAR(32),
    old_value VARCHAR(32),
    name VARCHAR(32),
    PRIMARY KEY (name,old_value)
);
CREATE TABLE base (
    value VARCHAR(32),
    name VARCHAR(32),
    state INTEGER DEFAULT 0,
    PRIMARY KEY (name)
);
CREATE TABLE edit (
    value VARCHAR(32),
    name VARCHAR(32),
    state INTEGER DEFAULT 0,
    PRIMARY KEY (name)
);
INSERT
    INTO base (name,value)
    SELECT 'token1','initial';
INSERT
    INTO edit (value,name,state)
    SELECT value,name,-1
        FROM base
        WHERE state=0;
DELETE
    FROM base
    WHERE EXISTS (
        SELECT true
            FROM edit
            WHERE base.name=edit.name
    )
;
INSERT
    INTO base (value,name,state)
    SELECT value,name,state
    FROM edit;
DELETE
    FROM edit;
INSERT
    INTO change (new_value,old_value,name)
    SELECT 'modified','initial','token1';
INSERT
    INTO edit (value,name,state)
    SELECT max(
            new_value
        ),base.name,0
        FROM base,change
        WHERE base.name=change.name
        AND base.value=old_value
        AND NOT new_value='modified'
        GROUP BY base.name,state;
INSERT
    INTO edit (value,name,state)
    SELECT max(
            new_value
        ),base.name,state
        FROM base,change
        WHERE base.name=change.name
        AND base.value=old_value
        AND new_value='modified'
        GROUP BY base.name,state;
DELETE
    FROM base
    WHERE EXISTS (
        SELECT true
            FROM edit
            WHERE base.name=edit.name
    )
;
INSERT
    INTO base (value,name,state)
    SELECT value,name,state
        FROM edit;
SELECT *
    FROM base;


------------------------------------------------------------------------------
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
_______________________________________________
Monetdb-sql-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-sql-checkins

Reply via email to