Thread: multi-byte support broken in current

multi-byte support broken in current

From
Tatsuo Ishii
Date:
The multi-byte support in current had been broken for a while due to
missing compile flag in Makefile.global.in. I have just committed fix
for the problem, and should be ok now.
--
Tatsuo Ishii


Re: [HACKERS] multi-byte support broken in current

From
Peter Eisentraut
Date:
Huh? MULTIBYTE is defined in include/config.h, where it should be, when
you configure with --enable-multibyte. I explicitly removed the
-DMULTIBYTE option from the compile line. Perhaps the portions of the code
that were "broken" need to include c.h? The -DMULTIBYTE thing ought to go.

On 2000-01-18, Tatsuo Ishii mentioned:

> The multi-byte support in current had been broken for a while due to
> missing compile flag in Makefile.global.in. I have just committed fix
> for the problem, and should be ok now.
> --
> Tatsuo Ishii
> 
> ************
> 
> 

-- 
Peter Eisentraut                  Sernanders väg 10:115
peter_e@gmx.net                   75262 Uppsala
http://yi.org/peter-e/            Sweden



Re: [HACKERS] multi-byte support broken in current

From
Tatsuo Ishii
Date:
> Huh? MULTIBYTE is defined in include/config.h, where it should be, when
> you configure with --enable-multibyte. I explicitly removed the
> -DMULTIBYTE option from the compile line. Perhaps the portions of the code
> that were "broken" need to include c.h? The -DMULTIBYTE thing ought to go.

Oh, I see. I reverted back my change to Makefile.global. Sorry for the
confusion.

BTW, while running configure, --with-mb is silently ignored. This is
not good since users might believe multibyte has been enabled. I have
added checking for --with-mb. If it is specified, configure now prints
an error message and exits.
--
Tatsuo Ishii


Re: [HACKERS] multi-byte support broken in current

From
Peter Eisentraut
Date:
Further investigation showed that header files where indeed missing in
some files, in particular the regex code. Is that what was broken? I fixed
that now and removed all the MBFLAGS business. Every file should include
"postgres.h", so it grabs the #define MULTIBYTE 1 from include/config.h.
If you got any more problems with this, let me know and I'll help fix it.

Btw., I tried running the multibyte regression tests, that didn't work so
well.

On 2000-01-18, Tatsuo Ishii mentioned:

> The multi-byte support in current had been broken for a while due to
> missing compile flag in Makefile.global.in. I have just committed fix
> for the problem, and should be ok now.
> --
> Tatsuo Ishii
> 
> ************
> 
> 

-- 
Peter Eisentraut                  Sernanders väg 10:115
peter_e@gmx.net                   75262 Uppsala
http://yi.org/peter-e/            Sweden




Re: [HACKERS] multi-byte support broken in current

From
Tatsuo Ishii
Date:
> Further investigation showed that header files where indeed missing in
> some files, in particular the regex code. Is that what was broken? I fixed
> that now and removed all the MBFLAGS business. Every file should include
> "postgres.h", so it grabs the #define MULTIBYTE 1 from include/config.h.
> If you got any more problems with this, let me know and I'll help fix it.

I did not see such a problem. I just saw -DMULTIBYTE was missing and
thought MB was broken (that was a misunderstanding). Anyway I have
done a cvs up and seen your fixes working well.

> Btw., I tried running the multibyte regression tests, that didn't work so
> well.

Yes, the regression test (src/test/regress) does not work with
SQL_ASCII because test cases for it is missing in sql/. However, I'm
not certain now including the multibyte test cases in the regression
test suite is a good thing. Maybe src/test/mb is only the right place
for MB and we should remove MB stuffs from the regression.

BTW, src/test/mb tests are broken due to the changes of psql output.

euc_jp .. CREATE DATABASE
ok
sjis .. ok
euc_kr .. CREATE DATABASE
failed
euc_cn .. CREATE DATABASE
failed
euc_tw .. CREATE DATABASE
failed
big5 .. failed
unicode .. CREATE DATABASE
failed
mule_internal .. CREATE DATABASE
failed

I have fixed for EUC_JP and SJIS cases and am going to fix rest of
them.  But reading files written in languages that I never understand
is really hard:-)
--
Tatsuo Ishii