Size: a a a

2021 October 18

ПФ

Паша Финкельштейн... in Moscow Spark
Классы просто так в память не попадают. Там же скомпилированный кодярник рассылается по нодам
источник

A

Alex in Moscow Spark
Так зачем сгенерированные в основной добавлять?
источник

ПФ

Паша Финкельштейн... in Moscow Spark
Ну и там по коду видно что оно вполне себе мутабельное, правда добавление од синхронизацией
источник

ПФ

Паша Финкельштейн... in Moscow Spark
Понятия не имею!
источник

A

Alex in Moscow Spark
Ну вот поэтому они и не добавиляют :)
источник

ПФ

Паша Финкельштейн... in Moscow Spark
Вот иерархия класслоадеров в внутри map
[jdk.internal.loader.ClassLoaders$AppClassLoader@9e89d68] hashCode=166239592
 [jdk.internal.loader.ClassLoaders$PlatformClassLoader@118041c7] hashCode=293618119
context class loader=[org.apache.spark.util.MutableURLClassLoader@3f702946] hashCode=1064315206
источник

ПФ

Паша Финкельштейн... in Moscow Spark
То есть либо они добавляют в MutableURLClassLoader, либо в AppClassLoader
источник

ПФ

Паша Финкельштейн... in Moscow Spark
(если мы не говорим про репл)
источник

GP

Grigory Pomadchin in Moscow Spark
репл вообще отдельная тема)
источник

GP

Grigory Pomadchin in Moscow Spark
поломанная как по мне
источник

GP

Grigory Pomadchin in Moscow Spark
там всегда костыли какие-то)
источник

ПФ

Паша Финкельштейн... in Moscow Spark
Да, в дебри репла я даже боюсь в докладе лазить — явно спорю какую-то херь
источник

ПФ

Паша Финкельштейн... in Moscow Spark
Так, а вот вопрос: я почему-то думал что скомпилированные сгенерированные исходники разбрасываются по экзекьюторам. Но кода такого я не вижу. Я неправ?
источник

ПФ

Паша Финкельштейн... in Moscow Spark
Или это только для репла верно и нормальные джарники честно доступны всем экзекьюторам и нет нужды чтото раскидывать?
источник

GP

Grigory Pomadchin in Moscow Spark
они доступны всем ехекуторам
и ехекуторы тянут его из сурса

spark-submit mycool.jar

у тебя такие варики

1. у тебя mycaool.jar в видимости всех ехекуторов и он локально берет
2. это uri который видем всем и тогда каждый ехекутор грузит себе его
источник

ПФ

Паша Финкельштейн... in Moscow Spark
А, ну то есть сгенерированный кодярник всё-таки не раскидывается
источник

ПФ

Паша Финкельштейн... in Moscow Spark
Интересно, почему я думал что да…
источник

A

Alex in Moscow Spark
Там все веселей

Генерируется java класс
Компилируется
Если скомпилилось то сорцы по екзекуторам кидает
Там каждый компилирует ещё раз уже со своим класспасом
Сетает в него и выполняет
источник

ПФ

Паша Финкельштейн... in Moscow Spark
Вот, а где ты видишь Если скомпилилось то сорцы по екзекуторам кидает вот это?
источник

ПФ

Паша Финкельштейн... in Moscow Spark
Я такого кода не нашёл
источник