aadz
На ютубе давече высветились твои доклады по го в рекомендациях, посмотрел, очень интересно))
Иди работай! Нечего телевизор смотреть про доклады, тем более, если уже все знаешь! :)
Dorian
как подсунуть ISODate туда
Там тип есть Mongodate вроде представленный в виде алиаса int64. Это?
Ilya
А подскажите nested transaction как реализовать в go - postgre (pq gorm)? я пробовал чистый скуэль получаю pq: unexpected transaction status idle, горм тем более такое не умеет
Ilya
Задача выполнить (или нет) ряд апдейтов не трогая внешнюю транзакцию
Ilya
9.6
aadz
9.6
Вроде, должно поддерживать. Или savepoint там? спроси о вложенных транзакциях на https://t.me/pgsql
aadz
Спасибо
А просто в psql у тебя вложенные транзакции работают?
Ilya
Вот не пробовал)
Ilya
Ну по докам вроде есть
Daniel
https://youtu.be/C1jm55vFejw
это же старье какое-то :) если пройдет мой доклад на хайлоад - будет еще один, наш с Кириллом общий. про производительность
Глеб
го тур прошли и третий проект на го собираете - и не знаете при этом про закрытые имена? О_о
про модули знал, про структуры уточнял порой лень писать json мапинги лезть в доку, гуглить либы да и в чате порой же тоже что-то нужно уточнять 😉
Ilya
зря
Спасибо, попробую
Ilya
Но если не нестед то получается только опрашивать таблицу на изменения?
Anonymous
это же старье какое-то :) если пройдет мой доклад на хайлоад - будет еще один, наш с Кириллом общий. про производительность
Я смотрел с удовольствием (давно). Если не пройдёт, как-то всё равно до общественности донесите свой доклад ))
Daniel
Ты ведь и на Сhaos Сonstructions доклад делал? А записывали? Есть где-то в сети?
ни на хаосе, ни на techtrain записи не было что дает мне возможность прочесть их на ближайших митапах :) тот, что на хаосе, про go-внокод, я даже с удовольствием прочту по второму разу
aadz
Спасибо, попробую
Расскажи потом, пожалуйста, чем дело кончилось? Это все ж драйвер или база не хочет? Я вложенных не делал как-то, но интересно это энать.
Dmitry
https://youtu.be/C1jm55vFejw
@onokonem спасибо за доклад, интересно было послушать, особенно про рандом :)
Aleksandr
https://habr.com/company/intel/blog/422447/
Roman
https://habr.com/company/intel/blog/422447/
да, только хотел запостить )
Roman
годная статья
.
Я правильно понимаю что тут ошибка в проверке d?
Eldar
да
.
в комментарии написано что при d<=0, в коде проверяется только d<0
Andrew
в комментарии написано что при d<=0, в коде проверяется только d<0
а зачем проверять <= если все равно 0 присваивается?
Andrew
зачем проверять <= вместо <
Eldar
что бы не было отрицательным наверно)
.
А если я поставлю 0, как написано в в комментарии?
Andrew
то у тебя будет 0)
.
0 < 0 == true?
Alik
речь в комментарии: если d 0 или меньше, то реюзить вечно первые три строки: если d меньше нуля, то сделать нулем. если d уже ноль то его (внезапно) можно не делать нулём
Andrew
d<0 { d = 0 } в чем разница? d <= 0 { d=0 }
Artem
d<0 { d = 0 } в чем разница? d <= 0 { d=0 }
в производительности 😉
Alik
лишний mov, хотя я думаю компилятор оптимизирует ))
Andrew
согласен
.
Кто нибудь сделайте ишью, мне лень 😂
Pawel
Выполняю sqlx.DB.NamedExec, получаю ошибку вида could not find name in map[string]interface {} {содержимое мапы}. А как понять какого параметра не хватает???
.
зачем?
Ну как никак, а ошибочка
Artem
какая?
.
Прочтите комментарий к функции
Artem
ну и
.
// If d <= 0, connections are reused forever.
Artem
да
Artem
и где ошибка?
.
Так, все
.
До меня только сейчас дошло
.
👌🏻
Artem
👌
Anonymous
первая проверка не относится к комментарию никак
Anonymous
Здравствуйте! У меня вопрос, я конвертирую json ответ в структуру. Вообщем то все хорошо, все конвертируется и замечательно. Вот в чем вопрос, как мне узнать сколько всего было создано объектов из структуры?
Pawel
Выполняю sqlx.DB.NamedExec, получаю ошибку вида could not find name in map[string]interface {} {содержимое мапы}. А как понять какого параметра не хватает???
разобрался и слегка прифегел. Оказывается в sqlx нельзя юзать параметры в запросах CREATE VIEW. ахринеть...
Anonymous
извините не могу правильно поставить вопрос, попробую усерднее гуглить, извините за беспокойство
Daniel
:)
Ilya
Расскажи потом, пожалуйста, чем дело кончилось? Это все ж драйвер или база не хочет? Я вложенных не делал как-то, но интересно это энать.
в общем savepoint решает. можно даже несколько уровней вложения, точнее возврат в нужную точку транзакции
Roman
https://youtu.be/C1jm55vFejw
вспоминаю как над Ad-сервером работал, только там две компании было: adition.com писали на C++ ад-сервер, а active-agent.com писали DSP на Java я бы наверное всё к чертям на Go переписал, но уже не на них работаю
Daniel
У меня были perl и go
Pawel
Есть какая нибудь ещё либа, кроме sqlx, для выполнения параметризированных запросов с именованными параметрами?
Roman
https://youtu.be/C1jm55vFejw
Я бы поспорил насчёт динамических языков :)
Anonymous
Советуют savepoint буду пробовать
Можно просто sql.Tx аргументом передавать в методы, которые что-то транзакционно делают. Тогда все можно сделать в одной транзе. Работал с сейвпоинтами ещё на пхп - это решение, но слишком громоздкое, имхо
Ilya
разве что старый добрый GOTO стайл)
Ilya
то есть если нескоько пойнтов будет то будет каша, но пока такого кейса к счастью нет
Anonymous
а в чем громоздксть? создал пойнт, откатился либо освободил
в этом и громоздкость. есть именно необходимость в отдельных точках и в обычной ситуации (кроме ошибочной) реально необходим откат? в моей ситуации просто “вложенные транзакции“ были проблемой кода, а не целью
Ilya
ну у меня идет длинная транзакция, в ходе нее если параметр достиг нужного уровня надо еще несколько таблиц обновить
Anonymous
так и делается, но мне если не прошли только апдейты нельзя откатывать всю транзакцию
мне кажется, это должно реализоваться просто двумя транзакциями. но если сейвпоинты ок - то пусть будут
Ilya
но если обновление таблиц не удастся - то и фиг с ними, крон потом подберет, а вот основная транзакция это basic values