lower() silently fails for 9.5.3 on Windows, but works on Mac, Linux

From: Alexander Farber <alexander(dot)farber(at)gmail(dot)com>
To: pgsql-general <pgsql-general(at)postgresql(dot)org>
Subject: lower() silently fails for 9.5.3 on Windows, but works on Mac, Linux
Date: 2016-08-08 06:57:07
Message-ID: CAADeyWj9XSUf-km7tykVKp93JEcpezecCJmZ9o_uE=GygdMOqQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hello fellow PostgreSQL users,

does anybody else observe the problem, that calling lower() method on UTF8
cyrillic strings works on Mac and Linux for version 9.5.3, but fails on
Windows 7 / 64 bit (I am using the unzippable version w/o installer)?

I am probably not providing enough information here... not sure what else
to write.

Here is my code (trying to lowercase a string before saving it in 2-dim.
array):

FOR _tile IN SELECT * FROM JSONB_ARRAY_ELEMENTS(in_tiles)
LOOP
_letter := _tile->>'letter';
_value := (_tile->>'value')::int;
_col := (_tile->>'col')::int + 1;
_row := (_tile->>'row')::int + 1;

RAISE NOTICE 'tile = %', _tile;

IF NOT words_valid_tile(_letter,
_value,
_col,
_row) THEN
RAISE EXCEPTION 'Invalid tile = %', _tile;
END IF;

IF (_letters[_col][_row] IS NOT NULL) THEN
RAISE EXCEPTION 'Cell already occupied %', _tile;
END IF;

_letters[_col][_row] := lower(_letter);
RAISE NOTICE 'letter = %', _letters[_col][_row]; -- STILL
UPPERCASE
_values[_col][_row] := _value;

END LOOP;

I wonder if there is a workaround for this problem on Windows

Thank you
Alex

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Alexander Farber 2016-08-08 07:00:25 Re: lower() silently fails for 9.5.3 on Windows, but works on Mac, Linux
Previous Message Charles Clavadetscher 2016-08-08 04:54:44 Re: Extract data from JSONB