
Grigory
22.02.2017
11:04:56

Oleg
22.02.2017
11:05:36

KrivdaTheTriewe
22.02.2017
11:06:12

Oleg
22.02.2017
11:06:28
без сраных ассемблей, которые сами по себе ещё требуют ритаулов

Google

Grigory
22.02.2017
11:08:13

Oleg
22.02.2017
11:08:31


Alexey
22.02.2017
11:08:32
Привет! Кто-нибудь закручивал slick streaming из mysql в akka stream source?
Я выгуглил все возможные хаки для того, чтобы streaming был streaming'ом и не выгружал данные сначала в память, но все равно не заводится, через какое-то время gc сходит с ума
Делаю следующее
val mldb = Database.forConfig("db.mldb")
val enableJdbcStreaming: (java.sql.Statement) => Unit = { statement ⇒
if (statement.isWrapperFor(classOf[com.mysql.jdbc.StatementImpl])) {
statement.unwrap(classOf[com.mysql.jdbc.StatementImpl]).enableStreamingResults()
}
}
val searchRequests = mldb.stream(
DataModel.searchRequests.result.transactionally.withStatementParameters(
fetchSize = Integer.MIN_VALUE,
rsType = slick.jdbc.ResultSetType.ForwardOnly,
rsConcurrency = slick.jdbc.ResultSetConcurrency.ReadOnly,
statementInit = enableJdbcStreaming)
)
val flow = Source.fromPublisher(searchRequests)
.runForeach {
...тут пока просто переливка в csv файл для простоты...
}

Oleg
22.02.2017
11:08:57

Grigory
22.02.2017
11:09:44
и тебе прям нужен жирный джарник

Oleg
22.02.2017
11:09:57

Grigory
22.02.2017
11:11:05
ну я мержу почти все 4 строчным мержом

Oleg
22.02.2017
11:11:06
большинство тех, кто умеет читать конфиги, умеют сами читать и мержить множественные ресурсы, включая тайпсейф, логбэк и т.п.
поэтому обычный packageBin работает в 15 раз быстрее, не требует отслеживания хитрых багов от того, что ты выбросил то, что нужно смержить или наоборот

Grigory
22.02.2017
11:12:51
да, packageBin в некоторых случаях хорош; особенно в случае клаудеры где у них ограничение на длину названия файла

Oleg
22.02.2017
11:13:16
а главное, не вызывает конфликтов, если попытаться с этим джарником использовать другой, юзающий другие версии либ
в общем, ассембли-дно

Google

Valera
22.02.2017
11:34:17
Да, спасибо, собрать жирный джарник и скормить его получилось, правда пришлось добавить "provided" к либам Spark
"org.apache.spark" %% "spark-core" % "2.1.0" % "provided",
"org.apache.spark" %% "spark-sql" % "2.1.0" % "provided",
проблема решилась, но я хочу попробовать ещё поразбираться с зависимостями, ибо:
1) assembly выполняется дольше, нежели package
2) это чуток "костыль"
сейчас попробоую с другими либами в зависимостях

KrivdaTheTriewe
22.02.2017
11:35:31

Grigory
22.02.2017
11:36:16
это зависимости которые ты не хочешь включать в джарник

Valera
22.02.2017
11:36:50
я его добавил из-за того, что assembly так просто не хотел собираться там были deduplication found error-ы

Grigory
22.02.2017
11:37:31
для этого тесть стратегии мерджа
https://github.com/sbt/sbt-assembly#merge-strategy

Vladimir
22.02.2017
11:44:22


Valera
22.02.2017
11:47:11

Alexey
22.02.2017
12:03:18
> @leammas
стриминг через получение данных чанками при помощи limit\offset
Ага, вот те хаки и пробовал, как раз
Вот и пытаюсь OFFSET избежать, на том сете, который обрабатываю, оно убийственно

Mikhail
22.02.2017
14:19:08
кто-нибудь в курсе - есит ли способ сериализовать не экземляр класса, а именно сам класс Class[_] ?

Denis
22.02.2017
14:19:57
fqcn ?
это же все что описывает класс. Или я неправильно тебя понял. И ты хочешь переслать класс туда где его нет?

Mikhail
22.02.2017
14:23:32
переслать-сохранить не важно. но суть да - есть класс который скомпилен в рантайме по шаблону (естественно это перформанс ради), компилировать каждый при старте сотню шаблонов - дело накладное. поэтому хочется закешировать результат. скомпилить через скалац через внешний процесс тоже конечно можно, но хочется сначало посмотреть нет ли варианта попроще через рантайм)

The mirror
22.02.2017
14:43:55
Звонили с Тинькофф банка.
Предлагают работу (я им отправлял резюме раньше).
Я отказался, но ради интереса попросил рассказал подробнее о вакансии.
Девушка мне отвечает: "Нам нужен торговый представитель со своей машиной для работы с клиентами"
Забавная ситуация

Nikolay
22.02.2017
14:44:53
случай когда лучше не спрашивать

Denis
22.02.2017
14:45:35

Борис
22.02.2017
14:45:44
Это на мидла или сеньора?)

The mirror
22.02.2017
14:45:58
Хахаха

Denis
22.02.2017
14:46:00
демпингуют рынок скалы

Митко Соловец?
22.02.2017
14:47:28

Google

Nick
22.02.2017
15:07:10

anton
22.02.2017
15:08:04

Grigory
22.02.2017
15:09:38

Denis
22.02.2017
16:38:15
Не пытайся покинуть, главное

Sergey
22.02.2017
16:49:50

guga
22.02.2017
16:54:37

Sergey
22.02.2017
17:22:26
Такие уже есть

Mikhail
22.02.2017
17:23:14

Sergey
22.02.2017
18:41:46
А как насчёт Typed Actors ?
кто нибудь использует ?

Alexander
22.02.2017
18:55:25
Пипл, я туплю что-то. Есть какая-то сериализация объектов в строку/байтсиквенс, чтобы при десериализации оно само выдавало объект нужного типа. И чтобы без костылей типа таких:
trait WsMessage
case class Letter(from: String, to: String, text: String) extends WsMessage
case class Auth(from: String) extends WsMessage
. . .
def decode(wsJson: String): Option[WsMessage] = {
val parseResult: Try[WsMessage] = Try(parse(wsJson).extract[WsData]) flatMap {
case WsData(WsDataType.LETTER, data) => Try(parse(data).extract[Letter])
case WsData(WsDataType.AUTH, data) => Try(parse(data).extract[Auth])
case WsData(_, _) => Failure(new WrongIncomingData)
}
parseResult match {
case Success(wsMessage) => Some(wsMessage)
case Failure(_) => None
}
}

Mikhail
22.02.2017
19:21:08

Alexander
22.02.2017
19:24:06
О! Спасибо! Жаль, конечно, что json. Хотелось бы в нечитаемом виде хранить

Mikhail
22.02.2017
19:24:32
ты же сам привел пример в жсоне и одна из опций была "строка"
для бинарика если случай простой, то и обычная ява сериализация подойдет

Alexander
22.02.2017
19:26:33
ой, а pushka не подходит... вот в примере read[User](json)
а я не знаю, что там User

Mikhail
22.02.2017
19:29:46

Alex
22.02.2017
19:30:10

Google

Mikhail
22.02.2017
19:53:06

Oleg
22.02.2017
19:53:38

Nick
22.02.2017
19:56:28

Oleg
22.02.2017
19:57:56
или https://github.com/suzaku-io/boopickle

Admin
ERROR: S client not available

Alex
22.02.2017
19:59:51
протобуф там еще

Alexander
22.02.2017
20:19:02
сейчас выбирать буду)

Sergey
23.02.2017
06:23:09

Michael
23.02.2017
14:48:41
как-то тут тихо сегодня...

Evgeniy
23.02.2017
14:48:53
Работа.

Vasily
23.02.2017
14:49:17
Праздник, правда, непрофессиональный

The mirror
23.02.2017
14:50:40
Служивших много наверное здесь, в ридонли сидят просто

D
23.02.2017
14:50:44
коси@забивай

Evgeniy
23.02.2017
14:50:53
А, что в РФ 23 февраля — выходной?

D
23.02.2017
14:50:59
да
и ещё 3 дня потом

Evgeniy
23.02.2017
14:51:05
И 24?

The mirror
23.02.2017
14:51:06
Недавно узнал, что сооснователь Хекслета Кирилл Мокевнин 2 года отслужил в Президентском Полку

Evgeniy
23.02.2017
14:51:14
И отрабатывать не надо?

Google

The mirror
23.02.2017
14:51:17
И там вообще жесткач творился
Дедовщина, уставщина вот это вот все

D
23.02.2017
14:51:34
И 24?
там перенесли с какого-то января

Ivan
23.02.2017
14:52:07
в 2017 служить
такое себе

D
23.02.2017
14:52:36
о, у меня знакомый как-то писал воспоминания про армию, очень годно
но он служил 9 месяцев, в Украине + музыкантом

The mirror
23.02.2017
14:52:58
Я служил в армии :/ даже шрам с "темной" остался
У нас все не так жестко как у Кирилла было конечно

D
23.02.2017
14:54:18
если кому интересно http://pipilit.net/army-all.pdf

The mirror
23.02.2017
14:54:40
Но тоже дедовщина: жизнь по понятиям и традициям, "борзые", "бичи" и очень много еще всего

Grigory
23.02.2017
14:54:42
https://security.googleblog.com/2017/02/announcing-first-sha1-collision.html

Ivan
23.02.2017
14:56:27

The mirror
23.02.2017
14:56:40
зима 2012-2013

KrivdaTheTriewe
23.02.2017
18:17:26
https://developer.valvesoftware.com/wiki/Dota_Bot_Scripting

Sergey
23.02.2017
18:22:59
Омг, а зачем это?