View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0002298 | SymmetricDS | Bug | public | 2015-05-15 08:54 | 2024-11-20 20:11 |
Reporter | msc | Assigned To | elong | ||
Priority | normal | ||||
Status | resolved | Resolution | fixed | ||
Product Version | 3.7.16 | ||||
Target Version | 3.15.11 | Fixed in Version | 3.15.11 | ||
Summary | 0002298: DDL detection of a default value for real/float column type on the Interbase is wrong | ||||
Description | i'm try to send ddl+data (initial load) from interbase to postgresql servers. But for some tables the ddl was wrongly detected from the interbase server. [postgres3] - DefaultDatabaseWriter - About to create table using the following definition: <?xml version="1.0"?> <!DOCTYPE database SYSTEM "http://db.apache.org/torque/dtd/database"> <database name="dataextractor" schema="afa_ib_import"> <table name="UMSATZ_VP"> <column name="MANR" primaryKey="true" required="true" type="INTEGER" size="0"> <platform-column name="interbase" type="INTEGER" size="10"/> </column> <column name="EH" type="REAL" size="7" default="default 0"> <platform-column name="interbase" type="FLOAT" size="7" default="default 0"/> </column> <column name="EH50" type="REAL" size="7" default="default 0"> <platform-column name="interbase" type="FLOAT" size="7" default="default 0"/> </column> <column name="EH25" type="REAL" size="7" default="default 0"> <platform-column name="interbase" type="FLOAT" size="7" default="default 0"/> </column> <column name="EH20" type="REAL" size="7" default="default 0"> <platform-column name="interbase" type="FLOAT" size="7" default="default 0"/> </column> <column name="EH16" type="REAL" size="7" default="default 0"> <platform-column name="interbase" type="FLOAT" size="7" default="default 0"/> </column> <column name="EH14" type="REAL" size="7" default="default 0"> <platform-column name="interbase" type="FLOAT" size="7" default="default 0"/> </column> <column name="EHVK" type="REAL" size="7" default="0"> <platform-column name="interbase" type="FLOAT" size="7" default="0"/> </column> <column name="DE7" type="INTEGER" size="0" default="0"> <platform-column name="interbase" type="INTEGER" size="10" default="0"/> </column> <column name="DE15" type="INTEGER" size="0" default="0"> <platform-column name="interbase" type="INTEGER" size="10" default="0"/> </column> <column name="KV" type="INTEGER" size="0" default="0"> <platform-column name="interbase" type="INTEGER" size="10" default="0"/> </column> <column name="TV" type="INTEGER" size="0" default="0"> <platform-column name="interbase" type="INTEGER" size="10" default="0"/> </column> <column name="TL" type="INTEGER" size="0" default="0"> <platform-column name="interbase" type="INTEGER" size="10" default="0"/> </column> <column name="D" type="INTEGER" size="0" default="0"> <platform-column name="interbase" type="INTEGER" size="10" default="0"/> </column> <column name="KSTUFE" type="INTEGER" size="0" default="0"> <platform-column name="interbase" type="INTEGER" size="10" default="0"/> </column> <column name="GSTUFE" type="INTEGER" size="0" default="0"> <platform-column name="interbase" type="INTEGER" size="10" default="0"/> </column> <column name="STRUKTUR" type="INTEGER" size="0"> <platform-column name="interbase" type="INTEGER" size="10"/> </column> <column name="IQUOTE" type="REAL" size="7" default="0"> <platform-column name="interbase" type="FLOAT" size="7" default="0"/> </column> <column name="IQUOTEA" type="REAL" size="7" default="0"> <platform-column name="interbase" type="FLOAT" size="7" default="0"/> </column> <column name="FP" type="INTEGER" size="0" default="0"> <platform-column name="interbase" type="INTEGER" size="10" default="0"/> </column> <column name="FPA" type="INTEGER" size="0" default="0"> <platform-column name="interbase" type="INTEGER" size="10" default="0"/> </column> <column name="STR01" type="REAL" size="7" default="0"> <platform-column name="interbase" type="FLOAT" size="7" default="0"/> </column> <column name="STR02" type="REAL" size="7" default="0"> <platform-column name="interbase" type="FLOAT" size="7" default="0"/> </column> <column name="ZKSTUFE" type="INTEGER" size="0" default="0"> <platform-column name="interbase" type="INTEGER" size="10" default="0"/> </column> <column name="ZDE7" type="INTEGER" size="0" default="0"> <platform-column name="interbase" type="INTEGER" size="10" default="0"/> </column> <column name="ZDE15" type="INTEGER" size="0" default="0"> <platform-column name="interbase" type="INTEGER" size="10" default="0"/> </column> <column name="ZKV" type="INTEGER" size="0" default="0"> <platform-column name="interbase" type="INTEGER" size="10" default="0"/> </column> <column name="ZTV" type="INTEGER" size="0" default="0"> <platform-column name="interbase" type="INTEGER" size="10" default="0"/> </column> <column name="ZTL" type="INTEGER" size="0" default="0"> <platform-column name="interbase" type="INTEGER" size="10" default="0"/> </column> <column name="ZD" type="INTEGER" size="0" default="0"> <platform-column name="interbase" type="INTEGER" size="10" default="0"/> </column> <column name="MONATEH1" type="REAL" size="7" default="0"> <platform-column name="interbase" type="FLOAT" size="7" default="0"/> </column> <column name="MONATEH2" type="REAL" size="7" default="0"> <platform-column name="interbase" type="FLOAT" size="7" default="0"/> </column> <column name="MONATSOLL1" type="REAL" size="7" default="0"> <platform-column name="interbase" type="FLOAT" size="7" default="0"/> </column> <column name="MONATSOLL2" type="REAL" size="7" default="0"> <platform-column name="interbase" type="FLOAT" size="7" default="0"/> </column> <column name="MONATFP1" type="INTEGER" size="0" default="0"> <platform-column name="interbase" type="INTEGER" size="10" default="0"/> </column> <column name="MONATFP2" type="INTEGER" size="0" default="0"> <platform-column name="interbase" type="INTEGER" size="10" default="0"/> </column> <column name="SORT1" type="INTEGER" size="0"> <platform-column name="interbase" type="INTEGER" size="10"/> </column> <column name="SORT2" type="INTEGER" size="0"> <platform-column name="interbase" type="INTEGER" size="10"/> </column> <column name="SORT3" type="INTEGER" size="0"> <platform-column name="interbase" type="INTEGER" size="10"/> </column> <column name="ID" required="true" type="INTEGER" size="0"> <platform-column name="interbase" type="INTEGER" size="10"/> </column> <index name="UMSATZ_VP_IDX1"> <index-column name="KSTUFE"/> </index> </table> </database> as you can see the default value for the eh/eh50/.. columns (*some* columns with type=FLOAT/REAL but not all of them?!?) is wrongly detected as "default 0" instead of "0". For the other column types (i.e. integer) it works fine as you can see above. the above would produce the following wrong ddl-statement for postgresql: [postgres3] - PostgreSqlDatabasePlatform - Running alter sql: CREATE TABLE "afa_ib_import"."umsatz_vp"( "manr" INTEGER NOT NULL, "eh" REAL DEFAULT default 0, "eh50" REAL DEFAULT default 0, "eh25" REAL DEFAULT default 0, "eh20" REAL DEFAULT default 0, "eh16" REAL DEFAULT default 0, "eh14" REAL DEFAULT default 0, "ehvk" REAL DEFAULT 0, "de7" INTEGER DEFAULT 0, "de15" INTEGER DEFAULT 0, "kv" INTEGER DEFAULT 0, "tv" INTEGER DEFAULT 0, "tl" INTEGER DEFAULT 0, "d" INTEGER DEFAULT 0, "kstufe" INTEGER DEFAULT 0, "gstufe" INTEGER DEFAULT 0, "struktur" INTEGER, "iquote" REAL DEFAULT 0, "iquotea" REAL DEFAULT 0, "fp" INTEGER DEFAULT 0, "fpa" INTEGER DEFAULT 0, "str01" REAL DEFAULT 0, "str02" REAL DEFAULT 0, "zkstufe" INTEGER DEFAULT 0, "zde7" INTEGER DEFAULT 0, "zde15" INTEGER DEFAULT 0, "zkv" INTEGER DEFAULT 0, "ztv" INTEGER DEFAULT 0, "ztl" INTEGER DEFAULT 0, "zd" INTEGER DEFAULT 0, "monateh1" REAL DEFAULT 0, "monateh2" REAL DEFAULT 0, "monatsoll1" REAL DEFAULT 0, "monatsoll2" REAL DEFAULT 0, "monatfp1" INTEGER DEFAULT 0, "monatfp2" INTEGER DEFAULT 0, "sort1" INTEGER, "sort2" INTEGER, "sort3" INTEGER, "id" INTEGER NOT NULL, PRIMARY KEY ("manr") ); CREATE INDEX "umsatz_vp_idx1" ON "afa_ib_import"."umsatz_vp" ("kstufe"); the different behavior on REAL column types looks strange to me. | ||||
Steps To Reproduce | CREATE TABLE float_test( id INTEGER NOT NULL PRIMARY KEY, DATA float DEFAULT 0 NOT NULL ); From the web console Explore tab, run the DDL exporter and review output for the DEFAULT value. | ||||
Tags | ddl/schema, dialect: interbase | ||||
Date Modified | Username | Field | Change |
---|---|---|---|
2015-05-15 08:54 | msc | New Issue | |
2015-08-07 06:46 | msc | Note Added: 0000707 | |
2019-04-23 17:13 | elong | Tag Attached: ddl/schema | |
2019-04-23 17:14 | elong | Tag Attached: interbase | |
2019-04-23 20:49 | admin | Tag Renamed | interbase => dialect: interbase |
2019-04-26 22:00 | elong | Summary | ddl detection on interbase is wrong => ddl detection of read/float default value on interbase is wrong |
2024-11-20 18:55 | mdrouard | Assigned To | => elong |
2024-11-20 18:55 | mdrouard | Status | new => assigned |
2024-11-20 18:55 | mdrouard | Target Version | => 3.15.11 |
2024-11-20 18:55 | mdrouard | Summary | ddl detection of read/float default value on interbase is wrong => ddl detection of real/float default value on interbase is wrong |
2024-11-20 19:03 | elong | Status | assigned => resolved |
2024-11-20 19:03 | elong | Resolution | open => fixed |
2024-11-20 19:03 | elong | Fixed in Version | => 3.15.11 |
2024-11-20 20:00 | admin | Changeset attached | => SymmetricDS 3.15 0ccdaa32 |
2024-11-20 20:08 | pbelov | Steps to Reproduce Updated | View Revisions |
2024-11-20 20:11 | pbelov | Summary | ddl detection of real/float default value on interbase is wrong => DDL detection of a default value for real/float column type on the Interbase is wrong |