View Issue Details

IDProjectCategoryView StatusLast Update
0004508SymmetricDSBugpublic2020-09-03 08:52
Reportertimh52280 Assigned To 
Prioritynormal 
Status newResolutionopen 
Product Version3.12.2 
Summary0004508: User-defined blob subtypes are handled wrong by SymmetricDS on Firebird Databases
DescriptionFirebird defines the BLOB Subtypes as following:

Subtype Meaning
0 Standard blob, non-specified binary data (image, video, audio, whatever)
1 Text blob, e.g. memo fields (basic character functions work)
2 BLR (used for definitions of Firebird procedures, triggers, etc.)
Text Alternative for defining subtype 1
Positive value Reserved for Firebird
Negative value User-defined blob subtypes

But when Symmetric generates the xml schema of the database, the negative subtypes are represented incorrectly, since instead of taking their value as-1,-2,-3, etc. it only places "<0" in the subtype, causing a token error when Symmectricds want to execute that query.

I will show you the problem with the scheme:

<?xml version="1.0"?>
<!DOCTYPE database SYSTEM "http://db.apache.org/torque/dtd/database">
<database name="dataextractor">
        <table name="REGISTRY">
                <column name="ELEMENTO_ID" primaryKey="true" primaryKeySeq="1" required="true" type="INTEGER" size="10">
                        <platform-column name="firebird" type="INTEGER" size="10"/>
                </column>
                <column name="NOMBRE" required="true" type="VARCHAR" size="50">
                        <platform-column name="firebird" type="VARCHAR" size="50"/>
                </column>
                <column name="TIPO" required="true" type="CHAR" size="1">
                        <platform-column name="firebird" type="CHAR" size="1"/>
                </column>
                <column name="PADRE_ID" required="true" type="INTEGER" size="10">
                        <platform-column name="firebird" type="INTEGER" size="10"/>
                </column>
                <column name="VALOR" type="VARCHAR" size="100">
                        <platform-column name="firebird" type="VARCHAR" size="100"/>
                </column>
                <column name="VALOR_BLOB" type="BLOB">
                        <platform-column name="firebird" type="BLOB SUB_TYPE <0"/> **// THAT SUB_TYPE MUST BE -1 NOT <0, IF IT HAS <0 THE QUERY CAUSES A TOKEN ERROR**
                </column>
                <column name="VALOR_MEMO" type="LONGVARCHAR" size="254">
                        <platform-column name="firebird" type="BLOB SUB_TYPE 1"/>
                </column>
        </table>
</database>
Tagsddl/schema, dialect: firebird, large objects

Activities

There are no notes attached to this issue.

Issue History

Date Modified Username Field Change
2020-08-24 16:31 timh52280 New Issue
2020-08-24 16:33 timh52280 Tag Attached: blob
2020-08-24 16:33 timh52280 Tag Attached: firebird
2020-08-24 16:33 timh52280 Tag Attached: negative
2020-08-24 16:33 timh52280 Tag Attached: subtype
2020-09-03 08:51 elong Tag Detached: subtype
2020-09-03 08:51 elong Tag Detached: negative
2020-09-03 08:51 elong Tag Detached: firebird
2020-09-03 08:51 elong Tag Detached: blob
2020-09-03 08:52 elong Tag Attached: ddl/schema
2020-09-03 08:52 elong Tag Attached: dialect: firebird
2020-09-03 08:52 elong Tag Attached: large objects