Size: a a a

2020 November 22

RK

Reb Klimrod in Go-go!
Спасибо большое, поизучаю
источник

АВ

Александр Владимиров... in Go-go!
27 строка если быть точным
источник

RK

Reb Klimrod in Go-go!
Александр Владимирович
27 строка если быть точным
Ну закрыть QueryContext нет проблем. Проблема с закрытием именно QueryRow. QueryRow возвращает *Row, а не *Rows. И у *Row нет .Close()
источник

Z

Zver in Go-go!
Query row не надо закрывать.
источник

FY

Fabio Yannick in Go-go!
did you read the link
источник

АД

Алексей Долгов... in Go-go!
Reb Klimrod
Дело в том что выполняю эти запросы в транзакции. Но почему-то соединения все равно плодятся. Если в pgbouncer выбираю session, то все норм. Если transaction то соединения не закрываются и висят.
в pgbouncer в режиме transaction pooling две транзакции могут быть выполнены в разных соединениях, но id транзакции действителен только в рамках одного соединения. если session то каждой сессии выдается одно соединение и закрепляется за ней на всё время жизни. таким образом все транзакции будут выполнены в рамках одного соединения
источник

RK

Reb Klimrod in Go-go!
Алексей Долгов
в pgbouncer в режиме transaction pooling две транзакции могут быть выполнены в разных соединениях, но id транзакции действителен только в рамках одного соединения. если session то каждой сессии выдается одно соединение и закрепляется за ней на всё время жизни. таким образом все транзакции будут выполнены в рамках одного соединения
Спасибо за разъяснения. Тут дело в кривости моих рук, поэтому проблема была только в том что я сам же в хендлере в цикле плодил транзакции, да еще и в несколько потоков. Логику поменял, теперь всё отлично.
источник

DK

Den Kapone in Go-go!
Господа, не подскажите, в строгой ли последовательности считываются данные из буферизированного канала? Хочу быть уверенным что данные считаются также как и были добавлены.
источник

@

@mr_tron in Go-go!
да
источник

DK

Den Kapone in Go-go!
Спасибо
источник

⌬C

⌬ Richard Cooper in Go-go!
господа, не подскажете, как правильно оформлять тесты приватных методов/функций?

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

ВС

Владимир Столяров... in Go-go!
Много раз встречал имя файла _internal_test
источник

ВС

Владимир Столяров... in Go-go!
И там чисто тесты приватных частей
источник

E

Edgar in Go-go!
Вообще, в этому случае, лучше не писать тесты на приватные методы, а затрагивать их через экспортируемые методы/функции
источник

RS

Roman Sharkov in Go-go!
Немного не по Go, но тем не менее чуток связано:

стоит ли предпочитать AES256 пред AES128 учитывая потенциальное развитие квантового компьютинга в течении следующих, условно говоря, 10 лет?
источник

⌬C

⌬ Richard Cooper in Go-go!
Edgar
Вообще, в этому случае, лучше не писать тесты на приватные методы, а затрагивать их через экспортируемые методы/функции
а как это сделать грамотно тогда?

ну то есть вот пример:

у меня есть маленькая утилитарная приватная функция, которая что-то делает (считает кол-во байт + возможность поделить на блоки, в моем случае), ее очень проблематично вызвать вот прям влоб, чтоб какой-то экспортируемый метод ее четко использовал либо с ошибкой либо без ошибки, как тогда спроектировать структуру пакета?
источник

⌬C

⌬ Richard Cooper in Go-go!
чтоб вокруг да около не ходить, повышаю процент покрытия вот этого чуда https://github.com/xelaj/mtproto/tree/master/aes_ige
источник

E

Edgar in Go-go!
⌬ Richard Cooper
а как это сделать грамотно тогда?

ну то есть вот пример:

у меня есть маленькая утилитарная приватная функция, которая что-то делает (считает кол-во байт + возможность поделить на блоки, в моем случае), ее очень проблематично вызвать вот прям влоб, чтоб какой-то экспортируемый метод ее четко использовал либо с ошибкой либо без ошибки, как тогда спроектировать структуру пакета?
Эта мелкая функция юзается в каких либо экспортируемых методах/функциях?
источник

⌬C

⌬ Richard Cooper in Go-go!
Edgar
Эта мелкая функция юзается в каких либо экспортируемых методах/функциях?
конечно, но неявно, вопрос в том как описать тест, что бы было четко понятно, что мы тестируем вот этот приватный метод
источник

⌬C

⌬ Richard Cooper in Go-go!
либо, если я правильно понимаю, практика паковать тесты в *_test не такая уж и хорошая.

а кстати реально, никто так и не объясняет, чем это хорошо
источник