Kir Kolyshkin (k001) wrote,
Kir Kolyshkin
k001

программистское, неинтересно

Говно этот ваш DBM::Deep. То есть он вроде бы работает-работает, а потом выясняется, что в файле базы написано хрен знает что, от чего всё начинает валиться и падать (как правило, в optimize()), или зависать (!!!) (как правило, в момент доступа к данным). Поэтому от DBM::Deep придётся отказаться, а это значит, что большая написанная мной прога требует переделки.

Чтобы не переделывать кардинально, подумал заюзать MLDBM. А он, бляха, в пику своему названию (Multi Level) не обеспечивает возможности работать напрямую с вложенными хешами. А это значит -- надо переделывать.

В конце-концов я реализую всю эту лабуду через кучу маленьких баз, или даже просто файлов. Обидно, что всё сделано и некоторое время (пока база не покорраптилась) даже работает.

PS с грустью вспоминаю времена работы на системе ДИАМС (это русская имплементация М-технологии, ранее называвшейся MUMPS). Это, собственно, операционная система, база данных (иерархическая, а не реляционная!), оболочка и язык программирования -- четыре в одном. Так вот, в том самом ДИАМСе файлов как таковых не было вообще, а были только иерархические структуры данных (деревья, то есть). Если к имени структуры вначале подставить крышечку (^, но на советских компьютерах она отображалась как ¬) -- то эта структура считалась "глобальной", то есть была доступна не только из твоей программы, но и из всех остальных и, кроме того, обладала персистансом, то есть реально хранилась на диске. Таким образом, если ты напишешь ¬somedata("person_name", "education", 2, "name")="Moscow State Univercity";, то это пропишется на диск и более никуда не пропадёт, пока ты явно не удалишь.
Tags: programming, thoughts
Subscribe

  • I'm back!

    Здрасьте вам! Вы не ждали, а мы припёрлись. С прискорбием сообщаю вам, что после долгой и продолжительной болезни Google+ (он же Google Plus, он же…

  • о, сколько нам открытий чудных

    Нашёл нынче совершенно случайно багу в нашем коммерческом продукте. Офигел слегка. Бага заключается в следующем: утилита, если ей задать один…

  • cidr2mask на shell

    В интернетах эта функция гуглится, но то, что нагугливается. не работает под dash. Ввиду того, что дебианеры фашисты в Debian шеллом по…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 5 comments