Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.04.20;
Скачать: CL | DM;

Вниз

Ура! Это всё-таки случилось.   Найти похожие ветки 

 
DiamondShark ©   (2008-03-06 11:20) [0]

Сегодня на двух машинах совпали сгенерированные гуиды.
Как жить? Кому верить?


 
DrPass ©   (2008-03-06 11:22) [1]

Мир был близок к коллапсу как никогда...


 
DiamondShark ©   (2008-03-06 11:24) [2]


> Мир был близок к коллапсу как никогда...

Кстати, да.
Это были rowguid в репликации. Совпали на вставленных записях на разных машинах.


 
clickmaker ©   (2008-03-06 11:29) [3]


> на разных машинах.

а как же истории про то, что там использутся мак-адреса и прочая уникальная хрень?


 
pasha_golub ©   (2008-03-06 11:29) [4]


> clickmaker ©   (06.03.08 11:29) [3]

А вы, батенька, тоже рассказывайте. (с)


 
Правильный_Вася   (2008-03-06 11:40) [5]


> Сегодня на двух машинах совпали сгенерированные гуиды.Как
> жить?

генерировать на одной машине, на другой только пользовать готовые


 
DrPass ©   (2008-03-06 12:00) [6]


> Правильный_Вася   (06.03.08 11:40) [5]


> генерировать на одной машине, на другой только пользовать
> готовые

Ага, особенно красиво в этом случае будет выполняться репликация. Сначала реплицируем таблицу ГУИДов, потом натягиваем их на данные и реплицируем записи :)))


 
ПРавильный_Вася   (2008-03-06 12:03) [7]

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

правда, если он сломается, то шанс повторения на новом железе сервера увеличивается


 
Rouse_ ©   (2008-03-06 12:05) [8]

Дай угадаю - на обоих машинах 98-ой или Ме?


 
clickmaker ©   (2008-03-06 12:14) [9]


> на обоих машинах 98-ой или Ме?

а на них кто-то еще репликацию делает? o)


 
ф2   (2008-03-06 12:19) [10]


> а на них кто-то еще репликацию делает? o)

они еще и серверами выступают


 
Riply ©   (2008-03-06 13:14) [11]

Не верю ! (с)

Вероятность ошибки программиста в милионы раз больше.


 
Alex Konshin ©   (2008-03-06 14:01) [12]

Вы просто законы Мерфи не учитываете.

А вас ведь предупреждали :)


 
antonn ©   (2008-03-06 14:15) [13]


> а как же истории про то, что там использутся мак-адреса
> и прочая уникальная хрень?

а что, участие мак-адреса гарантирует отсутствие коллизий? :)


 
Marser ©   (2008-03-06 14:42) [14]


> а что, участие мак-адреса гарантирует отсутствие коллизий?
>  :)

Если его не менять своими шаловливыми ручками :-))


 
Mystic ©   (2008-03-06 14:43) [15]

> DiamondShark ©   (06.03.08 11:20)

Долго старался?


 
Пробегал...   (2008-03-06 14:45) [16]

а что, там у вас тоже гуиды генерируются тысячу раз в секунду? Имхо, это именно неправильная архитектура.

Если GUID использовать именно для COM-приложений - я думаю совпадение гуидов на одном компе у разных программных продуктов будет очень маловероятно.


 
Пробегал...   (2008-03-06 14:45) [17]

как, наверное, и планировалось разработчиками.


 
Пробегал...   (2008-03-06 14:45) [18]

Удалено модератором


 
Поп Гапон   (2008-03-06 16:56) [19]

Написать свою обертку-класс, которая будет получать GUID раз в секунду и прибавлять еще к нему 64-битное значение - скажем номер тома диска.


 
Поп Гапон   (2008-03-06 16:57) [20]

ну и 32-битный рандом


 
Kenny   (2008-03-06 17:18) [21]

Один админ закупил подешевке несколько сетевых карт NoName. Потом долго удивлялся, почему у него локальная сеть не работает: у всех карточек был один и тот же мак-адрес ))


 
DiamondShark ©   (2008-03-06 17:29) [22]


> Имхо, это именно неправильная архитектура.

Расскажи это микрософту, который использует гуиды для идентификации строк при репликации.


> Написать свою обертку-класс, которая будет получать GUID
> раз в секунду и прибавлять еще к нему 64-битное значение
> - скажем номер тома диска.

Расскажи это микрософту, который использует гуиды для идентификации строк при репликации.


 
Riply ©   (2008-03-06 17:37) [23]

>  [22] DiamondShark ©   (06.03.08 17:29)
> Расскажи это микрософту, который использует гуиды для идентификации строк при репликации.

Позволю себе повториться: ищи ошибку в программе.


 
Пробегал...   (2008-03-06 17:56) [24]

DiamondShark ©   (06.03.08 17:29) [22]
который использует гуиды для идентификации строк при репликации


как это? Он для каждой записи в БД присваивает свой GUID?


 
DiamondShark ©   (2008-03-06 18:08) [25]


> Пробегал...   (06.03.08 17:56) [24]
> как это? Он для каждой записи в БД присваивает свой GUID?

Именно так.


 
Пробегал...   (2008-03-06 18:18) [26]

блин, не понимаю. А почему бы не делать просто PK с автоинкриментом?


 
Pong   (2008-03-06 18:21) [27]

Если мне не изменяет память, компания Microsoft уже довольно давно отказалась от использования MAC-адреса в алгоритме генерирования GUID"ов. Насколько мне помнится, это было связано с вопросами безопасности, так как по GUID"у можно было определить MAC-адрес компьютера, на котором GUID был сгенерирован.


 
DiamondShark ©   (2008-03-06 18:22) [28]


> Пробегал...   (06.03.08 18:18) [26]
> блин, не понимаю. А почему бы не делать просто PK с автоинкриментом?

И как ты себе представляешь автоинкремент, согласованный между удалёнными, разъединёнными узлами?


 
Marser ©   (2008-03-06 18:25) [29]


> И как ты себе представляешь автоинкремент, согласованный
> между удалёнными, разъединёнными узлами?

Счётчик на сервере :-)


 
Pong   (2008-03-06 18:28) [30]

И как ты себе представляешь автоинкремент, согласованный между удалёнными, разъединёнными узлами?

64-битное значение, в котором первые 32 бита - идентификатор компьютера, вторые 32 бита - собственно, сам автоинкремент.


 
DiamondShark ©   (2008-03-06 18:28) [31]


> Pong   (06.03.08 18:21) [27]

Это старая байка, сродни той, что если сложить коды символов в названии Виндовс95, то получится 666.

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


 
Пробегал...   (2008-03-06 18:30) [32]

DiamondShark ©   (06.03.08 18:22) [28]

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


 
Pong   (2008-03-06 18:32) [33]

DiamondShark ©   (06.03.08 18:28) [31]

http://ru.wikipedia.org/wiki/GUID


 
DiamondShark ©   (2008-03-06 18:36) [34]


> Пробегал...   (06.03.08 18:30) [32]

А мелкософт клал на существующие PK. Как только ты реплицируешь таблицу, он создаёт там гуид-поле с уникальным индексом и default=NEWID(), и ориентируется только на него.


 
clickmaker ©   (2008-03-06 18:37) [35]


> [33] Pong   (06.03.08 18:32)

ты бы еще ссылку на чей-нибудь хомяк на народе.ру привел )


 
Pong   (2008-03-06 18:41) [36]

clickmaker ©   (06.03.08 18:37) [35]

Ты баба, или у тебя стиль аргументации такой? Если тебе не нравится информация, приведенная по ссылке - можешь отредактировать, благо Wiki это позволяет. А языком "ляп-ляп" - это на форумы для подростков, пожалуйста.


 
Пробегал...   (2008-03-06 18:42) [37]

DiamondShark ©   (06.03.08 18:36) [34]
и default=NEWID(),


хех, а это поле уникально? В смысле, очень интересно - разработчики сами верят в уникальность GUID"ов и не позаботились об уникальности вставки или все-таки БД проверяет перед заполнением есть ли такое значение уже у других записей? ;)


 
clickmaker ©   (2008-03-06 18:45) [38]


> это на форумы для подростков

а кто сказал, что здесь не форум для подростков? )


 
Пробегал...   (2008-03-06 18:45) [39]

clickmaker ©   (06.03.08 18:37) [35]
ты бы еще ссылку на чей-нибудь хомяк на народе.ру привел )


а что ты имеешь против википедии? Это отличная энциклопедия и база знаний.


 
clickmaker ©   (2008-03-06 18:47) [40]


> а что ты имеешь против википедии?

"можешь отредактировать, благо Wiki это позволяет."
(c) Pong [36]



Страницы: 1 2 вся ветка

Текущий архив: 2008.04.20;
Скачать: CL | DM;

Наверх




Память: 0.56 MB
Время: 0.027 c
2-1206386451
unknowing
2008-03-24 22:20
2008.04.20
Дескриптор Com-порта


2-1206282811
Илья
2008-03-23 17:33
2008.04.20
Подскажите, как можно перехватить все запускающиеся приложения?


2-1206519435
dumka
2008-03-26 11:17
2008.04.20
БД и INET


2-1206621832
Азамат
2008-03-27 15:43
2008.04.20
Обработка событий


2-1206415904
Santon26
2008-03-25 06:31
2008.04.20
Работа с XML файлом