- 1
IT Оффтоп #201
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
0
IT Оффтоп #201
#171: (vanished) https://govnokod.xyz/_28665
#172: https://govnokod.ru/28675 https://govnokod.xyz/_28675
#173: https://govnokod.ru/28681 https://govnokod.xyz/_28681
#174: https://govnokod.ru/28689 https://govnokod.xyz/_28689
#175: https://govnokod.ru/28696 https://govnokod.xyz/_28696
#176: https://govnokod.ru/28703 https://govnokod.xyz/_28703
#177: https://govnokod.ru/28709 https://govnokod.xyz/_28709
#178: https://govnokod.ru/28716 https://govnokod.xyz/_28716
#179: https://govnokod.ru/28726 https://govnokod.xyz/_28726
#180: https://govnokod.ru/28734 https://govnokod.xyz/_28734
#181: https://govnokod.ru/28739 https://govnokod.xyz/_28739
#182: https://govnokod.ru/28749 https://govnokod.xyz/_28749
#183: https://govnokod.ru/28777 https://govnokod.xyz/_28777
#184: https://govnokod.ru/28790 https://govnokod.xyz/_28790
#185: https://govnokod.ru/28794 https://govnokod.xyz/_28794
#186: https://govnokod.ru/28815 https://govnokod.xyz/_28815
#187: https://govnokod.ru/28833 https://govnokod.xyz/_28833
#188: https://govnokod.ru/28837 https://govnokod.xyz/_28837
#189: https://govnokod.ru/28840 https://govnokod.xyz/_28840
#190: https://govnokod.ru/28875 https://govnokod.xyz/_28875
#191: https://govnokod.ru/28878 https://govnokod.xyz/_28878
#192: https://govnokod.ru/28886 https://govnokod.xyz/_28886
#193: https://govnokod.ru/28911 https://govnokod.xyz/_28911
#194: https://govnokod.ru/28914 https://govnokod.xyz/_28914
#195: https://govnokod.ru/28917 https://govnokod.xyz/_28917
#196: https://govnokod.ru/28925 https://govnokod.xyz/_28925
#197: https://govnokod.ru/28935 https://govnokod.xyz/_28935
#198: https://govnokod.ru/28938 https://govnokod.xyz/_28938
#199: https://govnokod.ru/28942 https://govnokod.xyz/_28942
#200: https://govnokod.ru/28945 https://govnokod.xyz/_28945
Этот оффтоп сгенерирован автоматически.
Индекс оффтопов: https://index.gcode.space/.
Зеркала Говнокода и полезные ресурсы:
* https://govnokod.xyz/ (альтернативный Говнокод)
* https://gcode.space/ (read-only зеркало Говнокода)
* https://t.me/GovnokodBot (Говнокод-бот в «Telegram»)
* https://t.me/GovnokodChannel (Тематический канал в «Telegram»)
* https://app.element.io/#/room/#govnokod:matrix.org (резервный чат)
Примечание: автоматические перекаты в настоящее время осуществляются только с аккаунта nepeKamHblu_nemyx.
Остерегайтесь подделок. Берегите себя и своих близких. Кок!
(в процентном соотношении)
Я думаю что во Франции всё таки больше. Во-первых -- бывшие колонии в Африке. Во-вторых Франция в целом более популярное направление понаеха.
В Нидерландах кроме автохтонов чаще всего встречаются:
* Малазийцы. Это бывшая колония Нидерландов. Такие полинезийские чуваки, невысокие, с широким носом. Тян часто носят косынки, но есть и европезированные.
* Турки. Они живут тут много поколений, и почти не отличаются от местных (кроме внешности, конечно). Обычно заняты в производстве донеров и дюрюмов -- местной шавермы.
* Индийцы. Их очень мало, они приехали из Суринамы (где пипа живет). Это тоже бывшая колония Нидерландов.
* Арабы. В основном из Морокко. Приехали сюда в 60-е года работать, частично ассимилировались, но иповедуют ислам. Какое-то количество арабов приехало как беженцы из Сирии совсем недавно.
Кстати, в Суринаме есть забавный артефакт колониального прошлого: лесные негры.
Это потомки черных рабов, которые убежали в лес, одичали, и живут теперь на свободе. Как собаки динго в Австралии или дикие лошади в США
https://youtu.be/D2qziGcj91E
Один чувак решил, что я требую поменять архитектуру, возгорелся пуканом, и кажется скоро пошлет меня нахуй.
Отвратительно
Там есть инфраструктура блокировок, и вот чтобы дождаться завершения транзакции, нужно попробовать взять на ее номер блокировку.
Сама транзакция держит эксплюклюзивный лок на блокировку, потому ты становишься в очередь.
Когда транзакуия завершается -- ты получаешь хуем по лбу, ведь запрашеваемый тобою рсурс более не существует, но ты пробуждаешься: и это главное.
Вообще, половина базы данных это такая "операционка в операционке": там есть своя файловая система с блоками-странцами по 8К, свой буфер этих страниц со стратегиями вытеснения "грязных" страничек на диск по времени или по объему или явно, есть для этого и отдельные процессы вроде `pdflush`, есть даже вторые уровня кеша (кольца) напоминающие старое поколение/небеса в языках с GC.
Есть в этом всём какая-то ненужная пиздотень, словно бы нужно запустить эту хуйню поверх блочных устройств, и успокоиться. Где мои rump kernels?
Вы тоже это заметили?
Мне однажды тян-тренерша помогла вытащить штангу. На самом деле там достаточно даже чуть-чуть подтолкнуть. Буквально 10 кг на себя взять, и ты уже вытянешь
С чего ты взял?
Трек PHP
Темы и направления, которые рассматриваем в эту секцию:
FFI на практике
AI/ML
Производительность
PHP DevOps
Лучшие практики
Новые либы
Альтернативные рантаймы
Новые фреймворки
Опыт больших сложных проектов на PHP
> highload
> PHP
))))))
Это про замену двойных кавычек на одинарные?
"Выводим джаваскрипт с CSS через echo"
>Базы данны
"Храним в MySQL кусочек страницы вместе с HTML"
>Безопасность
"Удаляем из всех переменных слово 'REPLACE' чтобы защищиться от SQL injection"
>DevOps практики и культуры
"Делоим сайт по FTP через тотал командер"
какие подводные камни установки собственного сервера? насколько сложно сделать это секьюрно?
насколько несовместимы между собой разные реализации серверов и есть ли какой-то референсный?
что с клиентами?
Корпоративный мессенджер?
> цели?
понять, есть ли перспектива за пределами кладбища
"у нас никогда не будет рекламы", но "скидка на премиум 30% и хуй ты скроешь это предложение"
много всякого нинужно типа сториз
сегрегация по признаку "долбоёб, купивший подписку"
и т.п.
ну и приведи реальный пример, чтобы ебаться на кривом месте. матрикс?
или в тиктоке танцуй вместо мануалов и кодов, как там у зумеров принято
Говно.
> матрикс
Абсолютное говно.
Это субд для программистов, а не для пхп разработчиков
А тогда я отключил синхронный комит и pgbench показал мне более пиздатые цифры но в целом мне похуй конечно потому что я не DBA и нахуя я вообще это делаю не очень понятно
Если ты сделал fsync=off, то ты очень смелый парень, и я бы не хотео быть тобой, потому что после краша твою базу можно будет выкинуть в мусорку.
Асинхронный коммит же позволяет в самом худшем случае проебать пару последних транзакций.
Допустимо-ли это?
Ну если ты уже товар петуху отгрузил то нет, не допустимо.
Если ты коммент на форуме серанул, то допустимо вполне
Рекомендую.
Серьезно: ты понимаешь разницу между синхронным коммитом и fsync?
1. Пишу в лог.
2. Синкаю лог.
3. Пишу данные в сам сегнметный файл
4. Синкаю.
Асинхронный коммит возвращает управление после COMMIT не делая ничего из 4 пунктов (он их сделает бёрстом потом), так что я могу проебать коммит
отключение fsync отключает пукнты 2 и 4.
Таким образом, ты не имеешь вообще никаких гарантий что что либо куда-либо запишется. Ты можешь записать пол странички из пункта 3, и в базе будет мусор, который никакой wal не спасет
Христоматийный пример когда нельзя делать асинхронный коммит это банкомат: ты отдал деньги, и перезагрузился.
Скоро я её дочитаю, и меня попустит
Драйвер может его реализовать, а может хуй положить
Ибо было сказано
>>>
The fsync() implementations in older kernels and lesser used
filesystems do not know how to flush disk caches. In these cases
disk caches need to be disabled using hdparm(8) or sdparm(8) to
guarantee safe operation.
>>>
Но и тут не всё так просто.
Протокол (вроде SATA) конечно имеет команду для флаша кеша
>>
The FLUSH CACHE command requests the device to flush the volatile write cache
>>>
но по ту сторону устройства может быть .. RAID, который имеет свой собственный буфер.
Этот буфер может работать в режиме write-back, и тогда данные останутся в буфере.
Обычно у рейда есть батарейка (BBU) чтобы успеть флашнуться, а если ее нет -- write-back петуха заменяют на write-through.
Итого, для гарантированного записания данных на диск нам нужно:
1. сказать `fsync(2)`
2. чтобы его реализовал драйвер/протокол
3. чтобы его реализовала железка внизу
На каждом этапе вас могут наибать
если для работы, то как у него с разного рода интеграциями по типу слака?
если для личного использования, то как и нахуя
Ести тебе хочется иметь чаты с коллегами в тайне от всех, то купите слак. У него гомосячий JS клиент на 1Гб оперативки, хуевый поиск, REST API для роботов, всё как мы любим.
Если хочется поднять что-то на своём сервере, и там пиздеть в чатике, то есть древний как какашка динозавра протокол IRC, у которого миллиард клиентов (самые простые занимают несколько сотен килобайт) и он легко подымается на любых прыщах.
Джабер это XMPP, а IRC это собссно IRC.
Минус IRC в том, что там конечно не будет никакой нормальной аутентифиакции, потому если туда пробертся уебок, то пиздец
https://obj.altapress.ru/picture/298677/300x170.webp
но вообще как минимум mattermost и actor.app были
https://github.com/actorapp/actor-platform
Живой, конечно. Еще тридцать пять лет женщины будут вспоминать, как он их в 17-ти летнем возрасте в 1973-м году за попу трогал
скроллим вниз
охуенный киберсквоттинг
https://www.youtube.com/watch?v=88Op5TQViag
Если тебе нравится копиум про то, что все россияне скоро восстанут, и выкинут путина из кремля, потому что им надоела война и доллар по 89, то нужно слушать Каца, Шульман, Аббаса Галямова и можно еще профессора Соловья.
Советую так же на выборах в сельсовет голосовать за ЛДПР вместо ЕР чтобы вызвать конфликт элит. Путин этого страшно боится.
Если хочется внятной аналитики, то можно Пастухова какого-нить или Снеговую
--Там еще море такое.. Азов (признана в России террорестической организайцией, и запрещена) что-ли..
--Азов (признана в России террорестической организайцией, и запрещена)
--Я там ср
Петух относится к очень голосистой птице.
Чтобы понять, почему петух кукарекает, нужно разобраться в психологии поведения птицы.
Я вот знаю теперь как это сделано в постгре (но не скажу)
"php" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.. В PATH путь прописывала к папке с файлами из архива php( А чем может быть проблема?(
Все переменные нормально отправляются но выходит такая ошибка:
Parse error: syntax error, unexpected '==' (T_IS_EQUAL), expecting ')' in /htdocs/frost/regform_user.php on line 2
An unexpected error occurred:
requests. exceptions.ProxyError: HTTPSConnectionPool (host='acme-v02.api.letsencrypt.org', port=443): Max retries exceeded with url: /directory (Caused by ProxyError( 'Cannot connect to proxy.', NewConnectionError('‹urllib3. connection.HTTPSCor ection object at @x0000023EB501F250>: Failed to establish a new connection: [WinError 10061] Подключение не установлено
Сколько будет?
что не так?
В том и дело! В 32 бит должны быть 32битные числа, в 16 - 16битные, а в женских туалетах должны быть только женщины!
Ты посчитал результтат, и расширил его. Серьезно, что у тебя не работает?
Во-вторых у нас в школе было такое развлечение: закинуть портфель товарища в женский тубзик.
А вообще его нельзя в 16 бит засунуть - оно ровно на единицу больше максимального знакового
оно меньше MAX_INT32 или как там его правильно, и что?
Там какие-то другие биты?
>Int32_t actually 16 bit with Atmega328p and Arduino
лолшто
Вот пидоры. А нормальные компиляторы для AVR есть?
Там пишут Size of uint32_t is: 32 bits
uint32_t обязан быть 32-х битным беззнаковым петухом.
Если это не так, то компилятор не реализовывет стандарт, и это тогда не язык "си" а язык "саня хуй соси".
`unsigned int` обязан быть unsigned, больше чара, кажется минимум 16, и меньше или равен лонгу. Вот и всё.
Ну само собой там есть MAX коснтанты с макс значением.
В чем тут нарушение?
uint32_t - объявляемый псевдоним, а unsigned int - чем он на самом деле является.
Т.е. наоборот было бы норм, а так получается, что тип с фиксированным размером (uint32_t) на самом деле зависит от размера int, который платформо-зависим.
Вы что-ли .h файл из стандартной библиотеки сей переписаоли на другю машину?
а несерьзжные это когда бариста выучил питон и вкатился в айтишечку
отсоси у тракториста
По-испански он будет «ebanista» (в честь эбенового дерева).
Отсоси у тракториста
Что это за _t? Почему не сделать без этого?
Да, неконь-сись-тентно. Старые типы же без _t.
Многовато бойлерплейта в скетче будет.
Сёма, посоветовать тебе книжку про изучение си с ноля?
Обычно бывает прикольно изучить ключевые слова прежде, чем писать чото серьезное
ЧЗХ?
Есть нормальный язык без этого говна для ардуины?
rust
из интересного есть quickwit например. Зачем-то его еще засунули в ядро, я за то, чтобы делать проекты максимально униформными, но он там таки есть. И майкрософт хотел то же самое сделать
https://www.kernel.org/doc/html/next/rust/index.html
В ядре винды
https://medium.com/@Aaron0928/30-year-old-code-killed-microsoft-rewrites-windows-kernel-with-180-000-lines-of-rust-f891c95959f2
int31 b31 = 31
int30 b30 = 30
А pituh_tag могло и не использоваться вовсе, но у него имя должно было отличаться от pituh_type.
Могло ещё быть так:
https://pbs.twimg.com/media/GQfyWciWYAAa5vy?format=png&name=900x900
https://www.youtube.com/watch?v=T9XU-ZnNl1c
обожаю блядь линукс и свежий хардвар
https://i.postimg.cc/P5DrFJ7j/image.png
[/технология иди на хуй]
ИДИ НА ХУЙ
https://www.youtube.com/watch?v=SBeQVeY_UBI
блядь
блядь
#
https://youtu.be/_jEBh1VtdT0?t=71
Групповой политикой винды петух устанавливает URL сайта, откуда качать обновления.
Обновления падают с ошибкой `0x80d05001`. В логах записи типа
`error foo\bur\baz\update.cpp line 2321`
Эта ошибка это DO_E_HTTP_BLOCKSIZE_MISMATCH, но разумеется ее в публичном доступе нет.
Есть статья от MS, где там советую прокси перенастроить (кто использует HTTP прокси в 2024, ну?)
Скачка идет по HTTP. Ну понятно что надо как-то сниффить траффик или читать логи со стороны http.sys и чото пытаться там понять.
Если загуглить эту ошибку (по коду) то там много советов позвонить провайдеру, ну и конечно
>>>
Go to Search, type cmd, right-click Command Prompt, and go to Run as administrator.
Enter the following command and hit Enter on your keyboard: sfc / scannow
>>>
Ларчик открывался вот так:
https://community.spiceworks.com/t/wsus-download-error-0x80d05001/803386/12
В адресе был лишний слеш.
Просто блядь мастер-класс от Microsoft по обработке ошибок
This update affects Microsoft Defender for Endpoint (MDE). It enables Conditional Access (CA) scenarios.
-
сука в каком ебанутом мире мы
Польдер что ли? А то, что польдер находится внутри имеющегося часового пояса, уже недостаточно? Или там в море часовой пояс отличается от суши?
Кстати, похожие глюки бывают и из-за финального слеша в путях в локальной ФС. Приходится ломать голову, когда этот чёртов слеш писать, а когда нет.
https://superuser.com/users/42672/barlop
Unknown options: --help
user@host:~$ aws s3 --help
Unknown options: --help
иди иди иди
...
[Errno 32] Broken pipe
Exception ignored in: <_io.TextIOWrapper name='' mode='w' encoding='utf-8'>
BrokenPipeError: [Errno 32] Broken pipe
даже пайпы нормально не сделали. и фильтрацию.
блядь
а теперь оказывается там Registry Expiry Date через год случится
то есть год теперь хуй я этим доменом попользуюсь? только идти к текущему регистратору и ему башлять или снова-таки документы собирать?
Твой багор описан тут:
https://serverfault.com/questions/810952/relation-between-registrar-registration-expiration-date-and-the-actual-expiry
и тут
https://www.reddit.com/r/Domains/comments/bigy8i/whats_the_difference_between_registry_ex piry_date/
У большинства корневых доменнов политика такая:
Регистр о тебе ничего не знает: он продает домен регистратору.
Registry Expiry Date это дата, когда регистр отберет домен у регистратора. Но такого может и не случится, потому что регистратор автоматически продлевает првава на домен, "паркует" его, и продает другому питуху (или кибер-сквоттеру).
Но регистратор может и отказаться от домена, и тогда его освободят и регистр вернет ему деньги (а домен все равно спиздит кибер-сквоттер)
Так что тебе логичнее всего прийти к регистратору.
– dns хостинг это что такое? и где его купить?
Тебе нужен домен `petushok.petuh`.
В регистре `.petuh` появляется запись
Это значит, что по всем вопросам о об этой зоне нужно обращаться к серверам в "some.dns.server"
(тут IN означает Internet, а NS -- nameserv er-- тип записи, 3600 это экспирейшен).
Именно на этих среверах будет SOA запись (с инфой о емейле админа домена и более подробных экспирейшенах всех записей, версией записи для кеша и пр)
На них же будет "A" запись (для сайта), MX для почты, всякие TXT для DKIM/SPF, CAA для серта и черта лысого в ступе.
Где-то же должна эта зона крутиться. Она крутится на DNS хостинге, где она является записью в файле конфига DNS сревера (чаще всего named)
Обычно петух покупает "домен" у хостера, и получает и регистрационную запись реестре, и собссно хостинг для нее.
Но можно через регистратора получить право редактировать только запись в реестре (и whois). Тогда ты можешь вместо "some.dns.server" использовать адрес любого DNS сервера, хоть собственного.
Наблюдать за процессом рекурсивного запроса можно так
В моем примере это было `ns1.petuh.petishok`.
Возникает пробелма курицы и яйца, которую решают glue record: записи прямо в реестре для этой зоны.
шот сложно конечно
Приведи реальные примеры, где сейчас используются Chaos и Hesiod.
Еще проверь authors.bind.
История с Hesiod печальна.
Был такой проект в 80-е по изготовлению энтрепрайзной среды на основе unix: Anthena. Он подарил нам гуйный тулкит Athena Widgets под иксы (отлично подходящий для монохроных экранов) а так-же идею единой центральной иерархической базы всего: имен машин, пользователей, принтеров, и вообще всех ресурсов. Любые базы могли быть локальные (например база паролей `passwd(5)` а могли быть централизованы)
Эта база -- nis -- оставила глубокий след в unix, см `getent(1)` и `nsswitch.conf(5)`.
В рамках этого же проекта придумали Kerberos (и кажется NFS).
Всё это не взлетело, но вдохновило ActiveDirectory (которое пправда взяло облегеченную реализацию базы -- LDAP, оставив в DNS только имена).
Так вот Hesiod позволяет хранить в DNS всё примерно так, как хранится это в AD
g: o'reilly book dns pdf
Люди должны доверять друг-другу!
https://www.strato.nl/_assets/image/stage/stage_tv23_09634_lg.webp
яндекс иди на хуй
Каждый день новые приключения блядь
bs=1 count=100500 плохо работает: медленно
есть мысль попробвать bs=100500 count=1
либо же сделать 100500 кратным N, и потом bs=N count=100500/N
— За нормальный платить надо чатлами.
https://govnokod.xyz/_28815/#comment-1267978
Вот до версии 7 Оркла использовались разные виды локов, то-есть писимистичная блокировка, и параллельное чтение и запись двумя питухами на уровне repeatable read одного ряда не поддерживалось.
MS-SQL до версии 7 вообще всё лочил нахуй (превращая repeatable read в serializable), а затем ввел разные сорта локов: shared lock, exclusive lock, итд.
https://www.itprotoday.com/early-versions/sql-server-7-0-locking
PostgresSQL до версии 6.5 тоже примерно так делала: лочила целый ряд.
Это всё пляски вокруг идеи read lock / write lock, тн "two phase locking": старейший сопосб СУБД.
Где-то гранулярность чуть больше, где-то чуть меньше.
В итоге все перешли на MVCC.
Oracle в 7 (1996 г)
MS-SQL в 2005 (2004 г) (только вместо MVCC назвал это "row versioning):
https://www.databasejournal.com/ms-sql/controlling-transactions-and-locks-part-4-sql-2005-snapshot/
PostgreSQL в 6.5 (1999 г) https://www.postgresql.org/docs/6.5/release14025.htm
Короче, все перешли на оптимистичную блокировку: Теперь каждый питух теребонькает свою картину мира, которую потом пытаются смёрджить (с возможным посыланием неудачника нахуй).
Постгришечка просто срет новые версии рядов, а старые удаляются пылесосом подобно GC.
Оракл же меняет данные in place, а старые кладет в тн undo log (на самом деле это те же самые блоки рядышком, но другие транзакции читают их вместо старых).
https://docs.oracle.com/cd/B19306_01/server.102/b14220/consist.htm#i17881
(SCN это номер транзакции примерно, точнее номер версии мира)
Фишка у оракла в том, что он и индексы версионирует (постгря, кажысь, нет).
Undo (откат транзакции) вынуждено "копировать" все обратно, потому он совсем не константый (в отличии от постгри), зато не надо ничего пылесосить.
MS-SQL делает примерно как оракл, но старые говны перекладывает в tempd (был даже всратый совет хранить ее на отдельном, более быстром диске).
Правда, с версии 2019 он юзает какой-то Persisted version store (PVS).
There's one PVS thread per instance in SQL Server 2019 (15.x). Starting with SQL Server 2022 (16.x), SQL Server has one PVS cleaner thread per database.
Ну то-есть совсем как постгрес: персистентные версии строк и пылесос
https://learn.microsoft.com/en-us/sql/relational-databases/accelerated-database-recovery-concepts?view=sql-server-ver16
А как в базе для гостевых книг, кстати? Кто знает?
ну что никто не знает?
Можно просто всё лочить нахуй, и это будет выполнение стандарта, бо никакие аномалии невозможны при локе, вот только параллелизм будет сосать.
А можно запилисть более гранулярную read/write блокировку.
А можно сделать MVCC.
Понимаете?
Допустим, некто делает такой запрос
В это время другая транзакция делает
Первая транзакция может получить новые запросы по такому же предикату.
Нужен range lock (или predicate lock): чтобы новые данные было не вставить, если они попадают под условия.
Раньше это решалось полным локом всей таблицы, но это хуйня по перформансу: Первый петух сделал select, и пошел пить кофе, и все хуй сосут.
В реальности же петухи могут никак пересекаться:
Скажем, первая транзакция никак не мешает петуху с выбором "age > 45' так как он не пересекся.
То-есть если он не трогает те же самые ряды, то и нехуй его
блочить.
----to be cont
Вот папир: https://arxiv.org/pdf/1208.4179
Смысл в том, что все прочитанные даныне сохраняются в спец структуре SIREAD (она может быть уровня ряда, страницы или целой таблицы эксклируясь в нужный момент)
https://www.interdb.jp/pg/pgsql05/09.html
Короче, у каждой транзакции есть список того, что она:
1. прочитала
2. записала
В момент коммита СУБД строит граф: Граф предшествования.
(эта хуйня писана в умных книгах типа "Фундаментальные основы систем баз данных". Прикинь анон, базы данных не граничиваются книгой "php+mysql за 24 часа")
У графа каждый узел это транзакция, от которой растут ветки к другим транзакциям, которые должны быть "после" неё.
Если T1 читала питуха, а T2 писал в этого питуха, то T2 считается что идет "раньше" чем T1.
Если такой граф удается построить без циклов -- значит именно в таком "порядке" и исполнялись наши транзакции и всё заебись.
Если не удалось (там цикл) значит транзакция идет нахуй.
https://www.auhd.edu.ye/upfiles/elibrary/Azal2020-01-22-12-28-11-76901.pdf
А потом танцуют!
хуй
ДА
РЫ!
https://pbs.twimg.com/media/GQ31KQBXwAANai-?format=jpg&name=large
https://x.com/tvrain/status/1805967717498765656
Типичная прыщеблядь -- анскилябрнтуый фанбой, который засрал пол интернета криком "винда мастдай" и сам нихуя ни в чем не разбирается кроме установки убунты кликом на кнопку "next".
Любая попытка подискутировать с прыщеблядью на тему архитектурных решений прыщей всегда вызывает реакцию ТЫ НИХУЯ НЕ ПОНИМАЕШ ИДИ НАХУЙ НА ВИНДУ ЛАМЕР
Прыщеблядь даже не понимает, о чем речь, о чем с ней говорят.
Ебаные фанатики
Постоянно система вдруг перестаёт загружаться из-за драйвера radeon. Даже в recovery не пускает. Так вот вопрос простой: как обзавестись системой бэкапов, чтобы не переустанавливать систему каждый раз, а только восстановить пару файлов (загрузившись с LiveCD, например), чтобы всё вернулось на свои места.
https://www.linux.org.ru/forum/linux-install/6473305
https://forum.ubuntu.ru/index.php?topic=290819.0
аахха
> и тесного взаимодействия.
Я однажды зарепортил баг убунте. Через 17 дней его закрыл робот с комментарием "нет активности по этому багу"
У меня тоже иногда некоторые программы почему-то не работают, и пишут какие-то ошибки. И еще код тоже иногда не компилируется, и пишет какие-то ошибки
Я обычно переуставляю систему
А вдруг она не курит, а вдруг она не пьёт...
https://github.com/dotnet/runtime/issues/94620#issuecomment-1816959865
https://www.ajtek.ca/wsus/are-your-computers-to-blame-for-the-wsus-mmc-console-crashing/
Неправильная цифирка в номере биоса сломала нахуй систему, которая эьти номера считывает
> да БЛЯДЬ мне один запрос выполнить надо, я не буду свой пароль в чистом виде пихать, чтобы он вот прям в истории был
> логинишься через корпоративное SSO
> Postman: вылетает больше не запускается
технология иди на хуй.
> You are now logged out of Jenkins, however this has not logged you out of SAML.
> Have a nice day
да БЛЯДЬ
Какая-то AWS хуйня?
Почему когда я пердолился с AWS, я просто писал тераформ, и тёк?
Почему ты пирдолишься?
Используйте «Bruno», он охуенен.
https://danaepp.com/is-bruno-good-for-api-hacking
впрочем, я сварщик ненастоящий и мне и курлы хватает
курлы-курлы
aaaaaaaaaaa
https://www.instagram.com/podcastkurlykurly/
Я так и не понял, почему нельзя было петухам послать сообщение чтоб они ссылки выкинули.
Не удивительно, что он теперь на джаве пишет
Я еще раз подумал о том, что программист обычно знает только один проект и только один подход, и считает, что все остальные в мире делают точно так же.
Ну типа "Разумеется, в любом програмном обеспечении ву мире есть MySQL. Как вообще может быть программа без MySQL? Если тебе не нужен MySQL, то ты и не программист скорее всего"
Про «std::weak_ptr» он не знал, я так понимаю?
Ахахаха, вертикальное видео, в котором вставлено горизонтальное, в котором вертикальное
У нас есть weer это погода но еще и еще раз
Waar это где но еще и правда
Dan это then но еще и than
У слова er есть три совершенно разных использования
Слова типа "even", "nog" и "hoor" и "maar" так же многофункциональны, как слово "ёб"
В немецком: Wetter и wieder соответственно
> Waar это где но еще и правда
В немецком: wann и Wahr(heit) соответственно
> Dan это then но еще и than
В немецком dann и denn соответственно, причём наоборот, then — это dann, а than — это denn. Впрочем, в смысле than обычно используется als (это ещё и аналог английского as), а в смыле then — danach, dahin и прочие составные слова.
> У слова er есть три совершенно разных использования
А этот ужас мы даже разбирали на ГК. Вообще ставит в тупик.
У немцев:
• eben — это ровный (Ebene = равнина), но также «только», «просто», «сейчас», в общем аналог «ёб». Есть ещё ebenso = также.
• noch = ещё (причём в нескольких смыслах, русское «ещё» ведь тоже многозначно).
• maar вроде похоже на немецкое mehr = больше, которое так же многозначно, как русское «больше» (т. е. не только о размере). Но похоже, что немецкое mehr до нидерландского maar не дотягивает по количеству значений.
Насчёт hoor я не понял. Это типа «слышь» что ли?
А ещё в России посылают к Ebene-матери. Не знаешь, зачем всех на равнину посылают?
* это читается как "заебали наши собственные алерты"**
** это читается как "заебали спорадические отклонения"*** и как "вообще-то уже достаточно времени прошло, чтобы мог и сам подлатать"
*** это читается как "так а хули ты не думал про failure mode при написании?"****
**** справедливости ради, моей ответственности там половина
https://20history.livejournal.com/tag/мудаки
29 Jan 2022, 13:30
Наши в ГДР: Группа советских войск в Германии
Приветствую, спасибо за статью, где можно знать численность советских войск в ГДР на момент карибского кризиса.
...
В июне 2012 года Сегеди выступает с сенсационным заявлением – он узнал, что, оказывается, родители его матери были евреями!
После бесед с религиозным деятелем, парень принимает имя Довид, надевает кипу, изучает иврит, делает обрезание и посещает Израиль. Из венгерского ультрапатриота он превращается в ортодоксального еврея.
https://www.timesofisrael.com/nazi-grandma-convicted-again-of-holocaust-denial-in-germany/
https://www.youtube.com/watch?v=KuSN7JqVRbY
https://www.youtube.com/watch?v=k7YLeDsYoMQ
И знаете что? Я не смог в них увидеть ничего отталкивающего и что бы захотелось критиковать. Они замечательные люди, замечательное поколение, которое вызывает гордость.
Я просто горжусь ими.
https://pikabu.ru/story/novoe_pokolenie_11554273
> Видимо, тоже устав от не очень современных конкурсов и шумной музыки, дети вышли на улицу.
С выпускного «посидеть на улице» не выпускают. Ты можешь уйти с выпускного, но насовсем (тебя передадут в руки родителям), и обратно тебя на выпускной не пустят.
> они танцевали под "Похороните меня под плинтусом"
Есть такой фильм, спектакль и книга. Как под них можно танцевать?
Тогда не пиздежь. Я думал речь про солдатах на СВО, а тут просто выпускной (видимо со школы).
> С выпускного «посидеть на улице» не выпускают. Ты можешь уйти с выпускного, но насовсем (тебя передадут в руки родителям), и обратно тебя на выпускной не пустят.
Что за бред?
На худой конец можно пригласить камерунцев всяких
Вот кстати не понимаю почему камерунцев не приглашают. Там же за дёшево можно огого сколько людей нанять.
https://reactor.cc/post/5728037#comment28867682
classic php
https://reactor.cc/post/5728037#comment28869713
по запросу "сёма и тичное веб-говно" гугл нашел
Протокол Беркли
по ведению расследований с использованием
открытых цифровых данных
Практическое руководство по эффективному использованию
открытых цифровых данных при расследовании нарушений
международного уголовного права, международного права
прав человека и международного гуманитарного права
Машина шлифовальная угловая BWS-950 купить в
ИНТЕРНЕТ-ТЕХНОЛОГИИ В СВЯЗЯХ С ...
«Имени Станко» санаторий. Ивановская область. Цены
https://x.com/lass_mich_reden/status/1806362431276412990
https://pbs.twimg.com/media/GQBcXkFXYAAsvsx?format=jpg&name=medium
А вот JS, PHP, Python, Ruby, Lua — фактически компилируемые (хотя и в байткод), поэтому код с незакрытыми скобками/кавычками даже не запустишь.
Запускают экзешники с левых сайтов, а потом у них Винда виновата.
К дырявому NBT хакеров не пустит твой интернет-провайдер. А ещё скорее всего, у тебя не будет IPv6, а IPv4 будет через NAT.
Дыры обычно в MS-RPC. Он может работать через разнообразные транспорты:
1. Named pipes: `\\.\petuh\service`. Пайпы могут быть локальными, а могут идти поверх SMB, который может идти поверх NetBIOS, а сам NetBIOS может (как ты знаешь) быть хоть поверх NetBEUI (правда в таком случае он безопасен, бо по Интернету не ходит).
1.1 NetBIOS поверх IP это порты
NETBIOS Name Service (TCP/UDP: 137)
NETBIOS Datagram Service (TCP/UDP: 138)
NETBIOS Session Service (TCP/UDP: 139)
1.2 SMB напрямую поверх IP это порт TCP/445.
2. Напрямух поверх TCP. Для этого нужно сходить к мапперу на порт 135, и он тебя направит на нужный порт
Remote Procedure Call (RPC) port 135
2.1 бывает еще RPC over HTTPS (для удаленных петиухов) и этопорт 593.
https://www.thehacker.recipes/ad/recon/ms-rpc
(немного Борхес)
По чесноку нужно закрыть нахуй все порты младше 1024 точно
Спасибо, что напомнил про 100500 транспортов. Понятно, почему домашние провайдеры обычно прикрывают 135-139, 445.
Ещё какая-то засада с UPnP, который обычно реализован через жопу и ещё с чем-то.
И ещё удалённый реестр, удалённый помощник и т. п., которых я обычно отключаю.
Это всякие мультикасты. Есть еще WS-Discovery и бунжур.
раньше было хуже: был бродксат (нетбиосовский способ поиска компов в группе, см p-node и пр). Эникаст хоть можно в другую сеть запустить.
>И ещё удалённый реестр
Эта поебота поверх RPC обычно
The Windows Remote Registry Protocol MUST use RPC as the transport protocol.
The server interface SHOULD<1> be identified by a UUID, by using the RPC well-known endpoint
\PIPE\winreg. The server SHOULD<2> specify RPC over SMB as the RPC protocol sequence to the
RPC implementation, as specified in [MS-RPCE] section 2.1.1.2, although additional protocol
sequences are allowed. The server MUST specify the "Simple and Protected GSS-API Negotiation
Mechanism" (0x9) or "NTLM" (0xA) as the RPC Authentication Service, as specified in [MS-RPCE]
section 3.2.1.5.1, or both.
The client SHOULD<3> use RPC over SMB, ncacn_np (as specified in [MS-RPCE] section 2.1.1.2) as
the RPC protocol sequence to communicate with the server.
> удалённый помощник
кстати, RDP (3389) надо закрывать вообще всегда
там же тяжелое наследие доTCPшных времен: хотелось сделать универсальный интерйейс, чтобы поверх всего работал
а зачем тебе IPX? В дума по сети г онять?
Не заметил. Ну да, NBT ломанут, если у провайдера нет своего фаерволла. Но это всё-таки отличается от «нахватать вирусов».
Пердолик
Мужик пишем письмо на спичечную фабрику:
"Вот уже двадцать лет я покупаю ваши спички, и пересчитываю их. В коробках бывает 98 спичек, бывает 101, один раз вообще было 103. Вы там все ненормальные что-ли??"
https://github.com/sqlite/sqlite/blob/f1bf103e4e6a7735d05b902554a73909d22ca123/src/os.h#L65-L75
https://stackoverflow.com/a/5673393
Совсем недавно обсуждали компарабля по значению и компарабля по укокококозателю.
вот `equals` из `String`
нахуя сравнивать конь-тент если указатели равны?
Измениться он может и так: equals не обязан быть пококобезопасным.
Впринципе, в жоба ничто не потокобезопасно, если обратное явно не указано в кокументации
«В чем разница между StringBuilder и StringBuffer?
А между ArrayList и Vector? Hashtable и Map?»
скоро всей согражданной массой вспомним
- аргументы передаются одной строкой, которая будет парситься
- передайте логин и пароль, других способов аутентифицкации у нас нет
14 млн прсмртрв
https://www.youtube.com/watch?v=XqZsoesa55w
байты, биты, миллиарды, миллионы, вот это всё
Ну и в чём между килобайтом, мегабайтом и гигабайтом тогда разница?
--Виндуос
Можно:
язык даже упоминать не нужно
Это Java 20 что ли? Ну и хуйню же в ней навертели: switch... case... when..., да ещё не работающий с plain old data.
В 14 завезли свитч без сквозного заднего прохода.
when тут является необязательной деталью. Основное назначение — матчить обобщённый тип объекта с более конкретными. Ну типа:
А when уже потом налепили, и получился монстр.
А ассемблерщик скажет, что это вырождается в джамп/бренч. И конструкция цикла избыточна, потому что она тоже вырождается в переходы.
Кстати, на вопрос "а switch (Object) в if не вырождается?" мне ожидаемо не ответили.
Но эта разница стирается, как только мы включаем оптимизацию.
даже енам не выдержало, хотя там в листинге видно, что он конвертируется в значения типа 0х3
Потому что потому всё кончается на "у"!
пижже всего конечно сделали юнион в расте
тож неплохо
srkn[.info]
developers идите на хуй
Приложение «Xiaomi Service Framework» (системное).
Отзывы пользователей:
— путин пидарас, ставь лайк
— смерть хохлогабону
— Хохлы ебут сало и едят детей
— хуета как Украина и хохлы если мать хохлоправителя ебут в очко то ставь лайк
— яке хуя все англійською мовою? чому немає російської? блять ну я ж не пендос хуев я англійська мова не знаю я знаю тільки російська мова нахуй мені потрібна ця ваша хуев англійська?
— Передавайте разработчикам hyper os, что они тупые пидарасы и мудаки. Из-за них пришлось удалить данные у сотен тысяч пользователей
— хреновый опыт использования
Орфография и пунктуация сохранены.
Что тут происходит?
Я такое только в баттлфилде видел. Но там с концами ебанулись, выбираешь сервер в браузере, жмешь, тебя перебрасывает в приложение.
Я бы понял если бы этого варината не было.
Я бы хотел, чтобы там был логин/пароль.
Но имейл блядь?
И они ж не могут быть тупыми пхпшниками, которые как сделали, так и тонет.
ДЕВЯТЬ БЛЯДЬ ГИГАБАЙТ В СЕКУНДУ НА НОУТБУКЕ, пусть и ворклоад 99% чтения, 1% записи. Маркетинговый текст-то обещал только семь.
при этом read latency заметно похорошел
Бачиш https://www.postgresql.org/docs/current/wal-async-commit.html
Я про синхронный контекст. Как база данных, ты можешь немного подержать первую свинью, подождать какой-то интервал, и если за него отправит коммит вторая свинья, то ты их можешь сохранить оба за один фсинк, не теряя асид и снижая нагрузку на диск.
Исправленному верить.
Ты собираешь пачку записей в WAL, один раз их пишешь, потом делаешь fsync.
Если в этот момент все покрашится, то ты проебешь пару последних коммитов, но ты в целом останешься консистентным. Считай, ты просто откатил петушка.
Если смотрим с формальной точки зрения, то даже и не проебу - клиенту никто не сказал, что его изменения приняты, а значит ничего и не было
> Ты собираешь пачку записей в WAL, один раз их пишешь, потом делаешь fsync.
Есть как минимум опциональные режимы, которые фсинкают каждый коммит: https://www.postgresql.org/docs/16/runtime-config-wal.html#GUC-WAL-SYNC-METHOD
Ниже пишут, что fdatasync дефолтный.
Теперь у меня горит жопа поиграться с strace и погрепать вывод, чтобы сравнить количество синков и коммитов в остальных режимах
https://www.postgresql.org/docs/16/runtime-config-wal.html#GUC-COMMIT-DELAY
Я не хочу еще на полгода лезть в эту тему и разбираться, чтобы в итоге получить абсолютно нигде не применимые знания
Вы молодые, шутливые, вам все легко. Это не то. Это не `/proc` и даже не реестр. Сюда лучше не лезть. Серьезно, любой из вас будет жалеть.
Я уже приносил сюда книжку "PostgreSQL 16 изнутри". Она на русском, и её за 2 недели можно прочитать.
Сразу будешь знать больше, чем 98% петухов.
Там как раз про всё такое, как ты любишь: про ACID, про сборс говна на диск, про R-Trees, B-Trees и пр.
Советую
Технология ну ёб твою мать )))
FLUSH есть конечно у всех протоколов современных начиная во SCSI (откуда он перекочевал в SATA) и даже у IDE.
У NVMe он описан в базовой части специяикации
https://nvmexpress.org/wp-content/uploads/NVM-Express-Base-Specification-2.0d-2024.01.11-Ratified.pdf
раздел 7.1
The Flush command is used to request that the contents of volatile write cache be made non-volatile.
If a volatile write cache is enabled (refer to section 5.27.1.4), then the Flush command shall commit data
and metadata associated with the specified namespace(s) to non-volatile media. The flush applies to all
commands for the specified namespace(s) completed by the controller prior to the submission of the Flush
command. The controller may also flush additional data and/or metadata from any namespace.
Прыщедрайвер должен понимать чото типа
https://www.kernel.org/doc/Documentation/block/writeback_cache_control.txt
REQ_PREFLUSH
Я делаю mixed workload, 95/5 и 99/1. Для записей делается фсинк. Это влияет на общую производительность драйва, и, возможно, сетапа (они ебут один и тот же файл, но в нем 256 тысяч блоков по 4к). Делается весь этот бенчмаркинг для выяснения реальных скоростей чтения. Когда записи делают фсинк, получается одна свинья, когда не делают, получается другая.
короче 99% чтения, 1% записей. Вопрос именно в том, как последнее влияет на первое.
Это репродюсится только с этой железкой? Железка настоящая или виртуалка? У виртуалки может быть лимит на IOPS, и fsync его выжирает
Это прямо на хосте, но диск закриптован - в чистом виде должно быть быстрее.
А ты часом не читаешь из того же места, кудап пишешьт?
У тебя fio?
Насчет остального - это разбираться же надо! скорее всего до следующих выходных доживет. Написал блядь за полчаса статью о том что редис нахуй не нужен, при чем уже который раз.
>статью
форсите doc centric культуру амазонок?
Уважаю!
Я его туда и запихивал, пока наконец не договорился с самим собой, что нет, такое проявление лени мне никто с рук не спустит, и текст будет иметь ценность уровня самих рекомендаций взять редис. ioping показывает скорость единичного тыркания в диск - оно тебе прекрасно покажет, наебали ли тебя в спеках с твоим консьюмерском драйвом, но в продакшене мне нужно знать контракт под нагрузкой. Если я заявляю "вы все пидарасы, отличия nvme по скорости незаметны", то я не могу это аргументировать пингом, который в ненагруженной системе делает примтивный запрос раз в пятьдесят миллисекунд.
https://govnokod.ru/28951
https://govnokod.xyz/_28951/
https://tldp.org/HOWTO/Unix-and-Internet-Fundamentals-HOWTO/
Небольшой документик, страниц на 20, объясняющий как устроены Интернет, компьютеры, и UNIX.
почитал, и всё