@jvmchat

Страница 1497 из 2890
guga
25.05.2017
06:18:12
Ruslan
25.05.2017
06:18:13
java.util.Collections.synchronizedMap
Collections.synchronizedMap(new LinkedHashMap<?)) - типо того?

Alexander
25.05.2017
06:20:26
Ruslan
25.05.2017
06:20:45
А для богатых что?)

Google
Alexander
25.05.2017
06:21:43
А для богатых что?)
Богатые кодят своё крафтовое

Daniel
25.05.2017
06:23:05
А для богатых что?)
https://en.wikipedia.org/wiki/TLA%2B

Alexander
25.05.2017
06:28:12
а я что сказал? ну да, я и спрашиваю тебя - не веришь этой ститистике?
Конечно не верю. Гуглит ли среднестатистический китайский кодырь "how to exit vim"? Ответ: Нет. Он гуглит "из вима выйти блеать", по-китайски офкорс

Nick
25.05.2017
06:29:31
с китаем все просто, они юзают украинский vpn

Quantum Harmonizer
25.05.2017
06:29:56
Kirill
25.05.2017
06:29:56
и не могут зайти вк *бадумтс*

Daniel
25.05.2017
06:30:23
начнем с того что среднестатистический китаец вообще не гуглит

у них там свой интернет и наверняка свой аналог SO

Alexander
25.05.2017
06:34:25
женьшеньоверфлоу
Э, женьшень не трогай. Это не China only, есличо

Nick
25.05.2017
06:35:43
Alexander
25.05.2017
06:38:54
с китаем все просто, они юзают украинский vpn
Btw, подскажите самый чоткий впн чтобы из ukr в ru ходить

Google
guga
25.05.2017
06:49:45
Купить или на халяву?

Mikhail
25.05.2017
06:52:08
Вопрос. У нас тут распределенные локи реализованы как PESSIMISTIC_WRITE select на строку в бд, в которой ключ лока. И, под большой нагрузкой - начинаем сваливаться в дедлоки и висеть до таймаута.

Alexander
25.05.2017
06:52:30
Купить или на халяву?
На халяву конечно же

Mikhail
25.05.2017
06:52:38
Соббсно, в доке к LockModeType так и написано "A lock with * <code>LockModeType.PESSIMISTIC_WRITE</code> can be used when querying data and * there is a high likelihood of deadlock or update failure among * concurrent updating transactions."

В общем, как написано, то и имеем

А как правильные пацаны такое реализуют?

guga
25.05.2017
06:53:16
На халяву конечно же
Для телефона турбо vpn хороший

Mikhail
25.05.2017
06:53:18
Я понимаю, что можно зукипер+куратор запилить

но хотелось бы без новых сервисов, а обойтись БД

guga
25.05.2017
06:53:39
Для пк любой браузер, который сжимает трафик

Или опера

Alexander
25.05.2017
06:57:33
guga
25.05.2017
06:58:10
Яндекс.Браузер?
не знаю, а скачаешь его ты как?

Nick
25.05.2017
06:58:18
guga
25.05.2017
06:58:50
мне же не секьюрность нужна, а скорость, что бы порно в вк смотреть

Nick
25.05.2017
06:59:09
orbot?
Да, но орбит тож ничего, если не долго жевать

Alexander
25.05.2017
07:01:49
мне же не секьюрность нужна, а скорость, что бы порно в вк смотреть
Та ж херня, секурность побоку, а вот пинг и скорость — оно да

Google
guga
25.05.2017
07:09:48
friGate вроде работает
даже есть версия для украхи

лол

Oleg
25.05.2017
07:12:17
а чем отличается?

отдельный лист сайтов для укроблокировок?

Mikhail
25.05.2017
07:13:21
@zzashpaupat доктор, меня все игнорируют?)

guga
25.05.2017
07:15:46
Vlad
25.05.2017
07:16:12
А как правильные пацаны такое реализуют?
Ты уверен что лок на рекорд а не на всю таблицу?

Mikhail
25.05.2017
07:17:35
Типа того))))

э

а с фига бы

SELECT NAME, CREATION_DATE, UPDATE_DATE, UPDATED_BY FROM CH_LOCK WHERE (NAME = 'DX.SN00000135.hdm:sim:SmartPlug.DEVICE_OPERATION_EVENT') FOR UPDATE WAIT 30

Mikhail
25.05.2017
07:18:14
я селекчу одну строку, лок на одну строку, по идее

лок снимается через em.find(LockEntity.class, name, LockModeType.NONE);

то есть выглядит все как бы прилично

Vlad
25.05.2017
07:19:14
Хз у нас подобная проблема была как-то. Разрешилось созданием индекса. Но там люди которые шарят в бд решали проблему.

Mikhail
25.05.2017
07:19:56
у меня dba еще не пришел сегодня

Vlad
25.05.2017
07:20:01
Я уже забыл что такое sql.

Mikhail
25.05.2017
07:20:07
если сам не пойму - пойду к нему, конечно

Vlad
25.05.2017
07:21:04
А name уникален и по нему есть индекс?

Google
Mikhail
25.05.2017
07:21:42
name - primary key

то есть, логика такая - пытаемся залочить строку, если такой нет (новый пользователь, например) - инсертим строку, а уже потом лочим

в finally анлочим

казалось бы

Ruslan
25.05.2017
07:24:07
Так а с чего дедлок то? Получается что лочите вы несколькозаписей в одной транзакции правильно?

Mikhail
25.05.2017
07:25:39
там не дедлок, всё таки похоже, а так

Такой еррор: 2017-05-25 06:02:36,798 [org.springframework.integration.jms.JmsMessageDrivenEndpoint#1.container-61] ERROR (Slf4jSpyLogDelegator.java:139) - 478211. PreparedStatement.executeQuery() FAILED! SELECT NAME, CREATION_DATE, UPDATE_DATE, UPDATED_BY FROM CH_LOCK WHERE (NAME = 'DX.SN00000135.hdm:sim:SmartPlug.DEVICE_OPERATION_EVENT') FOR UPDATE WAIT 30 {FAILED after 30010 msec} java.sql.SQLException: ORA-30006: resource busy; acquire with WAIT timeout expired

Admin
ERROR: S client not available

Vlad
25.05.2017
07:26:15
Долгие транзакции

Mikhail
25.05.2017
07:26:28
то и удивительно

Vlad
25.05.2017
07:26:36
Я бы попрофилировал

У нас на проекте лочилась вся таблица вместо одной записи.

Ruslan
25.05.2017
07:28:26
Так стоп

Mikhail
25.05.2017
07:28:28
попрофилировать - это правильно, так и собирался, тем более, что сборщие метрик на эти функции уже настроен

а?

Так стоп
Стоп, окей

Ruslan
25.05.2017
07:29:31
Все

Я уже понял что не прав

Mikhail
25.05.2017
07:29:52
Окей

Vlad
25.05.2017
07:29:54
Может ты делаешь полную выборку

Google
Vlad
25.05.2017
07:30:04
В соседнем потоке

И там другой рекорд держишь

И тут выборку полную делаешь

И они друг друга ждут

Mikhail
25.05.2017
07:30:36
Vlad
25.05.2017
07:30:54
Записей из таблицы

Mikhail
25.05.2017
07:31:04
для локов отдельная таблица, на неё в ДАО две функции - одна с find и локом, вторая - с find и лок нон

а, ну и persist метод

то есть физически это не возможно

если новую запись надо добавить

Vlad
25.05.2017
07:31:55
Ну я такое встречал просто.

Mikhail
25.05.2017
07:33:18
судя по всему, изредка действительно бывают длинные транзакции, когда входящее сообщение по какой-то причине обрабатывается оч долго

и всё бы хорошо, но это задерживает транзакцию на БД, что в свою очередь тормозит всё остальное

а лок мы делаем на 30 секунд

Ruslan
25.05.2017
07:34:30
Так у вас транзакция больше 30секунд висит чтоли?

Ivan
25.05.2017
07:34:49
скорее всего несколько транзакций лочат запись

Mikhail
25.05.2017
07:34:53
Судя по всему, бывают такие транзакции периодически

одновременно?

Ivan
25.05.2017
07:35:05
да

Страница 1497 из 2890