@bitrixfordevelopers

Страница 213 из 1492
Сыч
28.10.2016
12:24:12
предыстория: клиент жалуется что ему не приходит письмо для сброса пароля, смотрю по логам почтовой системы - не было писем на его ящик

Dmitry
28.10.2016
12:24:51
Неочевидная особенность. Долго искал. Если у вас в .settings.php стоит 'host' => 'localhost' а в dbconn.php стоит $DBHost = "127.0.0.1" то классический API и ORM/HiLoad будут работать с разными подключениями к базе соответственно $DB->StartTransaction(); повлияет только на классику а $connection->startTransaction(); повлияет только на ОРМ

Google
Сыч
28.10.2016
12:26:46
там именно не было попыток отправить письмо

в логе msmtp

Vladimir
28.10.2016
12:28:24
хм

Сыч
28.10.2016
12:29:30
включил (или было включено)

как называется тип этого события?

вижу только USER_PASSWORD_CHANGED

нагуглил MAIN_EVENT_LOG_PASSWORD_REQUEST

это наверное не то

ок

эта галочка не работает

там просто нет кода, логирующего попытки сменить пароль

какая пидорская система

похоже, в битриксе половина всего так

Google
Vladimir
28.10.2016
12:54:12
Мне стикер надебанил убери прям распечатать хочется )

filesystem:https://web.telegram.org/temporary/sticker_283839360502071338.webp

что за новые баги как так через filesystem: только открываетяся)

Maxim
28.10.2016
13:12:03
а как вы в разработке относитесь к многомерным массивам? относительно производительности? где то читал, что одномерные структуры быстрее работают и можно использовать array[x*y] как пример.

Антон
28.10.2016
13:14:25
массив в php это хештаблица

по сложности у тебя будет тоже самое если ты сделаешь линейный массив

у которого N будет x * y

Сыч
28.10.2016
13:15:34
Одна хэш таблицв против очень большого количества хэш таблиц

Антон
28.10.2016
13:16:25
ну какая разница

зависит от хешфункции

Сыч
28.10.2016
13:16:36
ну какая разница
Оверхед большой

Антон
28.10.2016
13:16:39
для ключей

ну камон

Сыч
28.10.2016
13:16:53
Потребление памяти на обьекты пхп

Антон
28.10.2016
13:16:56
как работаешь хештаблица

память в целом насрать

вопрос про скорость

Maxim
28.10.2016
13:17:30
/me любит наблюдать как горит пламя, после того как бросил масло в огонь

Антон
28.10.2016
13:17:41
чем меньше коллизий по хешу тем меньше будет списков по котором иквалсом бежать нужно

Сыч
28.10.2016
13:17:47
Если алгоритм потребляет больше памяти то и производительность ниже

Google
Антон
28.10.2016
13:17:56
ну окей )

пихапешники такие пихапешники )

Maxim
28.10.2016
13:18:16
хз как там в пыхе. но на C# двуменый массив в полтора раза медленней наполнился 100 миллионами записей

Сыч
28.10.2016
13:18:29
чем меньше коллизий по хешу тем меньше будет списков по котором иквалсом бежать нужно
Когда накопится достаточно коллизий, пхп должен увеличить хэш таблицу

Антон
28.10.2016
13:18:52
у тебя как был хеш двух объектов одиновый так и остался

как не увеличивай

если ключи простые

Сыч
28.10.2016
13:19:49
коллизии могут быть когда хэш разный

Антон
28.10.2016
13:19:55
то адрес можно просто сложение посчитать

Сыч
28.10.2016
13:20:30
потому что хэш таблицы упаковывают похожие хэши в одну ячейку

Антон
28.10.2016
13:20:44
https://ru.wikipedia.org/wiki/%D0%A5%D0%B5%D1%88-%D1%82%D0%B0%D0%B1%D0%BB%D0%B8%D1%86%D0%B0

Сыч
28.10.2016
13:21:27
https://en.wikipedia.org/wiki/Hash_table#Dynamic_resizing

Антон
28.10.2016
13:21:55
все понял что ты имешь ввиду

Сыч
28.10.2016
13:22:06
диапазон значений у хэш функции очень большой, его не уместить в памяти наивным способом

Maxim
28.10.2016
13:22:11
даже морду не набили

так не интересно

Vladimir
28.10.2016
13:22:18
)

Google
Антон
28.10.2016
13:22:37
она в любом случае дает коллизии

Vladimir
28.10.2016
13:22:50
т.е. php круче C )

Антон
28.10.2016
13:23:05
например java hash от стринга

Сыч
28.10.2016
13:23:15
вот когда коллизий становится много, реализация хэш таблицы увеличивает её

результат хэш функции с помощью операции деления по модулю или ещё как нибудь умещается в хэш таблицу

Антон
28.10.2016
13:23:45
System.out.println("Aa".hashCode() + "," + "BB".hashCode()); System.out.println("Ba".hashCode() + "," + "CB".hashCode()); System.out.println("Ca".hashCode() + "," + "DB".hashCode()); System.out.println("Da".hashCode() + "," + "EB".hashCode());

Admin
ERROR: S client not available

Антон
28.10.2016
13:24:05
ну да берут остаток от деления на количество бакетов

но вот я про такие случаи как я выше написал

объекты разные а хешкоды одинаковые

Сыч
28.10.2016
13:24:58
на хэш таблицах свет клином не сошёлся

Антон
28.10.2016
13:25:10
так вот вот у тебя php

у тебя есть выбор?

там вообще с коллекциями сложно все )

Сыч
28.10.2016
13:25:37
в общем, оверхед большой на миллион php-обьектов

проц медленней работает когда данные размазаны по памяти

быстрые алгоритмы - дружественные к кэшам процессора

Антон
28.10.2016
13:26:21
ну так если судить по тому что ты выше написал они и так размазаны )

и происходит перестоение (увеличение количества бакетов )

Google
Сыч
28.10.2016
13:26:47
а ещё оверхед на создание этих обьектов, подсчёт ссылок на них

накладные расходы на большую хэш таблицу (по памяти) не сравнимы с накладными расходами на множество Array(), по ЦП и памяти

Антон
28.10.2016
13:28:24
в общем я не совсем силен в php, возможно

Сыч
28.10.2016
13:28:36
и происходит перестоение (увеличение количества бакетов )
это перестроение написано на языке C и работает только с одном массивом. не страшно.

Антон
28.10.2016
13:28:54
тебе нужно скопировать область памяти, и не одну, чтобы размазать объекты, либо ссылки на них

Сыч
28.10.2016
13:29:56
скопировать области памяти против создать много сложных обьектов

ладно, один хуй я на PHP писал только в сосничестве

Антон
28.10.2016
13:30:53
даже морду не набили
не пиши на php кароче

Сыч
28.10.2016
13:31:23
ето

Folt
28.10.2016
13:55:03
ребята кароч это пздц, нужна помощь есть урл site.com/catalog/noutbuki/?tip-universalnyy&msi&data-vykhoda-na-rynok-2014-g-1 в urlrewrite.php ловлю ее регуляркой "CONDITION" => "#^/catalog/([0-9a-zA-Z_-]+)/([\\?][a-zA-Z0-9_-]*)#", "RULE" => "TYPE=SECTION-GET-FILTER&SECTION=\$1&GET-FILTER=\$2", но ничего (( как словить урл ? ps: он стоит в начале urlrewrite.php

Sergey
28.10.2016
13:56:44
так это ж get запрос

Folt
28.10.2016
13:57:54
нет гет это когда ?tip=universalnyy&.... у меня ?tip-universalnyy&....

Haik
28.10.2016
13:58:15
У тебя гет запрос

всё что после ? - параметры в GET

Если уберешь вопросик, то tip-universalniy попадёт в урл и поймаешь его регуляркой

site.com/catalog/noutbuki/tip-universalnyy/?msi&data-vykhoda-na-rynok-2014-g-1

Folt
28.10.2016
13:59:32
ну как бы да, но как бы так http://joxi.ru/1A5xGg8hKoG9B2

Haik
28.10.2016
13:59:54
Ну это print_r($_GET)

Страница 213 из 1492