Facebook, продолжающий использовать распределённую систему управления версиями Mercurial в своих внутренних проектах, работает (https://groups.google.com/forum/#!topic/mozilla.dev.version-...) над созданием нового сервера Mercurial, для разработки которого выбран язык программирования Rust. Развиваемый сервер может работать как распределённая система и поддерживает для хранения репозитория подключаемые хранилища в формате ключ/значение. Проект Mozilla заинтересован в развитии нового сервера, который можно будет использовать для переноса репозиториев hg.mozilla.org в инфраструктуру Amazon S3 или других облачных сервисов.Для Mercurial в Facebook также разработано расширение, которое позволяет ускорить выполнение выборки в 4-10 раз, благодаря применению кэширования типовых запросов. Публикация нового расширения ожидается не раньше декабря. Кроме того, Facebook реализовал новую команду "hg absorb", позволяющую манипулировать черновиками изменений, уже добавленных в рабочую директорию, но для которых ещё не выполнен коммит. Команда выполняет анализ наличия конфликтов для предлагаемых для коммита изменений и если изменение не может быть добавлено без конфликта, система оставляет его неподтверждённым. Совместно с Google и Unity, Facebook также работает над новой виртуальной ФС, оформленной в виде модуля FUSE и позволяющей ускорить работу репозиториев с большим числом файлов.
URL: http://www.theregister.co.uk/2016/10/18/facebook_mercurial_d.../
Новость: http://www.opennet.me/opennews/art.shtml?num=45349
FUSE и "скорость" очень смешно.
Скорость - понятие относительное. Быстрее питона, видимо.
>> FUSE и "скорость" очень смешноРядом со мной сервак (один из сотен в нашей скромной организации) с парой терабайт ОЗУ.
Скорость есть. Уверяю тебя.
А при чём рама к FUSE? Там проблема с кучей переключений контекста вообще-то.
Тебя уверяет Убедитель, а ты не убеждаешься? Действительно сумасшедший Алекс...
у нас джентльменам верят на слово!
> у нас джентльменам верят на слово!Вот Алексу карта и прет.
Я в половине случаев пишу, чтобы яснее было кому-то со стороны
А ну если пара терабайт оперативы то конечно все летает, от одного только осознания сего факта)
- Скажите, я на своей NT прошел путь 16, 32, 64. И каждый раз система все медленнее и медленнее грузилась. Это потому, что она память тестирует?
- Нет, она просто тащится.
Теперь осталось мозги купить.
Держитесь там.Вы понимаете, какая бы скорость была бы, не будь там столько слоев "счастья", и будь все сделано более оптимально?
Что-то я не понял. Заинтересована Mozilla, а разрабатывает Facebook?
Просто кто-то очень большом может позволить себе менять мир под себя.А Мозилла пока еще маленькая :)
Ну может ФБ купит МЗ, и будет у них свой браузер, стучащий в ФБ на юзеров, как Хром стучит в Гугл.
>Проект Mozilla заинтересован
> в развитии нового сервера, который можно будет использовать для переноса репозиториев
> hg.mozilla.org в инфраструктуру Amazon S3 или других облачных сервисов.И тут ария заморского гостя ESR-а c reposurgeon-ом наголо!
А говорили питон не тормозит...
Никто так не говорил. Более того, в философии языка четко обозначен безусловный приоритет удобства разработки над скоростью и потреблением памяти
> Никто так не говорил. Более того, в философии языка четко обозначен безусловный
> приоритет удобства разработки над скоростью и потреблением памятиТам четко означен приоритет на макак, которых строить можно только о...здюливанием на уровне синтаксиса.
Многие проекты на питоне зарождались как экспериментальные, лабораторные проектики для личного пользования. Для школьных и других мелких задач этот язык идеален. Но после такие проекты вырастают и вполне ожидаемо сталкиваются с проблемами производительности. А всё потому что нефиг выходить за рамки назначения языка. Теперь вот переписывают.
Чем их git не устроил?
Из серии: "Грузины лучше, чем армяне?"
Тем, что git плохо работает с такими объемами кода(80 гигабайт в одном репо).
Меркуриал же проиграл вроде битву гиту.
Если контора большая - иногда какой-нибудь труп выгоднее в одиночку поддерживать, чем мигрировать. А здесь Фейсбук даже не совсем в одиночестве. Хотя странный выбор - и меркуриал, и раст.
> Хотя странный выбор - и меркуриал, и раст.То есть выбор сочетания PHP и С++ в виде HipHop от того же Facebook странным не показался?
Не показался. PHP у них там изначально, а для плюсов есть Александреску, который подобное может, в общем-то, в одно рыло сделать.А вот как к ним Rust приполз вместо плюсов или того же D - хоть убей не пойму.
Александреску уже год там не работает и то что может Александреску на C++,
на RUST могут сделать многие при похожей производительности и лучшей читаемости исходников.
RUST не пропустит компиляцию, с потенциальной проблемой в исходниках, поэтому и участие/помощь коммитов новичками будет более активное.
Хм, насчёт "не работает" - не знал. А крутость руста или её отсутствие обсудим лет через пять. Пока - полагаю, что на много порядков большее количество плюсовиков перевесит выгоды от руста даже если они есть.
> А вот как к ним Rust приполз вместо плюсов или того же
> D - хоть убей не пойму.Пришло в компанию несколько эспонатов которые это умеют, так и приползло. Задача же решена, а если будут проблемы - ну ладно, хипстеры еще раз с ноля перепишут. Dropbox вообще сначала с питона на go переписывал, потом с go на rust. Через годик им еще что-нибудь захочется попробвать. Ну там майкрософт напрмер проспонсирует - они дотнет полюбят, например.
> То есть выбор сочетания PHP и С++ в виде HipHop от того
> же Facebook странным не показался?Нет. Отличный был выбор благодаря которому теперь есть PHP7.
Ну так и из меркуриала может что-то полезное получится.
> Ну так и из меркуриала может что-то полезное получится.Судя по упомянутым аналогиям, что-то типа git 3.x или 4.x ;)
В фантазиях школьников разве что.
да не. объективно, по популярности. и по методике работы - в меркуриал затащили гитовую в итоге (bookmarks)
В распределенной разработке и в опенсорс - да, проиграл.
Некоторые крупные ребята до сих пор сидят на ртути и мигрировать не собираются, тот же, cpython, например. Причем cpython будет сидеть на ртути как минимум до того момента когда Git перепишут на python
> Некоторые крупные ребята до сих пор сидят на ртути и мигрировать не
> собираются, тот же, cpython, например. Причем cpython будет сидеть на ртути
> как минимум до того момента когда Git перепишут на pythonОпять на опеннет пакеты из параллельной вселенной приходят? Увы, у нас тут вроде как уже:
https://www.opennet.me/opennews/art.shtml?num=43619
> Разработка Python переносится на Git и GitHubhttp://legacy.python.org/dev/peps/pep-0512/
> Title: Migrating from hg.python.org to GitHub
> Status: Active
> Type: Process
ну-ну.> Some Informational and Process PEPs may also have a status of "Active" if they are never meant to be completed. E.g. PEP 1 (this PEP).
вы сами по ходу не понимаете, что идея перевести всю разработку на github != переезду на гит как таковому, так же как официальное зеркало на github могут запилить ничего не делая с hg.python.com
>> сидят на ртути и мигрировать не собираются
> вы сами по ходу не понимаете, что идея перевести всю разработку на
> github != переезду на гит как таковому, так же как официальноеВы сами походу не понимаете, что сказать хотели, да?
Да и вообще, они с начала времен ртутью пользвоались, а не мигрировали CVS -> SVN -> Mercurial!1
"До сих пор сидят"? Да мы на него еще не целиком переехали.Исходники Соляриса да, а вот куча других проектов на SVN, а кое-что до сих пор на SCCS (будь он проклят).
> как минимум до того момента когда Git перепишут на pythonЕсли им надо гит на питоне - пусть его и пишут сами, чтоли. Для большинства остальных людей ценность тормозилок на питоне как видим оказалась сомнительной.
> Меркуриал же проиграл вроде битву гиту.Среди DVCS однозначно проиграл. Однако в FB, Google и некоторых других компаниях практикуют использование одного большого репозитория под все проекты (модель файловой помойки) примерно как это обычно делают с subversion и с perforce.
Уходить от помойки никто из них не хочет. Кто-то всё ещё жрёт subversion (бедные компании вроде наших отечественных аналогов), другие пишут свои VCS чтобы можно было масштабироваться и допиливать нужные им фичи (гугл, например, зажиточные). А некоторые, средней зажиточности, берут существующие DVCS и допиливают их до работы с помойкой.
К последним как раз и относится FB со своими попытками гонять помойку на hg. Они уже накодили несколько расширений чтобы hg мог хоть как-то работать с гигантским индексом и репозиторем превратив hg фактически в централизованный subversion, но с возможностью иметь относительно нормальные ветки.
Это всё бобро хорошенько тормозит на помойках и не очень надёжно из-за централизованности. В общем, попытки ускорять работу с помойкой на hg уже не первые и, видимо, далеко не последние. Когда-нибудь до кретинов дойдёт, что помойки это плохо и так делать не нужно.
> Кто-то всё ещё жрёт subversion (бедные компании вроде наших отечественных аналогов)Всё зависит от типа проекта и его активности, во многих проектах нет смысла даже в релизах, и от svn нужно 2 вещи - гарантия сохранения, и возможность посмотреть историю изменения, к примеру если у вас куча кода для БД ( Pl/SQL ) то переход на git вообще не имеет смысла.
> Всё зависит от типа проекта и его активности, во многих проектах нет смысла даже в релизахнет, всё зависит не от этого.
> ... и ... нужно 2 вещи - гарантия сохранения, и возможность посмотреть историю изменения
ты уже привёл два примера где subversion сливает DVCSам. А теперь попробуй ещё раз подумать, если есть чем, от чего таки всё зависит.
> к примеру если у вас куча кода для БД ( Pl/SQL ) то переход на git вообще не имеет смысла.
Подобные примеры правильно формулировать так: если я не умею пользоваться инструментами разработки, то не имеет смысла менять один на другой и не важно чем я занимаюсь - делаю кучу для БД или кучу кода.
> не первые и, видимо, далеко не последние. Когда-нибудь до кретинов дойдёт,
> что помойки это плохо и так делать не нужно.У них уже есть немало репов на гитхабе. Вменяемого размера и с разбивкой по проектам.
Для больших компаний не редкость послать одним манагером копать от забора до обеда, а другой манагер посылает бульдозер и каток, с заданием проложить дорогу. И вот ушли работяги на обед, возвращаются - ух ты, вместо канавы - дорога!
ты путаешь открытые проекты с внутренней разработкой.
Раз может, пусть сделает GIT на Brainfuck?
> Раз может, пусть сделает GIT на Brainfuck?Дак они и делают это с мозгами на расте и ртутью же.
А мсье знает толк в извращениях.
Сервер? Оно же распределённое.
> Сервер? Оно же распределённое.И кто управляет? Неужели клиент напрямую файлами по сети?
>> Сервер? Оно же распределённое.
> И кто управляет? Неужели клиент напрямую файлами по сети?Поскольку натуральных мозгов нет, то управляет -- Искусственный Интеллект, чего не понятно-то. //И поэтому переписывать надо на прологе -- они опять всё делают не так.
Хм. Прямо неожиданно! Я уже как то свыкся с мыслью что питоновый софт переписывают на Go ... а тут нате вам! :)