Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2008.04.20;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.54 MB
Время: 0.04 c
9-1168631910
akaValerius
2007-01-12 22:58
2008.04.20
Организация камеры в 3D игре


2-1206273219
Бегущий человек
2008-03-23 14:53
2008.04.20
Как заюзать функцию из С-файла в проекте Delphi?


2-1206440513
031178
2008-03-25 13:21
2008.04.20
Помогите плиз...


15-1204887995
Igor_
2008-03-07 14:06
2008.04.20
define для определения версии C++ Builder


2-1206481954
Adios
2008-03-26 00:52
2008.04.20
можноли получить хэндлы всех программ свёрнутых в трей?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский