Issue Details (XML | Word | Printable)

Key: CORE-3508
Type: Bug Bug
Status: Closed Closed
Resolution: Fixed
Priority: Major Major
Assignee: Dmitry Yemanov
Reporter: Dmitry Yemanov
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
Firebird Core

MON$DATABASE_NAME and MON$ATTACHMENT_NAME fields contain question marks instead of non-ASCII characters regardless of the connection charset

Created: 02/Jun/11 10:19 AM   Updated: 23/Jan/16 12:09 PM
Component/s: Engine
Affects Version/s: 3.0 Initial, 2.5.0
Fix Version/s: 2.5.1, 3.0 Alpha 1

File Attachments: 1. Zip Archive c3508-non-readable-non-ascii-characters-in-mon-tables.zip (44 kB)

Image Attachments:

1. c3508-utf-LINUX-screen.PNG
(19 kB)
Issue Links:
Relate
 

QA Status: No test


 Description  « Hide
If the database name or alias contain non-ASCII characters, they get replaced with question marks in the monitoring tables. Accordingly to CORE-2602, it could be expected for the NONE connection charset, but in fact it happens for any charset, including Unicode ones.

 All   Comments   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Pavel Zotov added a comment - 23/Jan/16 11:38 AM
Create following script:
===
shell del C:\MIX\firebird\QA\fbt-repo\tmp\Ministère_des_Affaires_étrangères 2>nul;
shell del C:\MIX\firebird\QA\fbt-repo\tmp\Министерство_иностранных_дел 2>nul;
set names utf8;
create database '/3333:C:\MIX\firebird\QA\fbt-repo\tmp\Ministère_des_Affaires_étrangères'; // Name of Ministry of Foreign Affairs in France
set list on;
select 'literal string' as source, 'Ministère_des_Affaires_étrangères' as non_ascii_name from rdb$database
union all
select 'mon$database_name', mon$database_name from mon$database
union all
select 'mon$attachment_name', mon$attachment_name from mon$attachments where mon$attachment_id = current_connection
;
commit;
drop database;

create database '/3333:C:\MIX\firebird\QA\fbt-repo\tmp\Министерство_иностранных_дел'; // Name of Ministry of Foreign Affairs in Russia

select 'literal string' as source, 'Министерство_иностранных_дел' as non_ascii_name from rdb$database
union all
select 'mon$database_name', mon$database_name from mon$database
union all
select 'mon$attachment_name', mon$attachment_name from mon$attachments where mon$attachment_id = current_connection
;
commit;
drop database;
===

Then run cmd.exe and do there:

chcp 65001
C:\>cd C:\MIX\firebird\QA\fbt-repo\tmp\
C:\MIX\firebird\QA\fbt-repo\tmp>isql -q -i c3508-utf.sql 1>c3508-utf.log 2>&1

Then open c3508-utf.log in editor that supports unicode (I use Notepad++).
You will see readable all names _except_ those that are selected from mon$ tables.

Source .sql, .log and screenshot are in attached .zip file.

PS. WI-V3.0.0.32281

Pavel Zotov added a comment - 23/Jan/16 12:09 PM
... and no any problem on Linux, database with non-ascii characters in its name is displayed properly - see attached .png.