powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
218 сообщений из 218, показаны все 9 страниц
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39627811
AndryG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пишем данные в БД, получаем ошибку уникального ключа.

[dbMessage:protected] => attempt to store duplicate value (visible to active transactions) in unique index "PERS_IDX1" Problematic key value is (<expression> = 'U4')

Поделитесь опытом бработки подобных ошибок.

Можно в скрипте обрабатывать наиболее вероятные ошибки и давать вразумительные ответы юзеру.
Можно не дублировать логику, писать БД, получать вот такой отлуп. Но как теперь толком объяснить юзеру, в чем причина?

У каждого способа свои плюсы/минусы. Посоветуйте с высоты опыта, какой вариант предпочтительней, может удачные практики есть у кого.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39627841
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndryG,

Юзера можно побеспокоит только если он явно участвует в формировании этого ключа
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39627845
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndryG,
В каждом ЯП свои паттерны хорошего кода.
Это как мода. Сегодня это модно, а завтра нет.
Например, в ОРМ в шарпе мы получаем ошибки уже от самого ОРМ фреймворка.
В java есть деклоративное управления транзакциями и ошибками.
Так что идите к программистам. Это слишком низкий уровень для бизнес аналитиков в данной ветке.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39627869
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndryGПишем данные в БД, получаем ошибку уникального ключа.

[dbMessage:protected] => attempt to store duplicate value (visible to active transactions) in unique index "PERS_IDX1" Problematic key value is (<expression> = 'U4')

Поделитесь опытом бработки подобных ошибок.

Можно в скрипте обрабатывать наиболее вероятные ошибки и давать вразумительные ответы юзеру.
Можно не дублировать логику, писать БД, получать вот такой отлуп. Но как теперь толком объяснить юзеру, в чем причина?

У каждого способа свои плюсы/минусы. Посоветуйте с высоты опыта, какой вариант предпочтительней, может удачные практики есть у кого.
Пишутся в лог со стектрейсом. Если регулярно выпадают, то заводится бага в Jira. Бага правится - ошибки исчезают.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628005
tip78
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
БД же возвращает отлуп, что операция не получилась
его можно перехватить и отписать юзеру свою мессагу (поскольку там всего 1 причина, её и указываем)
а если вас именно беспокоят ошибки, которые бесконтрольно вылетают юзеру в морду
то их же можно подавлять (в пхп @)/контроллить (настроить свой обработчик)
только так
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628011
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tip78то их же можно подавлять (в пхпво! Ещё один вариант для пхп.
Ждем вариант для эрланг)
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628098
AndryG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я и есть программист ) И размышляю. Стоит ли опираться на ссылочную целостность БД - анализировать ошибки запросов и дальше по обстоятельствам. Другими словами "ошибки при запросах к БД - это нормально".

Или не стоит связываться с ссылочной целостностью. Оставить её в покое, как дополнительный защитный уровень. Строить свои проверки корректности данных. Пусть и с помощью доп. запросов проверять наиболее популярные конфликтные ситуации. А ошибку при запросе к БД рассматривать, как "странно, но вы не дожны были увидеть такую ошибку".

Пишу Web-приложение на голом php.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628132
tip78
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndryG"странно, но вы не дожны были увидеть такую ошибку".
по сути да, поэтому обработчик ошибок шлёт мыло, чтобы сразу ошибку исправлять
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628138
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndryGЯ и есть программист ) И размышляю. Стоит ли опираться на ссылочную целостность БД - анализировать ошибки запросов и дальше по обстоятельствам. Другими словами "ошибки при запросах к БД - это нормально".

Или не стоит связываться с ссылочной целостностью. Оставить её в покое, как дополнительный защитный уровень. Строить свои проверки корректности данных. Пусть и с помощью доп. запросов проверять наиболее популярные конфликтные ситуации. А ошибку при запросе к БД рассматривать, как "странно, но вы не дожны были увидеть такую ошибку".

Пишу Web-приложение на голом php.
Тоска зелёная
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628140
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня за сутки выпало более 30000 ошибок.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628155
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndryGМожно в скрипте обрабатывать наиболее вероятные ошибки и давать вразумительные ответы юзеру.

«Бла-бла, извините, бла-бла... ждите когда починят». Какой ещё вразумительный ответ можно дать? Ну котика покажите.


AndryGУ каждого способа свои плюсы/минусы. Посоветуйте с высоты опыта, какой вариант предпочтительней, может удачные практики есть у кого.

Валидация, блокировки. Основная задача, это устранять ошибки, а не покрывать их какими-то «вразумительными» сообщениями и объяснениями.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628156
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndryGДругими словами "ошибки при запросах к БД - это нормально".

Нет.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628157
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndryGА ошибку при запросе к БД рассматривать, как "странно, но вы не дожны были увидеть такую ошибку".


Рассматривать, как косяк разработчика.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628167
AndryG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я имею ввиду ошибки в вводимых данных!

Если человек пытается зарегестрировать уже существующий логин, то какой тут косяк разработчика?

Ещё пример.
"Введите желаемый размер от 17 до 47". А на сервер приходит 63.
На поле в БД стоит ограничение "value between 17 and 47".

Либо я пишу в БД 63 и получаю ошибку от БД, парсим ответ, выбираем, что не понравилось БД и выдаем персу ответ.

Либо в коде перед формированием запроса к БД проверяем значение (дублируем проверку) и выдаем ошибку "укажите допустимый размер"


Какие письма.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628169
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndryGЕсли человек пытается зарегестрировать уже существующий логин, то какой тут косяк разработчика?

Косяк в том, что он не проверил доступность логина.
Косяк разработчика, что он в этом вопросе полагается только на уникальный индекс и работает с ошибками базы данных, как с валидацией.
Косяк разработчика, что он не понимает, что такое валидация в принципе, и чем она отличается от констрейтов в базе данных.


AndryGЕщё пример.
"Введите желаемый размер от 17 до 47". А на сервер приходит 63.
На поле в БД стоит ограничение "value between 17 and 47".

Либо я пишу в БД 63 и получаю ошибку от БД, парсим ответ, выбираем, что не понравилось БД и выдаем персу ответ.

Полная хрень. Ограничения в БД это последний и важный эшелон для обеспечение целостности данных. Но он не является инструментом для проверки корректности вводимой информации. Ни в коем случае. У нас бы за такое был бы серьёзный разговор, а при непонимании, увольнение. Это азы.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628172
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndryGЛибо в коде перед формированием запроса к БД проверяем значение (дублируем проверку) и выдаем ошибку "укажите допустимый размер"

Вообще-то не «дублируем проверку», а просто делаем проверку. Это называется валидация. Если в логе увидели ошибку нарушения констрейта, значит где-то накосячили и не сделали проверку. При работе с БД всегда считаем по умолчанию, что никаких констрейтов там нет.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628175
AndryG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hVostt, спасибо за объяснения. Пусть и в столь... яркой форме )

Уровень БД - это второй эшелон обороны и не стоит его активно использовать как основной валидатор.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628181
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndryG,

Рад помочь! :)
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628206
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttВообще-то не «дублируем проверку», а просто делаем проверку. Это называется валидация.
+1

AndryG, то, о чём Вы пишите - это валидация вводимых данных.

Уровень БД - это не второй, а последний эшелон.
Если Вы пишите web-приложение, то хорошо бы подумать о валидации на клиенте и валидации на сервере до записи в базу.
Почитать об этом пару статей на тему зачем и как лучше делать.

К примеру диапазон можно ограничить так:
Код: html
1.
<input type="size" name="size" min="17" max="47">


Если пользователь введёт 63, то получит сообщение об ошибке, приэтом запрос не будет отправлен на сервер.

P.S.: и хорошо бы задачу описывать подробнее, а не выкладывать сначала часть размышлений о том, как её решить, опираясь на ссылочную целостность, а потом уточнять о чём речь.
Сэкономите себе время.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628213
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndryGЕщё пример.
"Введите желаемый размер от 17 до 47". А на сервер приходит 63.
На поле в БД стоит ограничение "value between 17 and 47".

Либо я пишу в БД 63 и получаю ошибку от БД, парсим ответ, выбираем, что не понравилось БД и выдаем персу ответ.

Либо в коде перед формированием запроса к БД проверяем значение (дублируем проверку) и выдаем ошибку "укажите допустимый размер"
Если покупатель ввёл 63 при поиске, что Вы собираетесь в БД писать и зачем?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628214
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndryGЕсли человек пытается зарегестрировать уже существующий логин, то какой тут косяк разработчика?
Если человек при этом ошибся и указал в email # вместо @, то как Вам помогут ограничения целосности БД?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628284
AndryG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
skyANA, это и была часть размышлений. (я в курсе про клиентские, серверные проверки данных и назначение каждой из них. Опыт есть)

Пишу код уровня "доступа к даным", При повторном прогоне кода создания юзера вылезла ожидаемая ошибка уникальности логина. Тут и появилась мысль использовать это для уменьшения кода валидаторов - не делать некоторые и вылавливать для этого ошибки БД.

Судя по ярким ответам, я или потоптался по мозолям или несу ересь ) ещё раз спасибо за ответы.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628335
alex55555
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndryGСудя по ярким ответам, я или потоптался по мозолям или несу ересь )
Да, это ересь. Но ересь в данном контексте небесполезная. Ты учишься. Надеюсь, потом сам будешь долго смеяться, каким идиотом раньше был :)

Немного в более общем виде - программисты ленивы, что объяснимо, но суть качества в противостоянии лени, в выбивании её из себя. А когда вот так дружелюбно по заднице навставляют, то это вы ещё очень легко отделались :) Выше уже указали - могли бы и уволить. Так что пилите, Шура, пилите, они золотые!
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628338
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndryG(я в курсе про клиентские, серверные проверки данных и назначение каждой из них. Опыт есть)какого фига тогда вопрос первоклассника?
Если голый php значит ошибка от драйвера?
Вот и раздели ошибки на уровни и покажи ту что касается юзверя.
А доделаешь ли ты потом ДОП валидацию на клинте твои хотелки и проблемы.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628340
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex55555Немного в более общем виде - программисты ленивы, что объяснимо, но суть качества в противостоянии лени, в выбивании её из себя. А когда вот так дружелюбно по заднице навставляют, то это вы ещё очень легко отделались :) Выше уже указали - могли бы и уволить. Так что пилите, Шура, пилите, они золотые!

Тут не согласен. Лень программиста, это золотая жила в его профессионализме. Программист должен быть достаточно ленив, чтобы избавить себя от монотонного копипаста кода, бесконечного ковыряния в отладке в бесконечном исправлении ошибок. Он должен писать код, который если ломается, то давать максимальную информацию о проблеме, и минимизировать возможность выстрелить себе в ногу.

Иногда лень путают с наивной беспечностью и отсутствием опыта. Т.е. вот здесь и сейчас нагавнякал, получил результат какой-то. Вроде выглядит как лень, типа не стал заморачиваться и тратить время на то, чтобы сделать по уму. Но опыт показывает, что потом эти «лентяи» безвылазно делают одну и ту же мудохрень, то, чего можно было не делать, и не тратить на это время совсем. Просто это не так очевидно на коротком отрезке времени.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628344
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndryGskyANA, это и была часть размышлений. (я в курсе про клиентские, серверные проверки данных и назначение каждой из них. Опыт есть)

Пишу код уровня "доступа к даным", При повторном прогоне кода создания юзера вылезла ожидаемая ошибка уникальности логина. Тут и появилась мысль использовать это для уменьшения кода валидаторов - не делать некоторые и вылавливать для этого ошибки БД.

Судя по ярким ответам, я или потоптался по мозолям или несу ересь ) ещё раз спасибо за ответы.
Если не секрет, что Вам помешало сразу обрисовать полную картину?

Размышления - это не ересь, просто со стороны выглядит как очередной нуб не осилил валидацию.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628416
alex55555
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttЛень программиста, это золотая жила в его профессионализме. Программист должен быть достаточно ленив, чтобы избавить себя от монотонного копипаста
И как только избавил - тут же снова включать лень по полной. Вот так вот и "не выходит каменный цветок" у некоторых "мастеров".

И да, тупость в виде неумения увидеть возможность вынести повторяющийся код в отдельный модуль, не есть лень. Это именно ТУПОСТЬ.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628439
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex55555И да, тупость в виде неумения увидеть возможность вынести повторяющийся код в отдельный модуль, не есть лень. Это именно ТУПОСТЬ.

Речь не обязательно про модуль, а вообще способ написания кода наименьшими усилиями. Физическими я имею в виду. Про умственные усилия я ничего не говорю. Но на то и профессия хорошо оплачиваемая, за умение думать и пользоваться головой. Если человек ленится именно думать, то и стоить его работа будет соответственно, 3 копейки.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628790
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndryGПишу код уровня "доступа к даным", При повторном прогоне кода создания юзера вылезла ожидаемая ошибка уникальности логина. Тут и появилась мысль использовать это для уменьшения кода валидаторов - не делать некоторые и вылавливать для этого ошибки БД.

все верно, проверка уникальности/ссылочной целостности и должны производится только на уровне БД т.к. на клиенте такие проверки бессмысленны и вредны, валидация бизнес-логики включает в себя по-сути 3 шага
а) На клиенте для удобства пользователя (формат email'a, длина строки итд)
б) Дубликат всех этих проверок на аппсервере плюс дополнительная валидация общих бизнес-правил (лимит не превышен, безопасность итд)
в) Дубликат части либо всех этих правил в БД (формат email'a, длина строки, лимиты) плюс ограничения уникальности/ссылочной целостности.

Ошибки уникальности/ссылочной целостности идущие из БД отлавливаются и выводятся соответствующие сообщения юзеру, остальные ошибки логируются для последующего изучения
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628795
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordОшибки уникальности/ссылочной целостности идущие из БД отлавливаются и выводятся соответствующие сообщения юзеру, остальные ошибки логируются для последующего изучения

Пожалуйста, не слушайте вот такой бред говнокодеров.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628796
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordвсе верно, проверка уникальности/ссылочной целостности и должны производится только на уровне БД т.к. на клиенте такие проверки бессмысленны и вредны

Нет не верно, ни разу. Не вводите людей в заблуждение.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628797
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttНет не верно, ни разу. Не вводите людей в заблуждение.
в заблуждение вводишь здесь только ты, да еще и как обычно в очень наглой и оскорбительной форме, проверки уникальности должны быть только в БД т.к. только БД в состоянии обеспечить транзакционную целостность операции, твой вариант можешь даже не предлагать, я знаю что там будет метод репозитория FindUserByLogin() на основании которого принимается решение об уникальности С подобным подходом ты в серьезную компанию даже собеседование не пройдешь, если там конечно тимлид не такой-же...
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628798
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordв заблуждение вводишь здесь только ты, да еще и как обычно в очень наглой и оскорбительной форме, проверки уникальности должны быть только в БД т.к. только БД в состоянии обеспечить транзакционную целостность операции, твой вариант можешь даже не предлагать, я знаю что там будет метод репозитория FindUserByLogin() на основании которого принимается решение об уникальности С подобным подходом ты в серьезную компанию даже собеседование не пройдешь, если там конечно тимлид не такой-же...

Я так понимаю просьбы не декларировать непрофессиональный бред до тебя не доходят.
Тебе ничего не предлагаю, говнокодишь себе и говнокодь дальше, мне на это наплевать с высокой колокольни.

Людям не надо свою чушь в уши заливать, да?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628799
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тебя забанить надо козленок, за оскорбления и весь тот бред, который ты несешь на проффорумах людям, которые просят профессионального совета
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628800
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordС подобным подходом ты в серьезную компанию даже собеседование не пройдешь, если там конечно тимлид не такой-же...

Угу, с проверками уникальности «только в БД», я даже не знаю какая «серьёзная» компания тебе даст хотя бы шанс исправиться и научиться делать по-людски.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628801
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordтебя забанить надо козленок, за оскорбления и весь тот бред, который ты несешь на проффорумах людям, которые просят профессионального совета

О, ну понеслось говно по трубам. Чего собственно и следовало ожидать.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628802
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
комментировать твои пьяные бредни я не буду, почитай хотя-бы википедию про то, как работает база данных, тебя уже столько раз тыкали мордой в твои ламерские советы и ловили на незнании базовых вещей на множестве форумов и топиков, что в очередной мараться не хочется
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628803
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordкомментировать твои пьяные бредни я не буду, почитай хотя-бы википедию про то, как работает база данных, тебя уже столько раз тыкали мордой в твои ламерские советы и ловили на незнании базовых вещей на множестве форумов и топиков, что в очередной мараться не хочется

Какая же у тебя богатая фантазия. Ну так сколько раз меня «тыкали мордой», балабол ты наш?
Человека без грамма знаний видно сразу за версту, вместо аргументов какие-то бредовые фантазии, наглое враньё. Я ведь тебя вообще-то не оскорблял, но с такими как ты надо только матом слать на 3 буквы?

Ты либо аргументы приводишь, либо шёл бы ты лесом рёбенок.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628807
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
какие еще аргументы, почему за FindUserByLogin() для определения уникальности ты получишь хороших люлей на code review? Нет, тебе никаких аргументов не будет, читай документацию, оторви свой профуровень от плинтуса для начала
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628808
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordкакие еще аргументы, почему за FindUserByLogin() для определения уникальности ты получишь хороших люлей на code review? Нет, тебе никаких аргументов не будет, читай документацию, оторви свой профуровень от плинтуса для начала

Слушай, я думаю никто не будет спорить, если я тебе прямо скажу, ты либо просто тупой по жизни, либо топик не читал и лезешь со своими нахрен никому не нужными, глупыми, откровенно вредными высказываниями.

Профуровень. Я чёт не обратил внимания, что ты обыкновенный залётный ПТ-шник, с однобайтовым мозгом.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628809
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
все говно вышло? Каждый раз когда тебя в лужу сажают одна и та-же реакция...
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628810
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordвсе говно вышло? Каждый раз когда тебя в лужу сажают одна и та-же реакция...

Реакция на балаболов и людей, которые не способны ни ответить за свои слова, ни аргументировать, может быть только одна. Пшёл лесом.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628814
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот за свой базар это ты как раз не привык похоже отвечать, в реале ты-б за малую толику тех оскорблений и дерьма вылитых в этом топике ты-б зубы собирал по всему полу
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628816
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordвот за свой базар это ты как раз не привык похоже отвечать, в реале ты-б за малую толику тех оскорблений и дерьма вылитых в этом топике ты-б зубы собирал по всему полу

Мда. Быдлан детектед.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628820
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenford,

верноя я понял, что Вы за проверку уникальности на уровне БД именно логина, или домена при регистрации?

А можно полюбопытствовать, где Вы такое видели?
Вроде как принято сообщать о том, что такой логин, или домен уже занят до записи в БД.

Плюс регистрация вполне может оказаться визардом в N шагов с прикреплением скана документа, подтверждающего личность.
И запись в целевую таблицу происходит только после его прохождения и ещё каких-то проверок.
И как-то нелепо после всего сообщать пользователю, что такой логин уже занят, опираясь на ошибку о нарушении уникальности.

Кстати, если Вы так делаете, то не могли бы показать кусок кода?
Любопытно как Вы парсите сообщение, чтобы понять, что нарушена уникальность именно логина, или домена.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628827
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нет, я понимаю, что в каком-нибудь корпоративном десктоп приложении, где оператор регистрирует нового сотрудника в лучшем случае раз в день, заморачиваться над отдельной проверкой уникальности логина не имеет особого смысла.
Ну ошибётся раз в год, увидит сообщение, сам поймёт что нетак.
Не поймёт так пнёт какого-нибудь айтишника, который про себя подумает: "Что, дура, разве не видишь, что написано 'attempt to store duplicate value (visible to active transactions) in unique index PERS_IDX_LOGIN. Problematic key value is (<expression> = Vasya)'? Ясен пень, что такой логин уже есть!", - а в слух вежливо скажет, что надо придумать другой логин.

Но в web-приложение такое тащить - чревато.
Я Вам бота напишу, что в цикле будет пробовать зарегистрировать один и тот же логин, и если приложение даже не ляжет, то по головке вас точно не погладят
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628834
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

Такие «проверки» на констрейтах имеют место быть малом корпоративном сегменте с небольшим айти отделом, которые пишут примитивные АРМ-ы для трёх с половиной человек, и качество кода там соответствующее (считай, никакое), за качеством там никто не следит, это никому не надо.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628837
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

за то время, пока я учавствовал в разработке корпоративных систем, у меня сложилось чёткое ощущение, что в России это то ещё болото и отставание от западных аналогов лет на 7 минимум.
Судя по тому, какие темы время от времени появляются на форуме, ситуация там не особо изменилась.

Так что я вполне допускаю и понимаю, что там проверки на констрейтах.
Хорошо хоть констрейнты есть, а то ведь люди с мейнфреймов переходили, иной раз так базу проектировали, что смех и грех
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628838
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordза FindUserByLogin() для определения уникальности ты получишь хороших люлей
А за
Код: sql
1.
2.
IF EXISTS (SELECT 1 FROM PERSONS WHERE LOGIN = :login)
  RETURN -5


каких люлей отвесят и с какой аргументацией?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628861
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAверноя я понял, что Вы за проверку уникальности на уровне БД именно логина, или домена при регистрации?

А можно полюбопытствовать, где Вы такое видели?
Вроде как принято сообщать о том, что такой логин, или домен уже занят до записи в БД.

Плюс регистрация вполне может оказаться визардом в N шагов с прикреплением скана документа, подтверждающего личность.
И запись в целевую таблицу происходит только после его прохождения и ещё каких-то проверок.
И как-то нелепо после всего сообщать пользователю, что такой логин уже занят, опираясь на ошибку о нарушении уникальности.

Кстати, если Вы так делаете, то не могли бы показать кусок кода?
Любопытно как Вы парсите сообщение, чтобы понять, что нарушена уникальность именно логина, или домена.
любой аттрибут, на который навешано условие уникальности/ссылочной целостности должен проверяться на уровне БД, это не имеет никакого отношения к "заморачиванию" с доп проверками, нет никаких проблем с возврашением юзера на то место страницы где введен логин (или любой другой аттрибут не прошедший валидацию) который требуется изменить, а в случае если прозводится какая-то закачка документов в момент регистрации (только обычно это делается после, более правильный кейс - это подтвержение кода по смс), то данные идут в staging таблицу где работает точно такая-же логика. (в случае если надо подсветить уже заюзаный логин/домейн еще до нажатия на кнопку ОК никто не мешает "заморочится" с проверкой, только это не имеет никакого отношения к обсуждаемому вопросу)
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628862
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAНе поймёт так пнёт какого-нибудь айтишника, который про себя подумает: "Что, дура, разве не видишь, что написано 'attempt to store duplicate value (visible to active transactions) in unique index PERS_IDX_LOGIN. Problematic key value is (<expression> = Vasya)'? Ясен пень, что такой логин уже есть!", - а в слух вежливо скажет, что надо придумать другой логин.

это ты всерьез такие ошибки пользователю выводишь? боже.. В данной ситуации кстати когда система по-сути однопользовательская даже говнокод написанный хвостом "без заморочек на проверки" будет работать т.к. ты по-определению не можешь получить конфликты обновлений
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628864
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAА за
Код: sql
1.
2.
IF EXISTS (SELECT 1 FROM PERSONS WHERE LOGIN = :login)
  RETURN -5


каких люлей отвесят и с какой аргументацией?
это ты хвосту такие вопросы задавай, я логику в хранимках с возвратом кода исполнения уже забыл когда писал в последний раз
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628882
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordskyANAНе поймёт так пнёт какого-нибудь айтишника, который про себя подумает: "Что, дура, разве не видишь, что написано 'attempt to store duplicate value (visible to active transactions) in unique index PERS_IDX_LOGIN. Problematic key value is (<expression> = Vasya)'? Ясен пень, что такой логин уже есть!", - а в слух вежливо скажет, что надо придумать другой логин.

это ты всерьез такие ошибки пользователю выводишь? боже..
Дурак что-ли? Конечно не вывожу.

А ты покажешь код как ты понимаешь по ошибке, что именно логин такой уже существует, а не ник, не номер паспорта, или что-то ещё?
Очень любопытно.

Ну и хоть один сайт, где выводится сообщение о том, что такой логин уже существует в системе после того, как попытались что-то в БД записать.
Давно таких не видел, тоже любопытно.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628884
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordskyANAА за
Код: sql
1.
2.
IF EXISTS (SELECT 1 FROM PERSONS WHERE LOGIN = :login)
  RETURN -5



каких люлей отвесят и с какой аргументацией?
это ты хвосту такие вопросы задавай, я логику в хранимках с возвратом кода исполнения уже забыл когда писал в последний раз
Я тоже давно так не писал. Но ты же большой спец по люлям на code review, вот я тебя и спрашиваю.
Как-то "я логику в хранимках с возвратом кода исполнения уже забыл когда писал" не тянет на аргументацию в пользу люлей
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628886
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordлюбой аттрибут, на который навешано условие уникальности/ссылочной целостности должен проверяться на уровне БД
Да, это же очевидно! Было бы странно, если бы создал уникальный индекс, а его уникальность не проверяется
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628888
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordлюбой аттрибут, на который навешано условие уникальности/ссылочной целостности должен проверяться на уровне БД

Покажи место в этом треде, где говорилось иное, или хоть что-то, что противоречило этому утверждению, форумное балаболище.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628910
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я кстати видал на одном смежном горе проекте попытки парсить ошибки из СУБД, и переводить их на человечий язык пользователя. Во-первых, это работало только на том, что лично протестировал разработчик, при чём на локальной версии БД. При заливки на продакшен всё накрылось медным тазом, так как версия продакшена отличалась от дев. Во-вторых, после обновления версии БД, ошибки стали прилетать локализованные, всё опять накрылось, а разраба к тому времени уже выгнали (подробностей не знаю, но надеюсь с позором).
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628913
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати внезапно в Microsoft придумали UserValidator , что валидирует пользователей до сохранения.
И ему, скуа, можно выставить свойство RequireUniqueEmail .

Походу пора выезжать к ним, чтобы люлей раздать
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629004
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAКстати внезапно в Microsoft придумали UserValidator , что валидирует пользователей до сохранения.
И ему, скуа, можно выставить свойство RequireUniqueEmail .

Походу пора выезжать к ним, чтобы люлей раздать
а ты код посмотрел, как это реализовано?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629024
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Этот код проверяет не уникальность имейл, а кому он принадлежит в каком то тупом контексте какого то тупого менеджера юзеров
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629027
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уникальность может обеспечить только владелец ресурса
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629034
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRos,

тут обсуждается сама идея вынести проверку уникальности логина в код, что отрабатывает до сохранения в БД
реализация ясен пень зависит от
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629038
alex55555
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В последней части спора правы все. Но точно так же в последней части спора неправы многие.

То есть просто нужно упомянуть разделение валидации ряда сущностей на периоды "до сохранения" и "в момент сохранения". В первый период мы отрезаем 99.9% проблем, а во второй - все оставшиеся. При этом если сохранением заведует сервер приложений, то вполне вероятна ситуация с кэшем интересующих нас сущностей, в котором и производится поиск и блокировка до сохранения или отмены, что позволяет объединить проверки "до" и "во время" сохранения.

В общем опять всё уходит в сторону разнообразия требований, но тем не менее даже если "до" и "во время" объединены, всё равно не вредно помнить о наличии разделения на "до" и "во время". Поэтому stenford прав, что напомнил, а остальные правы, что указали ему на неполноту напоминания.

Ну и ошибки по констрейнтам из базы вам всем как раз об этой теме и призваны напоминать.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629051
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosЭтот код проверяет не уникальность имейл, а кому он принадлежит в каком то тупом контексте какого то тупого менеджера юзеров
Ахаха, ну да этот тупой менеджер юзеров вызывает тупой метод FindByEmailAsync (говорят, что в компании камрада stenford за это выдают люлей на code review).
И если юзер с таким мылом найден в хранилище, то формируется IdentityError с кодом DuplicateEmail и соответсвующим описанием проблемы.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629058
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex55555,

а Вы сами-то как проверяете уникальность логина, домена, ника, почты при регистрации?
До записи, или пишете в базу и обрабатываете ошибки?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629069
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAДурак что-ли? Конечно не вывожу.
правда не выводишь? А сюда зачем тогда написал? Что-бы показать как не выводишь? Какая интересная поведенческая модель, по некоторым персонажам тут можно диссертации по психиатрии защищать

skyANAА ты покажешь код как ты понимаешь по ошибке, что именно логин такой уже существует, а не ник, не номер паспорта, или что-то ещё?
Очень любопытно.

да легко

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
try
                {
                    SaveCustomer(customer);
                }
                catch (DbUpdateException ex)
                {
                    System.Data.SqlClient.SqlException sqlException = (System.Data.SqlClient.SqlException)ex.InnerException;

                    switch (sqlException.Number)
                    {
                        case PK_VIOLATION:
                            throw new DuplicateLoginException();
                        case IX_VIOLATION:
                            throw new DuplicateMobileNumberException();
                        default:
                            throw;
                    }
                }



а теперь выложи-ка сюда аналог твоего кода, делающего тоже-самое, я правда знаю что там будет, но для полноты диссертации так сказать

skyANAНу и хоть один сайт, где выводится сообщение о том, что такой логин уже существует в системе после того, как попытались что-то в БД записать.
Давно таких не видел, тоже любопытно.
ты сам-то понял, что написал? Ты по одному взгляду на сайт собрался определить реализацию конфликтов обновлений? Ты точно понимаешь о чем мы тут разговариваем-то?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629074
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAэто ты хвосту такие вопросы задавай, я логику в хранимках с возвратом кода исполнения уже забыл когда писал в последний раз
Я тоже давно так не писал. Но ты же большой спец по люлям на code review, вот я тебя и спрашиваю.
Как-то "я логику в хранимках с возвратом кода исполнения уже забыл когда писал" не тянет на аргументацию в пользу люлей [/quot]
теперь спокойно сядь, подумай, и переформулируй вопрос в логически связанной форме, а то твой поток сознания парсить лень
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629080
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAКстати внезапно в Microsoft придумали UserValidator , что валидирует пользователей до сохранения.
И ему, скуа, можно выставить свойство RequireUniqueEmail .

Походу пора выезжать к ним, чтобы люлей раздать
ты точно понимаешь о чем мы тут говорим? Конфликт обновления знаешь что такое? Знаешь как их надо обрабатывать? Или увидев флаг в менеджере юзеров решил что он все за тебя сам сделает?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629082
schi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И все-таки непонятно, с чем связано желание проверять уникальность до записи в базу данных
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629086
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
schiИ все-таки непонятно, с чем связано желание проверять уникальность до записи в базу данных
связано с незнанием принципов работы баз данных и того, как работают многопользовательские системы в целом
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629089
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenford
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
switch (sqlException.Number)
                    {
                        case PK_VIOLATION:
                            throw new DuplicateLoginException();
                        case IX_VIOLATION:
                            throw new DuplicateMobileNumberException();
                        default:
                            throw;
                    }



Валидация на эксепшенах.

И это тело ещё тут что-тото задвигает про code review, про собеседования и прочее?

Это примерно как колхозник будет объяснять математикам, как правильно высчитывать площадь, с помощью квадратной фанеры метр на метр.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629092
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordschiИ все-таки непонятно, с чем связано желание проверять уникальность до записи в базу данных
связано с незнанием принципов работы баз данных и того, как работают многопользовательские системы в целом

Да уже понятно про ваш колхоз всё
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629102
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
schiИ все-таки непонятно, с чем связано желание проверять уникальность до записи в базу данных

На пальцах

1. Разнесение логики валидации, это однозначно очень плохо, тут даже без комментариев
2. Невозможность протестировать валидацию, так как она становится завязана на инстанс базы данных
3. Валидация на сообщениях из базы данных, которые строго не регламентируются, так как это просто message, который может поменяться в любой версии и не совместим с другими СУБД в принципе
3.1. Посмотрите на убожеский код stenford , не видите проблему? Я вижу, он не отделяет нарушение разных констрейтов одного типа. Он на эксепшенах, а как ещё? Ведь ошибка БД это уже эксепшен.
4. Валидация на изменяющей операции БД, при которой создаётся транзакция, а это фейл и за это могут тупо отлупить по рукам, да и уволить нафиг.
5. Желание валидировать ДО операции в транзакции, это повсеместно.

И вообще, я не понимаю, чего тут обсуждать, валидация на нарушениях констрейтов это полный идиотизм, skyANA же просто интеллигентно троллит колхозника, очевидно. И печально.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629106
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosЭтот код проверяет не уникальность имейл, а кому он принадлежит в каком то тупом контексте какого то тупого менеджера юзеров

seriously? видно, насколько внимательно ты смотрел..
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629109
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex55555Ну и ошибки по констрейнтам из базы вам всем как раз об этой теме и призваны напоминать.

Ну тогда и не проблема все ошибки и эксепшены показывать пользователю.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629129
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordправда не выводишь? А сюда зачем тогда написал? Что-бы показать как не выводишь? Какая интересная поведенческая модель, по некоторым персонажам тут можно диссертации по психиатрии защищать
Так и тянет тебя перейти на личности, да? Ведёшь себя, как му**к

Я вроде чёрным по белому написал, что мне легко поверить в то, что в каком-нибудь корпоративном софте так и реализовано, без лишних заморочек.
Сам я корпоративное ПО не пишу, ссылка на проект в профиле, вроде как всем на форуме это давно известно.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629134
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordты сам-то понял, что написал? Ты по одному взгляду на сайт собрался определить реализацию конфликтов обновлений? Ты точно понимаешь о чем мы тут разговариваем-то?
Опять дурака включил? Нет конечно. Нажму F12, проанализирую гоняемый туда-сюда трафик.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629140
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordда легко

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
try
                {
                    SaveCustomer(customer);
                }
                catch (DbUpdateException ex)
                {
                    System.Data.SqlClient.SqlException sqlException = (System.Data.SqlClient.SqlException)ex.InnerException;

                    switch (sqlException.Number)
                    {
                        case PK_VIOLATION:
                            throw new DuplicateLoginException();
                        case IX_VIOLATION:
                            throw new DuplicateMobileNumberException();
                        default:
                            throw;
                    }
                }

А вот за пример спасибо, обсудим.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629142
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttViPRosЭтот код проверяет не уникальность имейл, а кому он принадлежит в каком то тупом контексте какого то тупого менеджера юзеров

seriously? видно, насколько внимательно ты смотрел..

это тупой код, и он не гарантирует уникальность
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629143
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordskyANAэто ты хвосту такие вопросы задавай, я логику в хранимках с возвратом кода исполнения уже забыл когда писал в последний раз
Я тоже давно так не писал. Но ты же большой спец по люлям на code review, вот я тебя и спрашиваю.
Как-то "я логику в хранимках с возвратом кода исполнения уже забыл когда писал" не тянет на аргументацию в пользу люлей
теперь спокойно сядь, подумай, и переформулируй вопрос в логически связанной форме, а то твой поток сознания парсить лень[/quote]
Это была ирония. Можешь не заморачиваться
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629150
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordskyANAКстати внезапно в Microsoft придумали UserValidator , что валидирует пользователей до сохранения.
И ему, скуа, можно выставить свойство RequireUniqueEmail .

Походу пора выезжать к ним, чтобы люлей раздать
ты точно понимаешь о чем мы тут говорим? Конфликт обновления знаешь что такое? Знаешь как их надо обрабатывать? Или увидев флаг в менеджере юзеров решил что он все за тебя сам сделает?
Да, понимаю. Да, знаю. Нет, не решил.
Ты тему обсудить хочешь, или посраться? Пишешь с явным апломбом
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629152
mikron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordhVosttНет не верно, ни разу. Не вводите людей в заблуждение.
в заблуждение вводишь здесь только ты, да еще и как обычно в очень наглой и оскорбительной форме, проверки уникальности должны быть только в БД т.к. только БД в состоянии обеспечить транзакционную целостность операции, твой вариант можешь даже не предлагать, я знаю что там будет метод репозитория FindUserByLogin() на основании которого принимается решение об уникальности С подобным подходом ты в серьезную компанию даже собеседование не пройдешь, если там конечно тимлид не такой-же...
Не писайте на стены храма. Это вызывает гнев. Да и занятие бесполезное.
Из личных наблюдений:
Люди не хотят думать - это трудно и утомительно. Удобней читать книгу и верить - тому что там написано, и в то что ты обладаеш знанием. Задайте им вопрос - почему они так думают и какие доказательства.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629156
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mikron,

и бл* когда успевают сколько читать уму непостижимо
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629157
mikron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex55555В общем опять всё уходит в сторону разнообразия требований, но тем не менее даже если "до" и "во время" объединены, всё равно не вредно помнить о наличии разделения на "до" и "во время". Поэтому stenford прав, что напомнил, а остальные правы, что указали ему на неполноту напоминания.

Ну и ошибки по констрейнтам из базы вам всем как раз об этой теме и призваны напоминать.

++
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629159
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRoshVosttпропущено...


seriously? видно, насколько внимательно ты смотрел..

это тупой код, и он не гарантирует уникальность
В общем случае не гарантирует.
Он проверяет существует-ли пользователь с такой почтой в системе, и если да, то формирует ошибку с соответствующим кодом и сообщением.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629160
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
по теме - в уникальности чего либо можно быть уверенным только "после" фиксации транзакции
никаких "до"
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629162
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRoshVosttпропущено...


seriously? видно, насколько внимательно ты смотрел..

это тупой код, и он не гарантирует уникальность

непонятно тогда что ты там смотрел. гарантирует на уровне прикладного интерфейса.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629163
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

нифига не гарантирует
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629164
mikron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosmikron,

и бл* когда успевают сколько читать уму непостижимо
:) наиважнейший вопрос.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629165
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosпо теме - в уникальности чего либо можно быть уверенным только "после" фиксации транзакции
никаких "до"
Ты читал ТС-а ( 21328013 )?

AndryGЯ имею ввиду ошибки в вводимых данных!

Если человек пытается зарегистрировать уже существующий логин
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629166
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosпо теме - в уникальности чего либо можно быть уверенным только "после" фиксации транзакции
никаких "до"

с хрена ли? вот, допустим, тебе ставят задачу:

1. на странице регистрации большая форма
2. пользователь вводит логин и ему показывает можно или нельзя использовать этот логин
3. время на заполнение формы, не более 20 мин
4. пользователь нажимает Submit, и не получает ошибку, что имя пользователя уже зарегано, ни при каких обстоятельствах

пойдёшь полоскать уши заказчику, про «фиксацию транзакции» и «никаких до»? или осилишь?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629167
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAТак и тянет тебя перейти на личности, да? Ведёшь себя, как му**к

если-бы я тут перешел на личности, ты-бы не отряхнулся Но я не буду, я-ж не какое-то невежественное хамло из подворотни
Код-то где? Я жду. Обещаю люлей не давать Точнее сам код я знаю какой будет, мне к нему комментарии будут интересны
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629170
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAОпять дурака включил? Нет конечно. Нажму F12, проанализирую гоняемый туда-сюда трафик.
штоооооо? Ну-ка отсюда поподробнее, а то мои подозрения в твердом твоем понимании обсуждаемого вопроса с каждым разом становятся все сильнее. У тебя есть репозиторий, где ты проводишь проверку напрямую в БД или какими угодно проверками до момента непосредственной записи. Как ты это определишь по гоняемому трафику?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629171
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRoshVostt,

нифига не гарантирует

на момент проверки, гарантирует.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629172
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А чтобы нам, уважаемые, ещё не поразмышлять на тему того, что данные о пользователе в современном мире могут быть фрагментированы (sharding), то есть разложены по разным серверам.
Это вполне себе актуально для современных веб-приложений.

Попытаемся записать в каждую из шард, и если где-то упало, то откатимся? Или же проще проверить на существование перед сохранением?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629173
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordskyANAТак и тянет тебя перейти на личности, да? Ведёшь себя, как му**к

если-бы я тут перешел на личности, ты-бы не отряхнулся Но я не буду, я-ж не какое-то невежественное хамло из подворотни
Код-то где? Я жду. Обещаю люлей не давать Точнее сам код я знаю какой будет, мне к нему комментарии будут интересны
Код в репозитории, где же ещё.
Я же подождал и без лишних эмоций
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629175
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordskyANAОпять дурака включил? Нет конечно. Нажму F12, проанализирую гоняемый туда-сюда трафик.
штоооооо? Ну-ка отсюда поподробнее, а то мои подозрения в твердом твоем понимании обсуждаемого вопроса с каждым разом становятся все сильнее. У тебя есть репозиторий, где ты проводишь проверку напрямую в БД или какими угодно проверками до момента непосредственной записи. Как ты это определишь по гоняемому трафику?
Ты мне дай сайт, я тебе запишу.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629177
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttViPRoshVostt,

нифига не гарантирует

на момент проверки, гарантирует.
"момент проверки" никого не волнует, важен окончательный результат
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629182
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mikronНе писайте на стены храма. Это вызывает гнев. Да и занятие бесполезное.

тут не храм, а элементарное невежество, в совокупности с отсутствием опыта работы с реальными нагруженными системами
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629183
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAТы мне дай сайт, я тебе запишу.
бери sql.ru
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629184
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAА чтобы нам, уважаемые, ещё не поразмышлять на тему того, что данные о пользователе в современном мире могут быть фрагментированы (sharding), то есть разложены по разным серверам.

Есть ещё и совершенно другие механизмы работы с данными, кроме как работать с одним единственным инстансом SQL в режиме CRUD, и не видеть дальше носа :)
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629185
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRoshVosttпропущено...


на момент проверки, гарантирует.
"момент проверки" никого не волнует, важен окончательный результат

правильно понял, в твоём случае не выполнима задача обеспечить гарантии с момента проверки до совершения транзакции и без исключений из БД, ничего не поделать?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629186
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я пришел к выводу (наблюдая за "вебописателями"), что разделение разработки на "фронтенд" и" бакенд" - приводит к размыванию ответственности (и как последствие - ошибкам)
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629189
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosя пришел к выводу (наблюдая за "вебописателями"), что разделение разработки на "фронтенд" и" бакенд" - приводит к размыванию ответственности (и как последствие - ошибкам)

это примерно как сделать выводы о полётах в космос по чёрно-белым фотографиям из газеты.
когда попробуешь, тогды и поговорим.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629191
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

и так как в вебе пользователей дофига и они никаких прав на наезд не имеют, то эти ошибки просто игнорируются
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629195
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAТы мне дай сайт, я тебе запишу.
Ну или смотри https://signup.live.com
Регаю существующий email.
Вижу что уходит XmlHttpRequest на https://signup.live.com/API/CheckAvailableSigninNames.
В ответ прилетает JSON с ошибкой показывается сообщение этот адрес бла-бла-бла, введите другой.
Регаю test123@test.te . Вижу что уходит XmlHttpRequest на https://signup.live.com/API/CheckAvailableSigninNames.
В ответ прилетает JSON с isAvailable: true , жму далее и продолжаю регистрацию.

В инкогнито открываю второй браузер и регаю опять test123@test.te .
В ответ прилетает всё тот же JSON c isAvailable: true .

Делаю вывод, что никто ничего ни в какие таблицы не писал.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629196
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRoshVostt,

и так как в вебе пользователей дофига и они никаких прав на наезд не имеют, то эти ошибки просто игнорируются

В вебе всё честно, ты можешь до посинения игнорить ошибки, просто не получишь денег, так как пользователи предпочтут альтернативу, это тебе не новый софт прикупить и заказать интеграцию за хулиарды, от которой больше вреда, чем пользы.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629201
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRos,

Сейчас решения принимаются довольно быстро. Если прямо сейчас нельзя что-нибудь потыкать и посмотреть как это работает, оно нафиг не нужно. Это реально потеря времени и денег, с кем-то переписывать, ждать когда тебе пришлют невнятные PDF-ки, выслушивать как всё будет офигенно и шоколадно, но ничего непонятно, ловить каких-то людей, опять контактировать. И до сих пор ничего не увидеть и ни в чём не убедиться.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629203
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordskyANAТы мне дай сайт, я тебе запишу.
бери sql.ru
На sql.ru даже F12 жмакать не надо. Итак видно, что ничего в БД не писалось а существование логина проверили.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629206
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordmikronНе писайте на стены храма. Это вызывает гнев. Да и занятие бесполезное.

тут не храм, а элементарное невежество, в совокупности с отсутствием опыта работы с реальными нагруженными системами
Как самокритично
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629208
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosя пришел к выводу (наблюдая за "вебописателями"), что разделение разработки на "фронтенд" и" бакенд" - приводит к размыванию ответственности (и как последствие - ошибкам)
Ты это о чём? И "фронтенд" и" бакенд" должен писать один человек?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629209
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAskyANAТы мне дай сайт, я тебе запишу.
Ну или смотри https://signup.live.com
Регаю существующий email.
Вижу что уходит XmlHttpRequest на https://signup.live.com/API/CheckAvailableSigninNames.
В ответ прилетает JSON с ошибкой показывается сообщение этот адрес бла-бла-бла, введите другой.
Регаю test123@test.te . Вижу что уходит XmlHttpRequest на https://signup.live.com/API/CheckAvailableSigninNames.
В ответ прилетает JSON с isAvailable: true , жму далее и продолжаю регистрацию.

В инкогнито открываю второй браузер и регаю опять test123@test.te .
В ответ прилетает всё тот же JSON c isAvailable: true .

Делаю вывод, что никто ничего ни в какие таблицы не писал.
в обоих приведеных случаях это проверка для пользовательского интерфейса, я об этом в самом первом ответе тебе написал, майкрософтовкий аккаунт в случае нахождения аккаунта сразу предлагает залогиниться и не морочить им голову, это не имеет отношения к обсуждаемому вопросу.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629213
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosя пришел к выводу (наблюдая за "вебописателями"), что разделение разработки на "фронтенд" и" бакенд" - приводит к размыванию ответственности (и как последствие - ошибкам)
ты-б видел ЧТО умудряются написать фронтэндщики когда им поручают что-то из бэкэнда, это даже код ревью не лечится...
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629216
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordskyANAпропущено...

Ну или смотри https://signup.live.com
Регаю существующий email.
Вижу что уходит XmlHttpRequest на https://signup.live.com/API/CheckAvailableSigninNames.
В ответ прилетает JSON с ошибкой показывается сообщение этот адрес бла-бла-бла, введите другой.
Регаю test123@test.te . Вижу что уходит XmlHttpRequest на https://signup.live.com/API/CheckAvailableSigninNames.
В ответ прилетает JSON с isAvailable: true , жму далее и продолжаю регистрацию.

В инкогнито открываю второй браузер и регаю опять test123@test.te .
В ответ прилетает всё тот же JSON c isAvailable: true .

Делаю вывод, что никто ничего ни в какие таблицы не писал.
в обоих приведеных случаях это проверка для пользовательского интерфейса, я об этом в самом первом ответе тебе написал, майкрософтовкий аккаунт в случае нахождения аккаунта сразу предлагает залогиниться и не морочить им голову, это не имеет отношения к обсуждаемому вопросу.
В первом ответе мне ты написал: "любой аттрибут, на который навешано условие уникальности/ссылочной целостности должен проверяться на уровне БД".
Я с этим и не спорю: 21332221

Я с этим не согласен:
stenfordAndryGПишу код уровня "доступа к даным", При повторном прогоне кода создания юзера вылезла ожидаемая ошибка уникальности логина. Тут и появилась мысль использовать это для уменьшения кода валидаторов - не делать некоторые и вылавливать для этого ошибки БД.
все верно, проверка уникальности/ссылочной целостности и должны производится только на уровне БД т.к. на клиенте такие проверки бессмысленны и вредны
Не надо ТСа подталкивать выпиливать валидаторы, что проверяют существование логина до записи в БД.
Их использование - это вполне себе хорошая и полезная практика.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629217
alex55555
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAа Вы сами-то как проверяете уникальность логина, домена, ника, почты при регистрации?
До записи, или пишете в базу и обрабатываете ошибки?
По ситуации. Скажу по секрету - я тоже иногда ленюсь :)

Но когда не ленюсь, делаю в начале транзакции на сохранение запрос на уникальное поле.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629218
alex55555
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
schiИ все-таки непонятно, с чем связано желание проверять уникальность до записи в базу данных
С требованиями заказчика. А вы как думали?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629219
alex55555
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttalex55555Ну и ошибки по констрейнтам из базы вам всем как раз об этой теме и призваны напоминать.

Ну тогда и не проблема все ошибки и эксепшены показывать пользователю.
Ты не понял смысл. А вообще - весь смысл в том, что считать проблемой.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629221
alex55555
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttВ вебе всё честно, ты можешь до посинения игнорить ошибки, просто не получишь денег, так как пользователи предпочтут альтернативу
В вебе мало таких областей, где альтернатива действительно "one click away". В основном же там юзеры с ошибками мирятся. Хотя до некоторого порога массовость ошибок, конечно же, пытаются снижать.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629223
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
schiИ все-таки непонятно, с чем связано желание проверять уникальность до записи в базу данных
Как Вам такое: исключение - это сбой в системе.
На восстановление после сбоя системе требуется некоторое время и не факт, что удастся вернуться в корректное состояние.

Так давайте уменьшим вероятность сбоя кошерной валидацией!
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629226
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот понаписали то))
На гупый вопрос от ТС).
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629228
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAВ первом ответе мне ты написал: "любой аттрибут, на который навешано условие уникальности/ссылочной целостности должен проверяться на уровне БД".


цитируй до конца:

stenfordв случае если надо подсветить уже заюзаный логин/домейн еще до нажатия на кнопку ОК никто не мешает "заморочится" с проверкой, только это не имеет никакого отношения к обсуждаемому вопросу


skyANAНе надо ТСа подталкивать выпиливать валидаторы, что проверяют существование логина до записи в БД.
Их использование - это вполне себе хорошая и полезная практика.
нет, использование таких валидаторов непосредственно перед сохранением бессмысленно и вредно т.к. неопытные разработчики выполнив такую проверку считают что сделали все что нужно и умывают руки. Это не считая дополнительных бессмысленных запросов к базе, засорение интерфейса идиотскими методами CheckUniqueMobileNumber() и самого метода сохранения бессмысленным кодом
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629235
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordт.к. неопытные разработчики
Код ты привел хороший и верный. Только не будь максималистом. Мы тут про опытных разработчиков говорим.
И доп валидация требование ТЗ.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629242
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Код ты привел хороший и верный. Только не будь максималистом. Мы тут про опытных разработчиков говорим.
И доп валидация требование ТЗ.
ТЗ не может декларировать метод разруливания конфликтов сохранения, все что оно может содержать - требования к интерфейсу по примеру майкрософта обсужденного выше.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629266
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordнет, использование таких валидаторов непосредственно перед сохранением бессмысленно и вредно т.к. неопытные разработчики выполнив такую проверку считают что сделали все что нужно и умывают руки. Это не считая дополнительных бессмысленных запросов к базе, засорение интерфейса идиотскими методами CheckUniqueMobileNumber() и самого метода сохранения бессмысленным кодом

вот прикольно, да?

ни одной аргументации, за 5 страниц. ни единой!

с хрена ли бессмысленно исопользование валидаторов? с фига ли вредно? почему? кто так решил?

когда это разработчики, которые делают такие проверки стали вдруг неопытными?

с какого перепугу они «умывают руки»?

с чего это запросы в базу бессмысленные, если как раз таки всё наоборот и запросы на чтение это именно безопасные запросы.

почему вдруг методы Check/Validate стали идиотскими, разработчики крупнейших систем и фреймворков идиоты??

у ребёнка крайне больное воображение.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629269
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordнет, использование таких валидаторов непосредственно перед сохранением бессмысленно и вредно т.к. неопытные разработчики выполнив такую проверку считают что сделали все что нужно и умывают руки.
Какая завидная упёртость, я восхищён.

ТС же написал, что есть у него пресловутый уникальный индекс для логина. И у всех остальных он есть.
К чему выдумывать каких-то неопытных разработчиков, что ограничиваются только валидаторами, а на ограничения целостности забивают?

И вот сидит сам с собой обсуждает свои же фантазии
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629277
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

Ну и валидация на исключениях, это канеш зелёный билет на всех собеседованиях
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629282
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordPetro123Код ты привел хороший и верный. Только не будь максималистом. Мы тут про опытных разработчиков говорим.
И доп валидация требование ТЗ.
ТЗ не может декларировать метод разруливания конфликтов сохранения, все что оно может содержать - требования к интерфейсу по примеру майкрософта обсужденного выше.
Да. Там функциональное требование - проверить логин перед нажатием кнопы ОК (POST) при веб проекте.
Поэтому я сначала пишу код как у вас, а потом Дополнительну валидацию.
Это во всех учебниках написано.
Ну а шарпе прикол в том, что текст из InnerException на русском вообще простой и понятный. Намного проще что тут приводился.
Только бабуля в 80 лет не разберет.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629283
tip78
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAНе надо ТСа подталкивать выпиливать валидаторы, что проверяют существование логина до записи в БД.
Их использование - это вполне себе хорошая и полезная практика.
это отличный способ набрать себе мейлов по-быстрому и потом начать их ломать сразу массово.
или спамить
или даже телефонов, ещё лучше
халявная база через логин-форму, ну не прелесть?
а вот когда при нажатии кнопки там задержка sleep(1) в случае ошибки, а потом вываливаются сразу все найденные, то такое уже не прокатит
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629285
schi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я все-таки не понимаю, почему обеспечение уникальности в базе данных при многопользовательской работе называют валидацией ? Если это валидация, то ей, валидацией, занимается база данных, для того в нее всякие constraints встраивают.

в 21333538 приведен пример, когда в двум браузерам возвращается isAvailable: true , интересно, что будет, если продолжить в бвух же браузерах регистрацию, опираясь на это значение ?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629288
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tip78,
Не понял.
Там по ajax спрашивается у базы есть ли логин.
Понятно, что это предварительная проверка.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629289
tip78
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
schiв 21333538 приведен пример, когда в двум браузерам возвращается isAvailable: true , интересно, что будет, если продолжить в бвух же браузерах регистрацию, опираясь на это значение ?
физически - один зарегается, а другой - нет
виртуально - зависит от разработчика, учёл ли он такой вариант
в худшем случае пользователь сотрёт палец об кнопку "сабмит", так и не получив вразумительного отлупа
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629290
tip78
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123tip78,
Не понял.
Там по ajax спрашивается у базы есть ли логин.
Понятно, что это предварительная проверка.
вы уже 4й тут, кто не понимает русский, чёрный-по-белому написанный текст.
беда (
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629291
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
schiЕсли это валидация, то ей, валидацией, занимается база данных, для того в нее всякие constraints встраивают.
Вы у программистов были?
Там валидация это мин и макс значение в коде html
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629292
NoDataFound
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
schiЯ все-таки не понимаю, почему обеспечение уникальности в базе данных при многопользовательской работе называют валидацией ?

Потому что это по сути автовалидация,что тут непонятного.
Закинул данные в базу, получил еррор, форму не закрыл, подсветил косяк.

Больше ада и шизофрении ITT, второй день ржу.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629293
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttskyANA,

Ну и валидация на исключениях, это канеш зелёный билет на всех собеседованиях
Конечно, это же ещё сишники придумали в махровые года. Очень уважаемый поход
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629298
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tip78skyANAНе надо ТСа подталкивать выпиливать валидаторы, что проверяют существование логина до записи в БД.
Их использование - это вполне себе хорошая и полезная практика.
это отличный способ набрать себе мейлов по-быстрому и потом начать их ломать сразу массово.
или спамить
или даже телефонов, ещё лучше
халявная база через логин-форму, ну не прелесть?
а вот когда при нажатии кнопки там задержка sleep(1) в случае ошибки, а потом вываливаются сразу все найденные, то такое уже не прокатит
Ещё один, кто других считает сразу дураками.
Вы уже попробовали сделать 1000 post-запросов за минуту по тому урлу?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629299
tip78
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кстати, господа крутые разработчики, а как вы вообще вставляете данные в БД? через PDO?
как вы совмещаете транзакцию с подготовленными запросами, или вы на это забили?
когда в одной форме находятся сразу несколько сущностей, но сабмитятся сразу разом, но в разные таблицы (например, телефоны это отдельная таблица), вы такое вообще проходили?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629300
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123tip78,
Не понял.
Там по ajax спрашивается у базы есть ли логин.
Понятно, что это предварительная проверка.
Он к тому, что пишем бота который перебирает email-ы и постим на тот урл, если вернули ответ о том, что такая почта есть, то заносим себе в базу для спам рассылок.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629301
tip78
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAtip78пропущено...

это отличный способ набрать себе мейлов по-быстрому и потом начать их ломать сразу массово.
или спамить
или даже телефонов, ещё лучше
халявная база через логин-форму, ну не прелесть?
а вот когда при нажатии кнопки там задержка sleep(1) в случае ошибки, а потом вываливаются сразу все найденные, то такое уже не прокатит
Ещё один, кто других считает сразу дураками.
Вы уже попробовали сделать 1000 post-запросов за минуту по тому урлу?
а вы уже пробовали армию ботов с разными IP на такие урлы засылать?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629303
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NoDataFoundЗакинул данные в базу, получил еррор, форму не закрыл, подсветил косяк.а если между формой и базой 4 слоя не пересекающихся по феншую архитектуры?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629304
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tip78skyANAпропущено...

Ещё один, кто других считает сразу дураками.
Вы уже попробовали сделать 1000 post-запросов за минуту по тому урлу?
а вы уже пробовали армию ботов с разными IP на такие урлы засылать?
Я по другую сторону баррикад
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629306
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tip78кстати, господа крутые разработчики, а как вы вообще вставляете данные в БД? через PDO?
как вы совмещаете транзакцию с подготовленными запросами, или вы на это забили?
когда в одной форме находятся сразу несколько сущностей, но сабмитятся сразу разом, но в разные таблицы (например, телефоны это отдельная таблица), вы такое вообще проходили?
О, начало новой ветки дискуссии положено
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629307
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAто заносим себе в базу для спам рассылок.понятно. Каждый дурак найдет как вилку использовать в нетрадиционной ориентации. Неинтересно.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629309
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123NoDataFoundЗакинул данные в базу, получил еррор, форму не закрыл, подсветил косяк.а если между формой и базой 4 слоя не пересекающихся по феншую архитектуры?
Везде throw new DuplicateLoginException() !
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629314
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tip78кстати, господа крутые разработчики, а как вы вообще вставляете данные в БД? через PDO?
как вы совмещаете транзакцию с подготовленными запросами, или вы на это забили?
когда в одной форме находятся сразу несколько сущностей, но сабмитятся сразу разом, но в разные таблицы (например, телефоны это отдельная таблица), вы такое вообще проходили?

у нас на текущем активном проекте SQL база вообще только для чтения. никто никогда туда не делает ни INSERT, ни UPDATE, ни DELETE. все изменения накатываются только через события (event sourcing).

были ситуации и не однократно, когда несколько пользователей одновременно правили одну большую форму. никто не потерял данные и не перезатёр друг друга, всё отлично мержится на апп, и единичные конфликты отображаются в UI и резолвятся пользователями.

нагрузка не великая, >1000 активных пользователей со всей России, в пике 200 в минуту (это когда жопа прилетает к ним в виде распоряжений).

нет.. конечно не проходили, куда нам..
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629316
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAPetro123пропущено...
а если между формой и базой 4 слоя не пересекающихся по феншую архитектуры?
Везде throw new DuplicateLoginException() !

как завищал великий гуру-мастер всех джунов, мастера Кода Ревью и архиепископа Собеседований
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629323
mikron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAЯ с этим не согласен:
stenfordпропущено...
все верно, проверка уникальности/ссылочной целостности и должны производится только на уровне БД т.к. на клиенте такие проверки бессмысленны и вредны
Не надо ТСа подталкивать выпиливать валидаторы, что проверяют существование логина до записи в БД.
Их использование - это вполне себе хорошая и полезная практика.
Я предпологаю, тут путаница в определениях.
уникальность/ссылочная целостности != валидаторы ввода.
Я тоже считаю, что "ссылочная целостности" может проверятся только на базе данных.
Всё остальное - ненадёжно и просто шарлотанство. Но бывают и "отшепенцы".
Путать толко не надо. ссылочная целостность не обязательно вообше связана с пользователем
И в то-же время валидация вчодных данных значительно богаче в рассматриваемых критериев чем "ссылочная" целостность. Может рассматривать например источник вчодныч данныч, время поступления данных етц.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629326
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tip78БД? через PDO?я лично полез в гугл искать слово PDO))))
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629329
NoDataFound
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123а если между формой и базой 4 слоя не пересекающихся по феншую архитектуры?
Ага, и реализовано на dbfках FoxBase, да?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629332
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mikronссылочная целостность не обязательно вообше связана с пользователемименно.
У меня вот FK в базе извещает юзверя что удалить организацию нельзя т.к. на ней висят юзвери.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629334
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NoDataFoundPetro123а если между формой и базой 4 слоя не пересекающихся по феншую архитектуры?
Ага, и реализовано на dbfках FoxBase, да? не. На биткоинах и микросервисах.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629339
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mikronЯ предпологаю, тут путаница в определениях.
уникальность/ссылочная целостности != валидаторы ввода.
Я тоже считаю, что "ссылочная целостности" может проверятся только на базе данных.
Всё остальное - ненадёжно и просто шарлотанство. Но бывают и "отшепенцы".
Путать толко не надо. ссылочная целостность не обязательно вообше связана с пользователем
И в то-же время валидация вчодных данных значительно богаче в рассматриваемых критериев чем "ссылочная" целостность. Может рассматривать например источник вчодныч данныч, время поступления данных етц.

Нет никакой путанницы в определениях. С самого начала , было сказано, что валидация не отменяет констрейты, и что констрейты это не валидация. А конкретные аргументы почему требуется своя валидация НЕ СМОТРЯ на констрейты, я в этом треде приводил, по пукнтам. Это важные пункты, просто в определённых кругах, на качество кода нас$ать, или люди просто не понимают, что это означает. Отдельные люди реально думают, что они экономят на валидации, в то же время пишут откровенный говнокод и не понимая разницы между ошибками и валидацией.

Вставка данных в БД с нарушениями целостности, это ОШИБКА, т.е. заталкиваются данные, о которых приложение не знает, корректны они или нет, и полагается на БД. Но БД не может обеспечить на 100% бизнес-целостность, даже более того, он не может обеспечить даже на 50% в сложных серьёзных системах.

Разнос валидации на проверки в коде и часть на ошибки БД это, извините, пиз$#ц. Как это сопровождать потом? Как тестировать? Что за фигня вообще, как такое может быть, что эти проблемы не очевидны?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629350
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mikronЯ тоже считаю, что "ссылочная целостности" может проверятся только на базе данных.

Серьёзно? Про принцип наименьшего удивления слышали?

Юзер вводит логин, система подсказывает, что логин свободен, он тыкает Sumbit и получает отлуп.
Что это значит для пользователя? Система его нае$#ла.
Что это значит для бизнеса? Потеря клиента.

Потому что видите ли, какому-то ущербному Васе кажется, что констрейты это всё.

Или так, пользователь выбирает что-то там из выпадающего списка в одном из полей, потом жмёт такой ОКАЙ, и ррр-раз, такого %ITEM% не существует. Нарушение целостности! Алярм! Это как не существует? А чё я тогда там выбирал?

Но русский разработчик матёр и суров. Он считает, что пользователь это табурет. Всё выдержит, утрётся и придёт ещё. При чём это верно как в разработке, так и в каком-нибудь автовазе.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629364
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

именно это вы и делаете (то что ты выше описал)

а "русский прогер" все гарантирует:
- если сказал что "логин" свободен, всем другим запрещен ввод такого логина (пока транзакция не закончится)
- если "че то" выбрал, то это "че то" гарантированно есть для всех (пока транзакция не закончится)
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629366
NoDataFound
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лол, вы под конец-то хоть определитесь с граничными условиями :)
Ввод данных для сайтега или в ERP? Разница ощутимая.
В случае заведения какой-нибудь расходной статьи, уникальный индекс по имени/коду статьи скажет бабе Маше, что такая статья есть.
В случае публичного мылсервера - ясен пень нельзя мучать человека отшибами "Ты такой красивый тут уже есть", ему надоест и он уйдет.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629368
mikron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttmikronЯ тоже считаю, что "ссылочная целостности" может проверятся только на базе данных.

Юзер вводит логин, система подсказывает, что логин свободен, он тыкает Sumbit и получает отлуп.
Что это значит для пользователя? Система его нае$#ла.
Что это значит для бизнеса? Потеря клиента.

Ты возражаеш моему утверждению про "ссылочную целосность" и как контпример приводиш случай "валидации".
И одновремменно утверждаеш что путаницы с понятиями нет.
В таком случае это демагогия.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629398
tip78
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttбыли ситуации и не однократно, когда несколько пользователей одновременно правили одну большую форму. никто не потерял данные и не перезатёр друг друга, всё отлично мержится на апп, и единичные конфликты отображаются в UI и резолвятся пользователями.
так то если сильно припрёт, можно вообще на вебсокетах (да даже аяксом) сразу сохранять поле, которое стало не активным
ну или перед сохранением проверять, когда последний раз было изменение
и если попадает в промежуток между "открыл форму" (ts лежит в hidden) и "нажал сохранить", то извещать
но такое редко нужно
настолько редко, что я только щас, на лету всё это придумал
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629507
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tip78так то если сильно припрёт, можно вообще на вебсокетах (да даже аяксом) сразу сохранять поле, которое стало не активнымвот если использовать ws то всё решается намного проще. если , для примера, взять элементарный случай - заполнение множеством юзеров одну таблицу с исключением правки одной ячейки/строки несколькими юзерами.
то как только один начал вводить данные - у всех остальных данная ячейка лишается возможности редактирования и её фон становится отличным от остальных. при этом не исключен вариант отображения вводимых символов у всех по мере их ввода юзером . или по окончанию ввода - отображение введённого. и изменение фона или цвета символов для обозначения , что данные изменены. если продолжить фантазии - то можно и отобразить какой юзер это изменил. и субд со своими блокировками здесь не приделах.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629509
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tip78настолько редко, что я только щас, на лету всё это придумалвсё уже придумано и работает.....
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629518
tip78
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяи субд со своими блокировками здесь не приделах.
да, блокировки тут конечно никаким боком, достаточно в редиске флажок оставить
ws вообще супер технология, с ней кучу всего прикольного можно создавать
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629520
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tip78ws вообще супер технологияты первый такое говоришь (после меня
)
tip78с ней кучу всего прикольного можно создаватьчто и создаётся
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629546
tip78
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну не всем же пхп-демонов писать
зато тут по запросам спецы сильные
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629552
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAКакая завидная упёртость, я восхищён.

ТС же написал, что есть у него пресловутый уникальный индекс для логина. И у всех остальных он есть.
К чему выдумывать каких-то неопытных разработчиков, что ограничиваются только валидаторами, а на ограничения целостности забивают?

И вот сидит сам с собой обсуждает свои же фантазии
мои подозрения оправдались - ты так и не понял о чем тут конкретно идет речь, конфликт обновления не нагуглил что такое? Я-ж говорил код выкладывай я-б тебе сразу на это указал, но нет, люлей испугался Вообще очень показателен тут уровень многих разработчиков, которые кодами клепают mvc странички на 5 пользователей и ладно бы слушали что опытные люди говорят, так нет, начинают свое невежество пропагандировать другим
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629553
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
schiЯ все-таки не понимаю, почему обеспечение уникальности в базе данных при многопользовательской работе называют валидацией ? Если это валидация, то ей, валидацией, занимается база данных, для того в нее всякие constraints встраивают.

в 21333538 приведен пример, когда в двум браузерам возвращается isAvailable: true , интересно, что будет, если продолжить в бвух же браузерах регистрацию, опираясь на это значение ?
сама терминология не имеет принципиального значения, называй это валидацией уникальности, но это действительно совершенно не имеет ничего общего с валидацией длины строки, это абсолютно разные валидации
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629554
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mikronТы возражаеш моему утверждению про "ссылочную целосность" и как контпример приводиш случай "валидации".
И одновремменно утверждаеш что путаницы с понятиями нет.
В таком случае это демагогия.
это типично для писателей однопользовательских систем, они на такие ошибки на практике никогда и не наталкиваются, ты не сможешь получить конфликт обновления в системе в несколько пользователей, и подход с requireUniqueFlag упомянутый выше даже будет работать, ситуация в многопользовательской системе совершенно другая. Их путает понятие "валидация", т.к. опять-же в однопользовательской системе предварительная проверка действительно сойдет за "валидацию"
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629555
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tip78так то если сильно припрёт, можно вообще на вебсокетах (да даже аяксом) сразу сохранять поле, которое стало не активным
ну или перед сохранением проверять, когда последний раз было изменение
и если попадает в промежуток между "открыл форму" (ts лежит в hidden) и "нажал сохранить", то извещать
но такое редко нужно
настолько редко, что я только щас, на лету всё это придумал
конфликт возникший между "открыл форму" и "нажал ОК" это не конфликт обновления обсуждаемый здесь, обсуждаемый конфликт появится когда несколько тысяч пользователей работают в системе одновременно, там и будут возникать эти "необьяснимые" для писателей однопользовательских систем ошибки, как так, ведь они-ж добавили код "валидации" уникальности перед сохранением, ошибка просто не может появится! Навепно юзеры что-то там напартачили...
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629556
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tip78кстати, господа крутые разработчики, а как вы вообще вставляете данные в БД? через PDO?
как вы совмещаете транзакцию с подготовленными запросами, или вы на это забили?
когда в одной форме находятся сразу несколько сущностей, но сабмитятся сразу разом, но в разные таблицы (например, телефоны это отдельная таблица), вы такое вообще проходили?
транзакция называется, еще одно незнакомое клепателям однопользовательских форм понятие. К счастью тот-же EF автоматически заворачивает все в транзакцию при сохранении, правда все равно некоторые умудряются вызывать savechanges() несколько раз подряд из-за неумения и базового непонимания работы многопользовательски систем, но тут уже ничего не поделать, таких надо просто увольнять
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629837
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordskyANAКакая завидная упёртость, я восхищён.

ТС же написал, что есть у него пресловутый уникальный индекс для логина. И у всех остальных он есть.
К чему выдумывать каких-то неопытных разработчиков, что ограничиваются только валидаторами, а на ограничения целостности забивают?

И вот сидит сам с собой обсуждает свои же фантазии
мои подозрения оправдались - ты так и не понял о чем тут конкретно идет речь, конфликт обновления не нагуглил что такое? Я-ж говорил код выкладывай я-б тебе сразу на это указал, но нет, люлей испугался Вообще очень показателен тут уровень многих разработчиков, которые кодами клепают mvc странички на 5 пользователей и ладно бы слушали что опытные люди говорят, так нет, начинают свое невежество пропагандировать другим
Что, задело тебя? Сразу хамло включил.
У меня под десяток миллионов пользователей в день, а у тебя? Сколько ты там писал? 500?
Иди подотрись своим опытом
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629862
alex55555
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRos- если "че то" выбрал, то это "че то" гарантированно есть для всех (пока транзакция не закончится)
И как разруливается конфликт в случае, когда "чё то" удалено, потом выбрано кем-то (успел залочить) и вставлено куда-то? Кто станет дураком? Тот, который удалил, или тот, который вставил?

В общем случае - где предел сложности? Сколько хитрых алгоритмов разруливания ты способен написать?

Поэтому всегда где-то останавливаются. Ну и сопутствующие 0.001% ошибок от количества операций принимается как неизбежный ущерб.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629863
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mikronЯ предпологаю, тут путаница в определениях.
уникальность/ссылочная целостности != валидаторы ввода.
Я тоже считаю, что "ссылочная целостности" может проверятся только на базе данных.
Всё остальное - ненадёжно и просто шарлотанство. Но бывают и "отшепенцы".
Путать толко не надо. ссылочная целостность не обязательно вообше связана с пользователем
И в то-же время валидация вчодных данных значительно богаче в рассматриваемых критериев чем "ссылочная" целостность. Может рассматривать например источник вчодныч данныч, время поступления данных етц.
На мой взгляд типы вроде Стенфорда сначала не читают то, что пишет ТС, а потом включают дурака и вещают, что речь якобы не о том и вокруг все тупицы, а он на коне.
Йоба, типичная ситуация
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629872
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAЧто, задело тебя? Сразу хамло включил.
У меня под десяток миллионов пользователей в день, а у тебя? Сколько ты там писал? 500?
Иди подотрись своим опытом
500 запросов одномоментно. Понятие одномоментности ты в прошлый раз так и не осилил как ни старался. А про свои десятки миллионов пользователей можешь тут больше не втирать, по твоим познаниям ты максимум разносишь кофе тем, кто реально пишет систему, если таковая реально существует конечно.
Код наконец будет или тебе не дают подсмотреть в исходниках? Если не будет - отправишся в игнор, я хамство и необязательность могу терпеть если собеседник интересный или тред полезный, но от тебя кроме флуда и откровенно нудных постов ничего нет.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629873
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NoDataFoundЛол, вы под конец-то хоть определитесь с граничными условиями :)
Ввод данных для сайтега или в ERP? Разница ощутимая.
В случае заведения какой-нибудь расходной статьи, уникальный индекс по имени/коду статьи скажет бабе Маше, что такая статья есть.
В случае публичного мылсервера - ясен пень нельзя мучать человека отшибами "Ты такой красивый тут уже есть", ему надоест и он уйдет.
Дык епта: 21331759

Я Вам по секрету скажу: ТС пишет сайтег, он на первой странице это упоминал.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629876
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordskyANAЧто, задело тебя? Сразу хамло включил.
У меня под десяток миллионов пользователей в день, а у тебя? Сколько ты там писал? 500?
Иди подотрись своим опытом
500 запросов одномоментно. Понятие одномоментности ты в прошлый раз так и не осилил как ни старался. А про свои десятки миллионов пользователей можешь тут больше не втирать, по твоим познаниям ты максимум разносишь кофе тем, кто реально пишет систему, если таковая реально существует конечно.
Код наконец будет или тебе не дают подсмотреть в исходниках? Если не будет - отправишся в игнор, я хамство и необязательность могу терпеть если собеседник интересный или тред полезный, но от тебя кроме флуда и откровенно нудных постов ничего нет.
Нет у тебя 500 запросов одномоментно. Не ври. Только в тестах и твоих фантазиях да и то это не так называется.
Есть Requests per second, Requests per minute, Calls per minute. И нет такой метрики как количество запросов одномоментно.
Лошара
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629877
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex55555ViPRos- если "че то" выбрал, то это "че то" гарантированно есть для всех (пока транзакция не закончится)
И как разруливается конфликт в случае, когда "чё то" удалено, потом выбрано кем-то (успел залочить) и вставлено куда-то? Кто станет дураком? Тот, который удалил, или тот, который вставил?

В общем случае - где предел сложности? Сколько хитрых алгоритмов разруливания ты способен написать?

Поэтому всегда где-то останавливаются. Ну и сопутствующие 0.001% ошибок от количества операций принимается как неизбежный ущерб.

Удаленное не может быть выбрано, выбранное не может быть удалено и т.д.
Все максимально честно -
оптимизм
пессимизм
их смесь
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629881
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAНет у тебя 500 запросов одномоментно. Не ври. Только в тестах и твоих фантазиях да и то это не так называется.
Есть Requests per second, Requests per minute, Calls per minute. И нет такой метрики как количество запросов одномоментно.
Лошара
иди это расскажи нашему клиенту, который проводил нагрузочное тестирование и проект был сдан. Понятие "нагрузочное тестирование" тебе тоже не знакомо, так-же как и многопользовательская работа. Код будет или нет?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629882
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordпо твоим познаниям ты максимум разносишь кофе
Ну ну, вспомним-ка: 20784349

stenfordskyANAstenford,

во первых autoConfig="true" надо убрать
во вторых что показывает Performance Monitor? на какой нагрузке запросы начинают вставать в очередь, сколько при этом выполняется, сколько всего, каково время выполнения?

и зачем все это нужно? 500 запросов в секунду - это 43 200 000 запросов в сутки
откуда Вы столько планируете получить?
круто, спасибо
Не коробит от того, что разносчик кофе поопытнее тебя будет?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629885
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordskyANAНет у тебя 500 запросов одномоментно. Не ври. Только в тестах и твоих фантазиях да и то это не так называется.
Есть Requests per second, Requests per minute, Calls per minute. И нет такой метрики как количество запросов одномоментно.
Лошара
иди это расскажи нашему клиенту, который проводил нагрузочное тестирование и проект был сдан. Понятие "нагрузочное тестирование" тебе тоже не знакомо, так-же как и многопользовательская работа. Код будет или нет?
Да, да, не знакомо. Я пальцем в небо ткнул своим советом и у тебя "сразу зашевелилась в несколько раз быстрее на "тяжелых" (занимающих сотню-другую мс) запросах".
Магия
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629889
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проводил он тестирование: 20784349
stenfordskyANAесли не секрет, а сколько у клиента вообще пользователей?
думаю 500 и есть, либо планируется скоро
И в итоге сколько в реальности запросов в секунду? 0.5? 0.05?
Можешь не отвечать. Ты не знаешь. Performance Monitor так и научился запускать
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629907
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAНе коробит от того, что разносчик кофе поопытнее тебя будет?
нет не коробит, и именно та твоя подсказка и сбивала меня с толку долгое время т.к. я думал ты реальный спец. В итоге я сам нужные настройки расковырял и установил, что и позволило пройти нагрузочное тестирование. Ты хоть сам-то понял почему IIS так себя ведет?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629918
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAИ в итоге сколько в реальности запросов в секунду? 0.5? 0.05?
Можешь не отвечать. Ты не знаешь. Performance Monitor так и научился запускать
может и 0.5 в секунду, только вот и 500 запросов пришедших за миллисекунду тоже обработается, в отличие от твоей системы, где будет всего-лишь "даунтайм", могу тоже ссылку привести на твои перлы
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629920
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordskyANAНе коробит от того, что разносчик кофе поопытнее тебя будет?
нет не коробит, и именно та твоя подсказка и сбивала меня с толку долгое время т.к. я думал ты реальный спец. В итоге я сам нужные настройки расковырял и установил, что и позволило пройти нагрузочное тестирование. Ты хоть сам-то понял почему IIS так себя ведет?
О, сейчас нам специалист по многопользовательским системам расскажет как работает IIS. Слушаем внимательно
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629931
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordskyANAИ в итоге сколько в реальности запросов в секунду? 0.5? 0.05?
Можешь не отвечать. Ты не знаешь. Performance Monitor так и научился запускать
может и 0.5 в секунду, только вот и 500 запросов пришедших за миллисекунду тоже обработается, в отличие от твоей системы, где будет всего-лишь "даунтайм", могу тоже ссылку привести на твои перлы
Ахаха, на подавись стопроцентным аптаймом:
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629935
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAО, сейчас нам специалист по многопользовательским системам расскажет как работает IIS. Слушаем внимательно
зачем слушать, все в том топике описано, я специально там все по полочкам разложил, в том числе для самого себя если в будущем опять потребуется нагрузочное тестирование проводить, там все указано, и причины, и что и где какие настройки нужно ставить. Понял-ли ты все там мною написанное - вопрос, я сейчас сильно сомневаюсь. Тебе IIS что-ли захотелось обсудить дальше? Или все-же код приведешь который крутой спец как ты должен был набросать за пару минут, а не за сутки?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629938
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAАхаха, на подавись стопроцентным аптаймом:
т.е. десятки миллионов пользователей что-то не торопятся в твой сайт приходить? Или даунтайм при ихнем приходе уже отменяется? Какой прогресс всего за полгода, skyANA сел, подкрутил автоконфиг и 100% аптайм теперь в системе всегда
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629951
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAPerformance Monitor так и научился запускать
кстати да, ты явно из того топика ничего и не вынес, проблема-то не в ресурсах была, а в потоках и как IIS с ними работает, то, что ты сейчас Performance Monitor упомянул означает что совершенно не понял тогда проблему, ресурсы сервера не были перегружены, и не могли быть
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629965
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordskyANAАхаха, на подавись стопроцентным аптаймом:
т.е. десятки миллионов пользователей что-то не торопятся в твой сайт приходить? Или даунтайм при ихнем приходе уже отменяется? Какой прогресс всего за полгода, skyANA сел, подкрутил автоконфиг и 100% аптайм теперь в системе всегда
О, специалист по многопользовательским системам не знает, что такое Uptime и Downtime.
Объясню.

На графике показано, что за прошедшие 12 дней апреля у нас uptime 100%.
Показать, сколько запросов за это время? Легко. Открывай калькулятор, в уме наверняка не сможешь посчитать.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629968
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordskyANAPerformance Monitor так и научился запускать
кстати да, ты явно из того топика ничего и не вынес
Из того топика можно вынести только одно: есть фантазёры среди заказчиков и разработчиков, что верят в то, что их 500 пользователей возьмут и одномоментно что-то сделают.

Настроить простейший мониторинг и узнать реальность им ума не хватает.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629975
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordзачем слушать, все в том топике описано, я специально там все по полочкам разложил
Разложил он.

Я тебе дал ссылки на статьи почитать: 20777429 .
Через 4 дня ты таки прочитал их и разложил: 20785539 .

Для меня, по моим же ссылкам. Ржу не могу
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629979
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAНа графике показано, что за прошедшие 12 дней апреля у нас uptime 100%.
Показать, сколько запросов за это время? Легко. Открывай калькулятор, в уме наверняка не сможешь посчитать.
Посчитал, 130 запросов в секунду Такое IIS разрулит на дефолтных настройках, это вообще не нагрузка. Тоже мне десятки миллионов пользователей. У меня на девелоперской машине тысяча запросов за секунду на фидлере спокойно отрабатывала (сами запросы правда легкие до 100мс), а вот jMeter ее клал на лопатки уже с 2-3 сотнями, я-ж говорю нагрузочное тестирование ты не проводил сам и вообще непонятно зачем тогда с советами полез
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629980
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordпроблема-то не в ресурсах была, а в потоках и как IIS с ними работает, то, что ты сейчас Performance Monitor упомянул означает что совершенно не понял тогда проблему
Дурака кусок

Открой уже Performance Monitor и найди соответсвующие показатели, что покажут тебе, что происходит с потоками.

Проблема у него не в ресурсах. Надо же так спалиться, что не в глаза не видел Performance Monitor
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629984
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAИз того топика можно вынести только одно: есть фантазёры среди заказчиков и разработчиков, что верят в то, что их 500 пользователей возьмут и одномоментно что-то сделают.

Настроить простейший мониторинг и узнать реальность им ума не хватает.
такое техзадание, а вот зачем нагрузочное тестирование вообще проводится (не конкретно в том проекте где я тоже согласен что 500 юзеров систему не положат) в том-же топике тоже обсуждалось, ты для себя оттуда тоже очевидно ничего не вынес
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629985
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordskyANAНа графике показано, что за прошедшие 12 дней апреля у нас uptime 100%.
Показать, сколько запросов за это время? Легко. Открывай калькулятор, в уме наверняка не сможешь посчитать.
Посчитал, 130 запросов в секунду Такое IIS разрулит на дефолтных настройках, это вообще не нагрузка. Тоже мне десятки миллионов пользователей. У меня на девелоперской машине тысяча запросов за секунду на фидлере спокойно отрабатывала (сами запросы правда легкие до 100мс), а вот jMeter ее клал на лопатки уже с 2-3 сотнями, я-ж говорю нагрузочное тестирование ты не проводил сам и вообще непонятно зачем тогда с советами полез
130 запросов в секунду - это 11 232 000 запросов в сутки. Такую реальную нагрузку создают десяток миллионов пользователей и туева хуча ботов.
Так что подумай что в реальности происходит когда твоей поделкой пользуются в лучшем случа 500 человек и как смешно выглядит то, чем ты занимался
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629987
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAРазложил он.

Я тебе дал ссылки на статьи почитать: 20777429 .
Через 4 дня ты таки прочитал их и разложил: 20785539 .

Для меня, по моим же ссылкам. Ржу не могу
гуглить и я умею, а вот читать нагугленное ты очевидно был не в состоянии, т.к. не понял ни проблему, ни методы ее решения
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629989
alex55555
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosУдаленное не может быть выбрано, выбранное не может быть удалено и т.д.
Все максимально честно -
оптимизм
пессимизм
их смесь
Где есть оптимизм - есть обломавшиеся. Где есть пессимизм - тоже есть обломавшиеся, но по другому. То есть разрулить все конфликты всё равно не получится. Поэтому "всё честно" можно трактовать как "иногда вас пошлют". Хотя да, послать можно вежливо, например - ваш логин всё же оказался занят (не смотря на наши грандиозные усилия и политику облизывания клиента и вообще вот вам ссылка, где мы вас просто ужасно любим!), но попробуйте ещё раз.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629990
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAДурака кусок

Открой уже Performance Monitor и найди соответсвующие показатели, что покажут тебе, что происходит с потоками.

Проблема у него не в ресурсах. Надо же так спалиться, что не в глаза не видел Performance Monitor
да правда что-ли, Performance Monitor тебе возьмет и обьяснит как и почему IIS с потоками обращается? Мля, беру свои слова про твои нудные посты назад, сегодня ты мою пятницу сделал
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629991
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordskyANAДурака кусок

Открой уже Performance Monitor и найди соответсвующие показатели, что покажут тебе, что происходит с потоками.

Проблема у него не в ресурсах. Надо же так спалиться, что не в глаза не видел Performance Monitor
да правда что-ли, Performance Monitor тебе возьмет и обьяснит как и почему IIS с потоками обращается? Мля, беру свои слова про твои нудные посты назад, сегодня ты мою пятницу сделал
Дурака кусок

Он покажет тебе количественные метрики. Понимаешь, что такое метрики, или пару статей дать почитать?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629992
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA130 запросов в секунду - это 11 232 000 запросов в сутки. Такую реальную нагрузку создают десяток миллионов пользователей и туева хуча ботов.
Так что подумай что в реальности происходит когда твоей поделкой пользуются в лучшем случа 500 человек и как смешно выглядит то, чем ты занимался
я-ж говорю ты из дискурсий на форумах ничего не выносишь, где такое тестирование полезно я там упоминал, но собстенно ты даже мой пост непосредстенно над твоим не прочитал/не понял
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629994
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenford,

да да, я тебя не понял
не понял что ты полез в machine.config, не понял, что ты там не так сделал
не сказал тебе об это, ты не поправил, у тебя не заработало, ты не сказал мне за то спасибо

так всё и было в твоей голове
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39629998
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAДурака кусок

Он покажет тебе количественные метрики. Понимаешь, что такое метрики, или пару статей дать почитать?
ты походу уже потерялся даже на этой самой странице, действительно, какие-уж там прошлогодние дискурсии, перечитай уже топик, и тот и этот, проблема в том была в механизме работы IIS и причинах, а не в ресурсах, по метрикам потоков ты-бы ничего не понял и не мог понять по-определению. Я даже закрою сейчас глаза на то, что ты сейчас пытаешся тут неуклюже потоки натянуть на перфоманс монитор, ты там вещал про диск/память, а никакие не потоки, про которые ты так ничего и не понял
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39630001
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordskyANAРазложил он.

Я тебе дал ссылки на статьи почитать: 20777429 .
Через 4 дня ты таки прочитал их и разложил: 20785539 .

Для меня, по моим же ссылкам. Ржу не могу
гуглить и я умею, а вот читать нагугленное ты очевидно был не в состоянии, т.к. не понял ни проблему, ни методы ее решения
Показать ишью в Jira за 14-й год, где расписано как я проводил нагрузочное тестирование и тюнил настройки в machine.config?
Обтекать ведь тебе тогда придётся
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39630002
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAда да, я тебя не понял
не понял что ты полез в machine.config, не понял, что ты там не так сделал
не сказал тебе об это, ты не поправил, у тебя не заработало, ты не сказал мне за то спасибо

так всё и было в твоей голове
конечно не понял, ты меня совершенно в другом направлении толкал со своим монитором, та настройка мне конечно сэкономила время, минут 5-10 в гугле, но поверь, если-бы ты там вообще не появлялся - ты-б мне сэкономил куда больше времени
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39630005
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAПоказать ишью в Jira за 14-й год, где расписано как я проводил нагрузочное тестирование и тюнил настройки в machine.config?
Обтекать ведь тебе тогда придётся
зачем мне твоя джира, если-б ты тогда понял проблему - ты-б не тыкал мне своим монитором, значит даже проводя такие работы ты толком не разобрался в том, что происходит, и полез к другим с советами ни к месту
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39630007
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordskyANAДурака кусок

Он покажет тебе количественные метрики. Понимаешь, что такое метрики, или пару статей дать почитать?
ты походу уже потерялся даже на этой самой странице, действительно, какие-уж там прошлогодние дискурсии, перечитай уже топик, и тот и этот, проблема в том была в механизме работы IIS и причинах, а не в ресурсах, по метрикам потоков ты-бы ничего не понял и не мог понять по-определению. Я даже закрою сейчас глаза на то, что ты сейчас пытаешся тут неуклюже потоки натянуть на перфоманс монитор, ты там вещал про диск/память, а никакие не потоки, про которые ты так ничего и не понял
Дурака кусок

Ну всё же записано. То что ты, дурак, считаешь что открываешь Performance Monitor и там надо смотреть диск/память, это всё потому, что ты так и не осилил его открыть.

Я тебе писал:
skyANAвоспользуйтесь Performance Monitor-ом, возможно запросы встают в очередь
skyANAИмеется в виду Windows Performance Monitor, а не плагин к JMeter.
skyANAво первых autoConfig="true" надо убрать
во вторых что показывает Performance Monitor? на какой нагрузке запросы начинают вставать в очередь, сколько при этом выполняется, сколько всего, каково время выполнения ?
А ты:
stenford Performance Monitor я не запускал , с ним разбираться надо как там счетчики нужные активировать, пока времени нет. В Task Manager'e показатели памяти, процессора и диска вообще почти не меняются, только активность сетки резко подскакивает, возможно она стала узким местом тут.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39630010
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenford,

и вот толку в том, что ты что-то там осилил почитать, потюнить, потестировать, если ты так и не понял, что метрики, которые я тебе советовал посмотреть, напрямую зависят от настроек в processModel
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39630014
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordконечно не понял, ты меня совершенно в другом направлении толкал
Ага я тебе накидал ссылок, где расказывается про рабочие потоки в IIS и какими параметрами в каком конфиге можно поиграться.
Ты начал крутить эти параметры, получил результат.

И я оказывается толкал тебя в другом направлении.

И не му**к-ли ты после этого?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39630016
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAНу всё же записано. То что ты, дурак, считаешь что открываешь Performance Monitor и там надо смотреть диск/память, это всё потому, что ты так и не осилил его открыть.

Я тебе писал:
А ты:

т.е. пост буквально непосредственно над тем, что ты сейчас цитируешь, и где я расписал подробнее некуда что с потоками происходит, сколько их доступно, на сколько из число снижается при нагрузке, и даже упомянул про алгоритм IIS которым всем этим рулит - тебе ничего не дал, и про потоки ничего было не понятно, верно? Там было написано и про 500 запросов, и сколько потоков доступно, и насколько их число уменьшилось. Тебе конечно было все понятно, но сказать это было нельзя, надо было упомянуть монитор и начать докапываться вопросами про ресурсы, верно? Я-ж говорю, ты-б не влез тогда со своими идиотскими советами я-б куда быстрее все расставил по полочкам, а ты походу поработал один раз в жизни с монитором и начал тут его пихать куда надо и не надо
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39630020
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAАга я тебе накидал ссылок, где расказывается про рабочие потоки в IIS и какими параметрами в каком конфиге можно поиграться.
Ты начал крутить эти параметры, получил результат.

И я оказывается толкал тебя в другом направлении.

И не му**к-ли ты после этого?
ты-ж в гугле просто схватил топ 5 ссылок и вывалил их, не читая и не понимая, и монитор начал советовать на ресурсы смотреть, еще и благодарности какой-то ожидаешь
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39630023
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и это, код-то будет наконец или нет? Или монитор это единственное в чем ты разбираешся? Хотя даже в нем скорее всего знания на уровне всего остального
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39630025
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordskyANAНу всё же записано. То что ты, дурак, считаешь что открываешь Performance Monitor и там надо смотреть диск/память, это всё потому, что ты так и не осилил его открыть.

Я тебе писал:
А ты:

т.е. пост буквально непосредственно над тем, что ты сейчас цитируешь, и где я расписал подробнее некуда что с потоками происходит, сколько их доступно, на сколько из число снижается при нагрузке, и даже упомянул про алгоритм IIS которым всем этим рулит - тебе ничего не дал, и про потоки ничего было не понятно, верно?
Не верно, я всё это знал до этого, поэтому и дал тебе ссылки на статьи где об этом расписано.
Можешь сколько угодно перевирать факты, они от этого не изменяться, а ты будешь выглядеть мудаком.

stenfordТам было написано и про 500 запросов, и сколько потоков доступно, и насколько их число уменьшилось. Тебе конечно было все понятно, но сказать это было нельзя, надо было упомянуть монитор и начать докапываться вопросами про ресурсы, верно?Да, мне было всё понятно. До ресурсов я не докапывался.
Это каким дебилом надо быть, чтобы тебе писали посмотри метрики по запросам в Performance Monitor, а он смотрит показатели памяти, процессора и диска в Task Manager?
И ещё и свистит потом, что ему это и советовали.

stenfordЯ-ж говорю, ты-б не влез тогда со своими идиотскими советами я-б куда быстрее все расставил по полочкам, а ты походу поработал один раз в жизни с монитором и начал тут его пихать куда надо и не надоЕсли бы я не влез со своими советами, ты бы статью не прочитал, ни фига бы не сделал и дрочил бы дальше

Понимаю, что тебе обидно это признать, но лучше признать, чем откровенно врать. Хотя для таких упоротых как ты это не реально.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39630027
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordskyANAАга я тебе накидал ссылок, где расказывается про рабочие потоки в IIS и какими параметрами в каком конфиге можно поиграться.
Ты начал крутить эти параметры, получил результат.

И я оказывается толкал тебя в другом направлении.

И не му**к-ли ты после этого?
ты-ж в гугле просто схватил топ 5 ссылок и вывалил их, не читая и не понимая, и монитор начал советовать на ресурсы смотреть, еще и благодарности какой-то ожидаешь
Где я тебе советовал ресурсы смотреть? Все уже тут убедились в твоём вранье, а ты всё продолжаешь
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39630028
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordи это, код-то будет наконец или нет? Или монитор это единственное в чем ты разбираешся? Хотя даже в нем скорее всего знания на уровне всего остального
Для начала я над тобой поглумлюсь, а потом будет и код, не переживай.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39630031
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordты-ж в гугле просто схватил топ 5 ссылок и вывалил их, не читая и не понимая
На утрись. Мой комментарий в ишью 14-го года:
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39630051
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex55555ViPRosУдаленное не может быть выбрано, выбранное не может быть удалено и т.д.
Все максимально честно -
оптимизм
пессимизм
их смесь
Где есть оптимизм - есть обломавшиеся. Где есть пессимизм - тоже есть обломавшиеся, но по другому. То есть разрулить все конфликты всё равно не получится. Поэтому "всё честно" можно трактовать как "иногда вас пошлют". Хотя да, послать можно вежливо, например - ваш логин всё же оказался занят (не смотря на наши грандиозные усилия и политику облизывания клиента и вообще вот вам ссылка, где мы вас просто ужасно любим!), но попробуйте ещё раз.
вот это дело я валю на админа
хочет оптимизм, хочет пессимизм - для всех, а хочет для кого то пессимизм, для кого то оптимизм
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39630132
Фотография StalkerS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosУникальность может обеспечить только владелец ресурса
+1
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39630192
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosвот это дело я валю на админа
хочет оптимизм, хочет пессимизм - для всех, а хочет для кого то пессимизм, для кого то оптимизм
у тебя десктоп.
Доля десктопа перед веб уменьшается.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39640562
Фотография stells2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndryGПишем данные в БД, получаем ошибку уникального ключа.

[dbMessage:protected] => attempt to store duplicate value (visible to active transactions) in unique index "PERS_IDX1" Problematic key value is (<expression> = 'U4')
Но как теперь толком объяснить юзеру, в чем причина?

Юзеру надо просто объяснить - что разработчики накосячили и видимо будут разбираться.

А разработчикам... В общем лишить их пива, раз пишут дубли туда, где их не должно быть.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39640862
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stells2,
Ты зачем старую ветку словами пиво и накосячили поднял?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39641177
Фотография stells2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123,
Найди щель в заборе и тыкай сколько угодно, умный Вы наш.
...
Рейтинг: 0 / 0
218 сообщений из 218, показаны все 9 страниц
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]