Incorrect TEXT BLOB charset transliteration on VIEW update in UTF8 connection
-----------------------------------------------------------------------------
Key: CORE-3601
URL: http://tracker.firebirdsql.org/browse/CORE-3601
Project: Firebird Core
Issue Type: Bug
Components: Charsets/Collation
Affects Versions: 2.5.0
Reporter: Radek Palmowski
On UTF8 connection:
isc_get_segment from V_T_TEST.MEMO_UTF8 V_T_TEST.MEMO_WIN1250 returns buffer
as utf-8 string
but
isc_put_segment on V_T_TEST.MEMO_UTF8 with buffer as utf-8 is OK
isc_put_segment on V_T_TEST.MEMO_WIN1250 with buffer as utf-8 not transliterate
character set and stores in table incorrect as utf-8
isc_put_segment on V_T_TEST.MEMO_WIN1250 with buffer as win1250 report error
malformed string
on table T_TEST isc_get_segment, isc_put_segment with buffer utf-8 works OK
CREATE TABLE T_TEST (
ID UID NOT NULL /* UID = BIGINT */,
MEMO_UTF8 MEMO_UTF8 /* MEMO_UTF8 = BLOB SUB_TYPE 1 SEGMENT SIZE 100 */,
MEMO_WIN1250 MEMO_WIN1250 /* MEMO_WIN1250 = BLOB SUB_TYPE 1 SEGMENT SIZE
100 */,
MEMO_OCTETS MEMO_OCTETS /* MEMO_OCTETS = BLOB SUB_TYPE 1 SEGMENT SIZE 100
*/
);
ALTER TABLE T_TEST ADD CONSTRAINT PK_T_TEST PRIMARY KEY (ID);
CREATE OR ALTER VIEW V_T_TEST(
ID,
MEMO_UTF8,
MEMO_WIN1250,
MEMO_OCTETS)
AS
SELECT
T.ID,
T.MEMO_UTF8,
T.MEMO_WIN1250,
T.MEMO_OCTETS
FROM T_TEST T
;
SET TERM ^ ;
/* Trigger: V_T_TEST_BD */
CREATE OR ALTER TRIGGER V_T_TEST_BD FOR V_T_TEST
ACTIVE BEFORE DELETE POSITION 0
AS
BEGIN
DELETE FROM T_TEST
WHERE ID = OLD.ID;
END
^
/* Trigger: V_T_TEST_BI */
CREATE OR ALTER TRIGGER V_T_TEST_BI FOR V_T_TEST
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
INSERT INTO T_TEST(
ID,
MEMO_UTF8,
MEMO_WIN1250,
MEMO_OCTETS)
VALUES(
NEW.ID,
NEW.MEMO_UTF8,
NEW.MEMO_WIN1250,
NEW.MEMO_OCTETS);
END
^
/* Trigger: V_T_TEST_BU */
CREATE OR ALTER TRIGGER V_T_TEST_BU FOR V_T_TEST
ACTIVE BEFORE UPDATE POSITION 0
AS
BEGIN
UPDATE T_TEST SET
ID = NEW.ID,
MEMO_UTF8 = NEW.MEMO_UTF8,
MEMO_WIN1250 = NEW.MEMO_WIN1250,
MEMO_OCTETS = NEW.MEMO_OCTETS
WHERE ID = OLD.ID;
END
^
SET TERM ; ^
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://tracker.firebirdsql.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
------------------------------------------------------------------------------
BlackBerry® DevCon Americas, Oct. 18-20, San Francisco, CA
http://p.sf.net/sfu/rim-devcon-copy2
Firebird-Devel mailing list, web interface at
https://lists.sourceforge.net/lists/listinfo/firebird-devel