Подключение продуктива к хранилищу - за и против #782047


#0 by depthzer0
Коллеги, возник вопрос о подключении рабочей к хранилищу. Как показывает личный опыт подобная практика порочна, но задумавшись я не смог формализовать это очучение. Помогите, пожалуйста, опишите, почему не стоит подключать рабочую базу к хранилищу. Или наоборот - стоит.
#1 by Лефмихалыч
если хранилище только одно, то, как минмум, в продуктив будут попадать новые, добавленные, но недоделанные объекты. Вы же корень долго не держите же - добавили, отпустили и потом допиливаете же, так ведь?
#2 by Лефмихалыч
продуктив должен поставками обновляться. А поставки должны генериться из хранилища обновления. А в хранилище обновления должны руками мерджиться изменения из хранилища разработки (или хранилиЩ разработки). Одно хранилище - это при любом раскладе плохо, хоть подключай к нему продуктив, хоть нет.
#3 by Fragster
+1 вообще на ИТС есть статья. там немного перекручено, чтобы эмулировать бранчи нормальных систем версионирования, но в принципе понятно и логично. если разработчик один-три - можно и одним хранилищем пользоваться, если жестко регламентировать непомещение в хранилище неработающих объектов. если же разработчиков больше - то они друг другу в одном хранилище будут мешать.
#4 by scanduta
Везде где работал в крупных конторах было прямое подключение. Естественно нужно следить , кто что кладет и подтягивать то , что согласовано. Сейчас 15 разработчиков. Боевая подключена к хранилищу. Никаких проблем.
#5 by Лефмихалыч
поделись ссылкой на статью пожалуйста
#6 by Mort
В хранилище с рабочей тестовая релизов. Правки вносятся только в тестовую сравнением и объединением. В каждой группе разработчиков свои хранилища по желанию.
#7 by cybfyv
бывают глюки при обновлении из хранилища. По крайней мере раньше были
#8 by cybfyv
Одно хранилище? т.е. х..к, х..к и в продакшн?
#9 by cybfyv
Как показал опыт - при активной разарботке нужна база конфа которй 1 в 1 идет на рабочую. на которой можно потестить доработки
#10 by Дарлок
все просто... если команда внешняя, то см. если команда внутренняя, то проще , но нужен регламент работы и ночная автозаливка из хранилища
#11 by Базис
Не люблю упавшие с утра базы.
#12 by Волшебник
Рабочая база должна стоять на поддержке. Должна быть ещё одна тестовая база для создания релиза обновления CF или CFU (можно без данных, чтобы была быстрая реструктуризация). Я рекомендую всё-таки делать полные релизы (CF). Будет меньше проблем с УРБД.
#13 by cybfyv
сфу для локального обновления вообще не нужен
#14 by scanduta
Поясни зачем тебе несколько хранилищ?
#15 by cybfyv
Ибо "нужна база конфа которй 1 в 1 идет на рабочую."
#16 by scanduta
Естественно все тестируется предварительно на тестовых базах, которые тоже к хранилищу подрублены.
#18 by cybfyv
Где гарантия, что одновлени ена тестовую будет таким же как и на рабочую. Ведь это же вручную с расстановкой нужных галочек
#19 by scanduta
чего?
#20 by Господин ПЖ
машу вать
#21 by cybfyv
у вас есть незаконченные доработки в хранилище? Как вы не допускаете их в базу?
#22 by scanduta
В таких случаях Не подтягиваем при обновлении из хранилища. Все просто. Список доработок которые готовы в гугл доксе ведется.
#23 by Дарлок
в САПе, кстати, обычное дело
#24 by Волшебник
Иногда они сами подтягиваются. Особенно новые объекты и всякие модули. Особенно при захвате/обновлении корня.
#25 by Лефмихалыч
они широко применяют метод игнорирования. Ну, прорвалось в продакшн, ну и кер с ним.
#26 by ИС-2
Просто перед самим обновлением сравниваю конфигруация БД и новую конфигурацию
#27 by scanduta
Дисциплину нужно иметь хорошую и ничего само не подтянется. Это раз. А во вторых новые объект никакой опасности не представляют. Так как новые объекты только для полных прав доступны. ( обычная практика) Когда доработка завершена полностью , уже права добавляются как положено.
#28 by cybfyv
Это как обновить из хранилища не подтягивкая некоторых доработок? А если это общий модуль?
#29 by cybfyv
Можно надеятся на то что разрабы ничего не пропустят, а можно регламент выстроить так что ничего само не пройдет
#30 by Лефмихалыч
а они не помещают в хранилище до тех пор, пока не закончат тесты. А, если общий модуль нужен кому-то еще, то этот кто-то идет сосать лапу, пока не закончится текущая задача. Обычный для 1сников воркфлоу - один работает, остальные восхищенно ждут
#31 by cybfyv
Пробема в таком подходе - придет новый разраб и сломает вам всю ситстему, ибо он не знает 100500 нюансов, типо что нужно обновляь только в полнолуние стоя на левой ноге
#32 by scanduta
Вы теоретик. Вообще один модуль не должны дорабатывать одновременно несколько человек. Но если очень хочется то пожалуйста, отключаетесь от хранилища и дорабатывайте. Сохраняете конфу. Потом когда объект освободиться - захватываете, и объединяете. Удивлен , что так много народу простых вещей не знает если честно.
#33 by Лефмихалыч
мха-ха-ха
#34 by cybfyv
>>Отключайтесь от хранилища Однако
#35 by scanduta
Базу разработки
#36 by Лефмихалыч
Хотфиксы? Не, не слышал.
#37 by scanduta
Что хотфиксы то?
#38 by Лефмихалыч
ага, я так и сказал.
#39 by 4St
в обители делают так
#40 by Fragster
:
#41 by Дарлок
когда, косячок, проскочит все рубежи обороны, то он не знает, как экстренно это исправить.
#42 by cybfyv
Просто пишете лучше (с)
#43 by Дарлок
это, кстати, наиболее эффективное решение, но дорогое для работодателя
#44 by Dmitrii
Делать или не делать хранилище для продуктива - дело хозяйское. По сути ценность хранилища тут только в хранении некой истории изменений. А вот разработка(и) должна(ы) делаться обязательно в хранилище(ах). Под каждую длительную разработку необходимо создавать отдельное хранилище. Мелкие исправления по текущим ошибкам или разработкам с коротким сроком можно делать в основной разработочной базе (основном хранилище разработки). Собственно в и всё описано.
#45 by Alexey87
В чем проблема выкладывать в хранилище только протестированный функционал? Везде с кем работал Продуктив подключен к хранилищу.
#46 by Dmitrii
>> Как показывает личный опыт подобная практика порочна, но задумавшись я не смог формализовать это очучение. Вы уж определитесь. Есть опыт или его нет? Откуда взялись ощущения? На чем они основаны? >> опишите, почему не стоит подключать рабочую базу к хранилищу То есть вывод сделан заранее, а нам предлагается его обосновать?...
#47 by Dmitrii
>> В чем проблема выкладывать в хранилище только протестированный функционал? В разных сроках разработки и неизбежном их пересечении. Например, одному разработчику нужен документ Поступление и он закончил разработку за два дня. Другому этот документ нужен на неделю. Кто должен захватить этот документ, если хранилище одно? А еще бывает (даже чаще), что сама разработка выполняется быстро, а пользователи на тестирование тратят кучу времени (или вообще откладывают тестирование - им некогда из-за отчетности, например). И до окончания тестирования разработку класть в продуктив нельзя.
#48 by Волшебник
Все рабочие базы 1С делятся на два типа: 1. Ещё подключённые к хранилищу 2. Уже не подключённые к хранилищу.
#49 by Stepa86
У нас 2 хранилища - для разработки и для выката в РБ. Когда настает пара обновлений в локальной базе, которая подключена к хранилищу РБ, захватывается все, выполняется сравнение/объединение, тестируется, что база вообще стартует после этого и кладется все в хранилище. Т.к. база файловая - обновление проходит субъективно быстрее, чем прям в РБ. Параллельно выполняется бекап РБ. Я вот не очень люблю сидеть в той базе, которая в данный момент бекапится.
#50 by extrim-style
Я против, т.к. где-то в сети встречал вероятные сложности. Например, тут - . Понятно, что проблема именно с хранилищем, а не с рабочей базой, но лучше поостеречься. Мы используем daily-базу для разработок, подключенную к хранилищу. Доработки накатываем на рабочую.
#51 by Проггер
Добавлять в хранилище только рабочие версии после тестирования или объекты не участвующие в обработке данных (новые справочники и т.д.). В случае необходимости получать объекты точечно
#52 by Лефмихалыч
а, если двум разным программистам в одно и то же время надо добавить новые объекты в конфигурацию, что делать?
#53 by scanduta
Захватил корень добавил, положил корень. Повторить 2 раза.
#54 by Лефмихалыч
если продуктив подключен к хранилищу, новые объекты появятся в продуктиве с первым же обновлением. В результате могут усраться обмены и права доступа чьи-то - это только то, что на поверхности.
#55 by Fish
Если не ставить галочку "рекурсивно", то ничего не появится, пока сам не положишь в хранилище.
#56 by Fragster
а вот и нет. отсутствующие метаданные кладутся вместе с корнем.
#57 by scanduta
Ну добавятся новые объекты, обычная практика. От них проблем нет никаких. Так как новые объекты добавляются в таком случае абсолютно "голыми" , как бы первоначальный образ. Связь с остальными объектами, права, обмены и прочее уже закидывается второй финальной итерацией. Насчет новых объектов и прав  - уже объяснял в . И это практика, а не теория. Это уже все отлажено на системах работающих годами.
#58 by FIXXXL
что за системы? на сколько баз накатывется релиз?
#59 by cybfyv
Ты просто решаешь дисциплиной, а во взрослом мире принято решать технически
#60 by cybfyv
Это как часовую игру проходить с 1 жизнью. За раз или по уровням
#61 by Fish
Возможно, что уже и запамятовал и как-то по-другому делали (давно было). Но точно помню, что была рабочая база, подключенная к хранилищу - и ничего недоделанного, пока не поместишь в хранилище, в рабочую не попадало.
#62 by Лефмихалыч
как раз практика показывает, что такие штуки, прорываясь в продуктив, могут стать причиной простоев и потерь. А теория говорит: "да, куйня, ни чего не случится".
#63 by Лефмихалыч
ты просто не помнишь.
#64 by Fish
Возможно, настаивать не стану, т.к. давно это было.
#65 by Лефмихалыч
Кстати, адепты подключения, я может сюрприз скажу, но в подключенной к хранилищу базе может внезапно появиться два объекта с одним именем. Или регистр накопления без регистратора. Или еще какая-то такая же балда, которая, хоть и временная, но обновлению вашему принесет пиндык.
#66 by scanduta
могут стать причиной простоев и потерь может внезапно появиться два объекта Смешно.... сразу видно кто тут теоретик
#67 by Fish
Ну мы как-то пару-тройку лет так проработали, и ничего критического не случалось. Разве что пару раз хранилище рушилось. Создавали новое - и дальше в путь. Никаких потерь и критических ошибок. А если руки кривы, то и без всякого хранилища можно весёлую жизнь устроить.
#68 by Волшебник
А ещё бывают ошибки типа "Недостаточно прав для выполнения операции над базой данных." А всё из-за поля типа "ЛюбаяСсылка" или "СправочникСсылка" (или субконто) и новых объектов, на которые нет доступа ни у одной из ролей, кроме Администратора. Отладка превращается в в бондиану "Поймай меня, если сможешь".
#69 by scanduta
А я думал Волшебник шарит
#70 by scanduta
В данном случае способ подключения к хранилищу непричем
#71 by Волшебник
Если рабочая база подключена к хранилищу, то новые объекты прилетают в рабочую базу бесконтрольно. И не надо думать, что они не повлияют на работу, даже если ещё не включены ни в какие роли.
#72 by Волшебник
Мне кажется, слишком много выпендривается в этой ветке. Нет? Мне показалось?
#73 by scanduta
Требую пояснений... ))
#74 by Fish
Кстати да. Помню, у нас было жёсткое правило: при добавлении нового объекта, сначала все права проставить, а уж только потом в хранилище. Наверное, с этим было связано.
#75 by Волшебник
Вьюнош, доверься моему многолетнему опыту. Когда ты под стол пешком ходил, я уже виды расчёта в Зарплате для DOS ковырял, а когда ты 7.5 на 7.7 обновлял, я уже книжку по восьмёрке написал.
#76 by Волшебник
Эти правила написаны кровью.
#77 by scanduta
При добавлении новых объектов( не окончательной сборки) они всегда у меня доступные только ПолнымПравам. Делается для того чтобы не держать корень. После окончательной разработки - закидывается финальная версия объекта, и права уже обычным зверям.
#78 by Fish
Там ещё были разные нюансы, связанные с тем, с какого компа и под каким пользователем коннектиться из боевой к хранилищу. Но, в итоге (наступив пару раз на грабли), разработав для себя свод правил, вполне нормально работали, без критических ошибок, во всяком случае. Хотя, имхо, правильнее конечно, всё-таки не подключать боевую к хранилищу, т.к. слишком много правил приходится соблюдать :)
#79 by Лефмихалыч
нет, не показалось
#80 by Лефмихалыч
если ты добавляешь справочник и у тебя есть где-то таблица с полем "СправочникСсылка", то что будет у пользователей, которые формируют отчет, в котором есть это поле? Хинт1: справочник есть, но ни в одной роли его нет. Хинт2: не приведи господь - справочникСсылка в субконто или в характеристике какой-то...
#81 by Лефмихалыч
какие сборки? У тебя ж продуктив к хранилищу подключен (одному единственному), а значит процесс разработки - куяк-куяк и в продакшн. Окончательной сборки... тьхе...
#82 by Evgueni
Рабочую базу ни в коем случае нельзя подключать к хранилищу. Даже на свою собственную поддержку ставить не нужно. Иначе весь мусор будт в рабочей базе, да и потери данных не мудрено поиметь однако.
#83 by scanduta
Устал уже десять раз разжевывать .....
#84 by Лефмихалыч
так отдохни
#85 by Волшебник
А ещё бывают циклы по метаданным, разные универсальные обработки, всякие СКД, которым нужны права "Просмотр", планы обменов...
#86 by Лефмихалыч
Школьнику этого не объяснишь. Он живет в стране волшебных эльфов, где все строго регламентировано и все делают то, что нужно и так, как положено, с первой цифры правильно и архитектура всегда идеальна.
#87 by Лефмихалыч
да банальная структура подчиненности может рассыпаться от добавления одного единственного объекта, не включенного в роли.
#88 by jsmith
Без разницы
#89 by oleg_km
А я не понимаю, почему это сырой новый объект из хранилища конфигурации может прорваться в рабочую базу данных, а вот в поставку вдруг не сможет. По-моему в обоих случаях все зависит от человека, что отфильтровать изменения для включения в поставку, что отфильтровать при накатывании из хранилища.
#90 by Лефмихалыч
в поставку - может. А вот, если продуктив подключен к единственному храниищу, то новые объекты не в него попасть, а гарантированно будут попадать всегда и сразу
#91 by Волшебник
Поставку можно и не делать. Например, мы по пятницам не делаем файл обновления, чтобы не портить себе выходные.
#92 by ovrfox
Отвественный должен быть один, скорее всего - руководитель отдела тестирования или , если людей мало, ведущий программист. Смысла подключать нет, разве что искать в какой именно момент ответлицо упустило ошибку. Я допускаю, что кому-то захочется иметь историю изменений (причем указание на то, что хранилище бывает сбоит и теряет свою историю не помагает избежать ведения истории в хранилище) и он подключит рабочую БД к хранилищу, но это , естественно, может быть только специализированное хранилище - для выпускаемых версий. К слову - я их предпочитаю хранить просто в виде CF файлов. Хранилище для разработчиков ни в коем случае не может касаться рабочей БД.
#93 by Волшебник
Хранилище для разработчиков ласково называется ГНОИЛИЩЕ
#94 by Armando
Мне несколько раз удавалось убить базу подклюенную к хранилищу. Обычно это случается, когда захватишь корень, вносишь изменения, помещаешь, потом откатываешь на старую версию. После этого есть шанс потерять базы подключенные к хранилищу. Спасает предварительная очистка кэша в подключенных базах. Валятся с ошибкой что-то типа Нарушена структура целостности.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С