
Vladimir
19.03.2018
08:33:36

Vladimir
19.03.2018
08:34:32
https://www.postgresql.org/docs/current/static/datatype-numeric.html
variable-precision, *inexact*

Artem
19.03.2018
08:41:10
камрады, глупый вопрос, можно ли в макоси через brew установить только клиент постгреса? или же при установке формулы postgresql brew ставит весь софт, и клиентскую и серверную части?

Alexey
19.03.2018
08:42:16
а всё потому, что постгрес плохо печатает числа с плавающей точкой. select (2.4e0 + 4.8e0) вернёт 7.2, из-за чего у неискушённого пользователя возникнет ощущение, что результат можно сравнивать с 7.2e0

Google

Alexey
19.03.2018
08:42:57
а mysql на запрос select (2.4e0 + 4.8e0) вернёт 7.199999999999999 и будет прав. и пользователю будет понятнее, почему результат не равен 7.2

Vladimir
19.03.2018
08:45:04
Да, замечал эти девятки в конце или 7.0000000000001
На определенных числах
Спасибо, жёстко!)
Получается вообще нельзя складывать без преобразования такие типы.

Maksim
19.03.2018
08:50:04

Alexey
19.03.2018
08:52:21

Anton [Mgn, az09@osm]
19.03.2018
08:59:41
https://habrahabr.ru/post/112953/ много теории с картинками )
на самом деле я видел то ли в википедии то ли на гитхабе статью о сравнении "близких" величин на разных ЯП (SQL это же ЯП? ;) кто знает ссылку поделитесь плиз

Yaroslav
19.03.2018
09:03:05

Irina
19.03.2018
09:04:54
Всем привет! Не увидела правил чата и как можно писать о вакансиях, так что вот:
#Вакансия в Рокетбанке, нужен прокаченный Администратор PostgreSQL.
Вопросы можно мне или моим коллегам из ИТ, их контакты дам, если напишите мне в личку, в телеге. Вот немного инфо о нас https://holy.rocketbank.ru/, а вот о вакансии https://hh.ru/vacancy/24720610.

Alexey
19.03.2018
09:05:05

Yaroslav
19.03.2018
09:06:32
> просто постгрес ошибочно округляет всё
Нет, не просто. В PostgreSQL тип результата этого выражения —- numeric, а не float.
Поэтому-то я и спросил...

Alexey
19.03.2018
09:09:01

Darafei
19.03.2018
09:09:24
но numeric - не IEEE 754

Yaroslav
19.03.2018
09:09:31

Google

Darafei
19.03.2018
09:09:34
иначе он не сможет выдать точность

Alexey
19.03.2018
09:10:15

Yaroslav
19.03.2018
09:11:07

Alexey
19.03.2018
09:14:54

Vladimir
19.03.2018
09:17:50
Постгрес по дефолту округляет на отображение, но на это можно повлиять.

Alexey
19.03.2018
09:18:18
зачем постгрес считает числа в научной нотации numeric-ами — отдельный вопрос
можно повлиять, и получить мусор в тех числах, где столько цифр не нужно
как вот в этом примере

Vladimir
19.03.2018
09:19:57

Alexey
19.03.2018
09:20:07
мусор в отрисовке, да

Anton [Mgn, az09@osm]
19.03.2018
09:20:49


Alexey
19.03.2018
09:21:19
короче, парни, прочитайте статью под названием "Printing Floating-Point Numbers Quickly and Accurately". там это всё в деталях разбирают
или посмотрите на библиотеку dtoa, которая написана по той статье. Именно её многие проекты используют для печати чисел. И только постгрес до сих пор использует printf() + костыль в виде extra_float_digits

Yaroslav
19.03.2018
09:25:45
мусор в отрисовке, да
Ну а у -hackers противоположное мнение, как я понимаю (это обсуждалось, как мне помнится).

Alexey
19.03.2018
09:27:07

Yaroslav
19.03.2018
09:29:42

Alexey
19.03.2018
09:31:15
на самом деле text <-> float должен быть таким, чтобы любые преобразования text->float->text и float->text->float были идемпотентными. а в постгресе это не так, хоть с extra_float_digits, хоть без

Darafei
19.03.2018
09:38:51

Google

Darafei
19.03.2018
09:39:49
там просто как раз вот этой идемпотентности нет и преобразование в текст оговорено как lossy
но вдруг есть правильный путь

Alexey
19.03.2018
09:42:06
но вдруг есть правильный путь
да, правильный путь подробно описан в "Printing Floating-Point Numbers Quickly and Accurately" и реализован в библиотеке dtoa
точнее, вот ссылки на статьи, по которым написана dtoa:
https://dl.acm.org/citation.cfm?id=93559&coll=portal&dl=ACM
https://dl.acm.org/citation.cfm?id=93557&coll=portal&dl=ACM

Vladimir
19.03.2018
09:46:30
Хотя на арифметике все так же "обманывает"

Darafei
19.03.2018
09:49:50

Alexey
19.03.2018
09:50:37
потому что с фиксированным параметром каждый дурак может

Darafei
19.03.2018
09:51:04
окей, тогда мы не сможем его заюзать

Alexey
19.03.2018
09:51:32
а вы сможете заюзать обёртку над dtoa
примерно вот такую: https://github.com/mysql/mysql-server/blob/5.7/strings/dtoa.c#L92

Darafei
19.03.2018
09:59:14
если что, сейчас так: https://github.com/postgis/postgis/blob/8a78bf0323dcbe47dd597287c1892432723efdc6/liblwgeom/lwprint.c#L488

Alexey
19.03.2018
10:02:09

Иван
19.03.2018
15:36:11
Здравствуйте, пытаюсь поменять в jboss драйвер jdbc`шный, заменяю в standalone-fill.xml на <driver>postgresql-42.1.4.jar</driver>, в папку deployments кидаю сам драйвер, но standalone-full все равно заменяет строку с указанным драйвером на старый. Что такое может быть?

Alexander
19.03.2018
15:42:54
Это вопрос в pro.jvm, скорее

Pavel
19.03.2018
15:51:24

Иван
19.03.2018
15:52:12

Аггей
19.03.2018
18:06:44
Зачем так?

Google

Аггей
19.03.2018
18:07:13
Установите модуль через jboss-cli

Valery
19.03.2018
18:09:51
Народ, подскажите пожалуйста какие лучше всего поставить значения на autovacuum_freeze_max_age и autovacuum_multixact_freeze_max_age говорят дефолтные малы( Заранее большое спасибо!

Аггей
19.03.2018
18:18:50
Установите модуль через jboss-cli
cd /tmp; wget https://jdbc.postgresql.org/download/postgresql-9.4.1212.jar; /home/wildfly/wildfly/bin/jboss-cli.sh --commands="module add --name=org.postgres --resources=/tmp/postgresql-9.4.1212.jar --dependencies=javax.api"

Alex
19.03.2018
18:42:00

Valery
19.03.2018
19:02:28
я так понимаю, что если не сделать vacuum freez будут проблемы?. Поясните плиз.

Anton [Mgn, az09@osm]
19.03.2018
19:12:00
да что вы знаете о вакансиях
http://www.magmfc.ru/vacancy
>Знание любого сервера БД
>Заработная плата - от 27 000 руб. Квартальные премии

Darafei
19.03.2018
19:13:53
я почему-то сначала посчитал рубли белорусскими и позавидовал

Anton [Mgn, az09@osm]
19.03.2018
19:14:11
а потом?

Darafei
19.03.2018
19:15:33
а потом почитал требования и узнал, что меня не возьмут, у меня ж высшего образования нет

Аггей
19.03.2018
20:13:26
>Заработная плата - от 27 000 руб. Квартальные премии
Ну я когда-то работал в похожем учереждении. Оклад был 5120 рублей. На руки всегда было > 45000.
Расчетка состояла из граф - Оклад, Надбавка за высокие достижения, Надбавка за ненормированный рабочий день, За выслугу лет, За работу в районах приравненых к районам крайнего севера, Премия по итогам месяца (на все предыдущее в размере от 100 до 300 процентов), разовая премия за ... (не каждый месяц - но часто)... В итоге чистыми выходило для Читы нормально.
Потом когда перешел работать в частные фирмы - все наоборот. На собеседовании говорят ЗП грязными... иногда очень грязными - в итоге звучит хорошо, на руки приблизительно тоже самое


des1roer
20.03.2018
04:53:17
приветствую
а как использовать он конфликт для уникального составного индекса?
INSERT INTO "description" ("item_id", "value", "description_type_id")
VALUES (9214, 'тест изменения шаблона описания для ##name## товара', 3),
(9213, 'тест изменения шаблона описания для ##name## товара', 3),
(9212, 'тест изменения шаблона описания для ##name## товара', 3)
ON CONFLICT (item_id, description_type_id)
DO UPDATE SET value = EXCLUDED.value
[42P10] ERROR: there is no unique or exclusion constraint matching the ON CONFLICT specification
CREATE TABLE description
(
id SERIAL NOT NULL
CONSTRAINT description_pkey
PRIMARY KEY,
item_id INTEGER
CONSTRAINT fk_description_item_id
REFERENCES item
ON UPDATE CASCADE ON DELETE CASCADE,
description_type_id INTEGER
CONSTRAINT fk_description_description_type_id
REFERENCES description_type
ON UPDATE CASCADE ON DELETE CASCADE,
value TEXT
);
CREATE UNIQUE INDEX u_description_item_id_description_type_id
ON description (item_id, description_type_id);


crux
20.03.2018
05:35:24
https://hi-tech.mail.ru/news/yohanson-virus/?frommail=1
какой феерический бред

Google

crux
20.03.2018
05:35:56
Никто не знает CVE есть уже про это?
чет там постгре замешан, но мейлру выдало ну полную чушь

Anton [Mgn, az09@osm]
20.03.2018
05:37:24

crux
20.03.2018
05:37:48
о, спасибо

des1roer
20.03.2018
05:47:52
хей
а что будет с сериалом. когда у него закончатся цифры? по новой пойдет?

Yaroslav
20.03.2018
06:45:17

Марат
20.03.2018
07:13:50

Sergey
20.03.2018
07:38:51
Люди)
как узнать какой максимальный request size можно выполнить на postgres БД?
мне нужно большой SQL query (280мб) разбить на несколько файлов, а за один раз ошибку выдает о превышении лимита размера запроса
пытался сделать это с помощью "psql <credentials> -f myscript.sql"

Darafei
20.03.2018
07:44:38
А что там внутри?