You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Mike Matrigali (JIRA)" <de...@db.apache.org> on 2006/09/19 07:35:23 UTC
[jira] Updated: (DERBY-1854) SYSCS_COMPRESS_TABLE corrupts table
with a single column which is both a primary key and a foreign key
[ http://issues.apache.org/jira/browse/DERBY-1854?page=all ]
Mike Matrigali updated DERBY-1854:
----------------------------------
Fix Version/s: 10.2.1.0
This one seems pretty serious since it looks like you basically lose your table if you do it, making it a candidate for 10.2. I don't think it is a regression. I have not had time to look at it. If I had to guess it has the feel of a problem
with 2 indexes defined on the same column where the catalogs fudge it and make it look like 2 different indexes but in reality there is only one. And then when compress table does a "bait and switch" trying to replace all tables and indexes it gets confused. My guess is that this is a problem at the upper layer and not store.
> SYSCS_COMPRESS_TABLE corrupts table with a single column which is both a primary key and a foreign key
> ------------------------------------------------------------------------------------------------------
>
> Key: DERBY-1854
> URL: http://issues.apache.org/jira/browse/DERBY-1854
> Project: Derby
> Issue Type: Bug
> Components: Store
> Affects Versions: 10.1.3.0, 10.1.3.1
> Environment: Reproduced on Linux, Win2k, and WinXP running JDK 1.4.2.x
> Reporter: Chad Loder
> Priority: Critical
> Fix For: 10.2.1.0
>
>
> Running the following short SQL script from ij will cause an error "ERROR XSAI2: The conglomerate (817) requested does not exist.". It appears that the SYSCS_COMPRESS_TABLE function corrupts tables that have a single column which is both a primary key and a foreign key.
> connect 'jdbc:derby:/testdb;create=true';
> CREATE TABLE users (
> user_id INT NOT NULL GENERATED BY DEFAULT AS IDENTITY,
> user_login VARCHAR(255) NOT NULL,
> PRIMARY KEY (user_id));
> CREATE TABLE admins (
> user_id INT NOT NULL,
> PRIMARY KEY (user_id),
> CONSTRAINT admin_uid_fk FOREIGN KEY (user_id) REFERENCES users (user_id));
>
> INSERT INTO users (user_login) VALUES('TEST1');
> INSERT INTO admins VALUES (VALUES IDENTITY_VAL_LOCAL());
> CALL SYSCS_UTIL.SYSCS_COMPRESS_TABLE('APP', 'ADMINS', 0);
> SELECT * from admins;
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira