View Issue Details

IDProjectCategoryView StatusLast Update
0004087SymmetricDSBugpublic2019-09-09 12:01
ReporternkumarcmAssigned To 
Priorityurgent 
Status newResolutionopen 
Product Version3.10.3 
Target VersionFixed in Version 
Summary0004087: Trigger creation issue - Column with informix TEXT datatype is not supported ?
DescriptionSymmetric 3.10.3 informix 11.5 as master node.
-----------------------------------------------------------------------

The trigger has replace function to escape comma, single, double quotes etc. This replace function won't work on TEXT data type of informix.

-----------------------------------------------------------------------------
[tc-informix] - InformixSymmetricDialect - Creating SYM_ON_I_FOR_demotable trigger for informix .project_spec
[tc-informix] - InformixSymmetricDialect - Failed to create trigger: create trigger SYM_ON_I_FOR_demotable insert on informix.project_spec referencing new as new
                                for each row when (1=1 and not informix.sym_triggers_disabled()) ( insert into informix.sym_data (table_name, event_type, trigger_hist_id, row_data, channel_id, transaction_id, source_node_id, external_data, create_time) values( 'project_spec', 'I', 57,
          case when new.project_spec_id is null then '' else '"' || new.project_spec_id || '"' end||','||
          case when new.project_id is null then '' else '"' || new.project_id || '"' end||','||
          case when new.version is null then '' else '"' || new.version || '"' end||','||
          rtrim(case when new.create_user is null then '' else '"' || replace(replace(new.create_user, '\', '\\'), '"', '\"') || '"' end)||','||
          case when new.create_date is null then '' else '"' || new.create_date || '"' end||','||
         
          rtrim(case when new.private_description is null then '' else '"' || replace(replace(new.description, '\', '\\'), '"', '\"') || '"' end)||','||
          rtrim(case when new.detailed_requirements_text is null then '' else '"' || replace(replace(new.requirements_text, '\', '\\'), '"', '\"') ||
-----------------------------------------------------------------------------------------------------------------------
[tc-informix] - TriggerRouterService - Failed to create triggers for demotable
org.jumpmind.db.sql.SqlException: Routine (replace) can not be resolved.
    at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:302)
    at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:291)
    at org.jumpmind.db.sql.JdbcSqlTransaction.executeCallback(JdbcSqlTransaction.java:398)
    at org.jumpmind.db.sql.JdbcSqlTransaction.execute(JdbcSqlTransaction.java:300)
    at org.jumpmind.symmetric.db.AbstractSymmetricDialect.createTrigger(AbstractSymmetricDialect.ja
Steps To Reproduce1. Create a simple table "demotable" with "description" column TEXT datatype at informix 11.5
2. Insert relevant details at sym_channel, sym_trigger and sym_router details for newly created "demotable" table.
3. Start bin/sym. It tries to create insert trigger for "demotable" ( SYM_ON_I_FOR_<demotable> )
4. The replace(replace line will fail because replace function won't work on "description" TEXT datatype.

Any fix available for this please.
TagsNo tags attached.

Activities

There are no notes attached to this issue.

Issue History

Date Modified Username Field Change
2019-09-09 12:01 nkumarcm New Issue