|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Решил изучить процесс доработки ядра FIREBIRD. Делаю первые шаги и сразу возникли вопросы. С установкой и настройкой среды проблем не выявлено, достаточно следовать описанию на офсайте. Но вот со сборкой проектов начались проблемы. Оговорюсь сразу, что речь идет о Windows версиях. Под Visual Studio версия 3.0.2 собирается без проблем. На предупреждения пока не будем обращать внимание, вернемся к ним позже. Но последний выпуск 3.0.3, где включена поддержка уже VS2015, при компиляции и сборке проекта на запуске make_boot.bat выдает ошибку. По непонятной причине из препроцессинга выпадает обработка alice_meta.epp. Ну и далее, по отсутствию alice_meta.cpp вся сборка валится, так как соответствующая библиотека не скомпилировалась. Кто может подсказать в чем проблема? Заранее спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 12:28 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008, учи С++, и не жалуйся. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 12:49 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008Кто может подсказать в чем проблема? Если ты пытаешься собрать тройку студией 2015, то проблемы предсказуемы: это не мейнстрим и Влад фиксит соответствующие проекты не сразу. Собирай из текущих источников бранча, а не релиза. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 12:58 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovSQL2008Кто может подсказать в чем проблема? Если ты пытаешься собрать тройку студией 2015, то проблемы предсказуемы: это не мейнстрим и Влад фиксит соответствующие проекты не сразу. Спасибо. Я так и подумал, но решил уточнить. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 13:02 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008Но последний выпуск 3.0.3, где включена поддержка уже VS2015, при компиляции и сборке проекта на запуске make_boot.bat выдает ошибку. По непонятной причине из препроцессинга выпадает обработка alice_meta.epp. Ну и далее, по отсутствию alice_meta.cpp вся сборка валится, так как соответствующая библиотека не скомпилировалась.Ещё раз повторяю - я проверял сборку 3.0.3 с VS2015 и она в полном порядке. Покажи лог сборки, скорее всего не был создан один из подкаталогов в gen. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 13:27 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
hvladSQL2008Но последний выпуск 3.0.3, где включена поддержка уже VS2015, при компиляции и сборке проекта на запуске make_boot.bat выдает ошибку. По непонятной причине из препроцессинга выпадает обработка alice_meta.epp. Ну и далее, по отсутствию alice_meta.cpp вся сборка валится, так как соответствующая библиотека не скомпилировалась.Ещё раз повторяю - я проверял сборку 3.0.3 с VS2015 и она в полном порядке. Покажи лог сборки, скорее всего не был создан один из подкаталогов в gen. Я же не сказал, что не верю или ошибка в исходниках. Пытаюсь понять почему не собирается у меня. Это принципиальный вопрос и перед тем как вносить какие-то изменения необходимо добиться, чтобы изначальный проект собирался без ошибок и варнингов. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 13:38 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008Пытаюсь понять почему не собирается у меня.А я пытаюсь выяснить - что пошлО не так. Вот эти строки на консоли в начале процесса make_boot есть ? Или они отличаются ? Код: plaintext 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 13:40 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Весь лог наверно нет смысла постить, вот важная строчка 1>------ Build started: Project: remote, Configuration: Release x64 ------ 2>------ Build started: Project: alice, Configuration: Release x64 ------ 3>------ Build started: Project: burp, Configuration: Release x64 ------ 4>------ Build started: Project: ib_util, Configuration: Release x64 ------ 2> alice.cpp 2> exe.cpp 2> tdr.cpp 2> alice_meta.cpp 2>c1xx : fatal error C1083: Cannot open source file: '..\..\..\gen\alice\alice_meta.cpp': No such file or directory Папка \gen\alice\ сформировалалсь успешно, но alice_meta.cpp туда неотпроцессился. Исходный alice_meta.epp на месте и он нормальный. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 13:55 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
hvladSQL2008Пытаюсь понять почему не собирается у меня.А я пытаюсь выяснить - что пошлО не так. Вот эти строки на консоли в начале процесса make_boot есть ? Или они отличаются ? Код: plaintext 1. 2. 3.
Вот как у меня начинается выполнение make_boot.bat Setting Environment Variables thus... vs_ver=msvc14 platform=x64 msvc_version=14 db_path=C:/FB303 root_path=C:\FB303 server_name=localhost (End of setenvvar.bat) Executed set_build_target.bat Creating directories Building btyacc (x64\release)... Microsoft Visual Studio 2015 Version 14.0.25420.1. Copyright (C) Microsoft Corp. All rights reserved. 1>------ Build started: Project: btyacc, Configuration: Release x64 ------ ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 14:15 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Ты про make_icu не забыл?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 14:17 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovТы про make_icu не забыл?.. Нет. Запускаю перед этим, но там все пучком. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 14:19 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008Весь лог наверно нет смысла постить, вот важная строчкаЭто уже следствие проблемы, возникшей раньше. SQL2008Папка \gen\alice\ сформировалалсь успешно, но alice_meta.cpp туда неотпроцессился. Исходный alice_meta.epp на месте и он нормальный.А что у тебя после строки Код: plaintext
есть ли там Код: plaintext 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 14:40 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
hvladЭто уже следствие проблемы, возникшей раньше. В этом нет никакого сомнения. hvlad есть ли там Код: plaintext 1. 2. 3.
Нет, процесс начинается с Код: plaintext 1. 2.
А почему это происходит мне непонятно... Попробую сравнить батники версий 3.0.2 (рабочая) и 3.0.3 (нерабочая) ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 15:12 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Батники preprocess.bat различаются в 70-й строке 3.0.2 @for %%i in (dfw, dpm, dyn_util, fun, grant, ini, met, pcmet, scl, Function) do @call :PREPROCESS jrd %%i -gds_cxx 3.0.3 @for %%i in (dfw, dpm, dyn_util, fun, grant, ini, met, scl, Function) do @call :PREPROCESS jrd %%i -gds_cxx Что это значит пока не готов сказать. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 15:29 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Вот и решилась проблема. Взял батник препроцессора от 3.0.2 и все заработало. hvladЕщё раз повторяю - я проверял сборку 3.0.3 с VS2015 и она в полном порядке. Могу предположить, что вы обновили исходники, а командные файлы оставили прежними? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 16:07 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Проверь переводы строк в батниках. Они должны быть нативные CR-LF, cmd не понимает CR-only. В .gitattributes добавь "*.bat eol=crlf". Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 16:19 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008Что это значит пока не готов сказать.Убрали ненужное. К alice_meta.epp не имеющее никакого отношения hint: в логе изменений есть комментарии ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 16:24 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008Взял батник препроцессора от 3.0.2 и все заработало.pcmet.epp был убран между 3.0.0 и 3.0.1, с тех пор изменений в preprocess.bat не было ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 16:25 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008, а откуда ты брал исходники ? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 16:27 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008Нет, процесс начинается сТам дальше должна быть строка про alice_meta.epp, вот так Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 16:29 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008Могу предположить, что вы обновили исходники, а командные файлы оставили прежними?Этого достаточно, чтобы перестать предполагать ? Код: plaintext 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 16:31 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovПроверь переводы строк в батниках. Они должны быть нативные CR-LF, cmd не понимает CR-only. В .gitattributes добавь "*.bat eol=crlf".Подтверждаю, в tarball архиве виндовые батники имеют LF в кач-ве перевода строк. Почему-то именно для preprocess.bat это приводит к ошибкам, другие файлы выполняются корректно. Исходники полученные git'ом такой проблемы не имеют - он по-умолчанию ставит платформенно зависимые концы строк. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 17:36 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
hvladSQL2008Взял батник препроцессора от 3.0.2 и все заработало.pcmet.epp был убран между 3.0.0 и 3.0.1, с тех пор изменений в preprocess.bat не было Тогда возможно просто пересохранение файла привело к восстановлению правильных переводов строки? Проверю - удалю pcmet и перезапущу сборку. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 17:49 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
hvladSQL2008, а откуда ты брал исходники ? 3.0.2. версию с гитхаба, только это было пару месяцев назад. 3.0.3. оттуда же. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 18:01 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
hvladSQL2008Взял батник препроцессора от 3.0.2 и все заработало.pcmet.epp был убран между 3.0.0 и 3.0.1, с тех пор изменений в preprocess.bat не было Нет, коллеги! Удаление pcmet из preprocessor.bat приводит к возобновлению ошибки! Версия о некорректных переводах строк оказалась несостоятельной. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 18:03 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL20083.0.2. версию с гитхаба, только это было пару месяцев назад. 3.0.3. оттуда же.Каким образом ? Как git обрабатывает crlf ? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 18:35 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008hvladpcmet.epp был убран между 3.0.0 и 3.0.1, с тех пор изменений в preprocess.bat не было Нет, коллеги!Серьёзно ? Научить спрашивать git про логи и теги ? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
SQL2008Удаление pcmet из preprocessor.bat приводит к возобновлению ошибки! Версия о некорректных переводах строк оказалась несостоятельной.Похоже, кому-то нужно разобраться с кашей на своём диске :) ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2018, 18:46 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
hvladSQL2008, а откуда ты брал исходники ? Вот тут , так как предыдущих версий нигде (не считая сомнительных мест) найти не смог. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2018, 12:46 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovПроверь переводы строк в батниках. Они должны быть нативные CR-LF, cmd не понимает CR-only. В .gitattributes добавь "*.bat eol=crlf". Хорошо, допустим виноваты переводы. Прошу тогда объяснить тот факт, что одна версия компилируется нормально, а вторая дает ошибку при том, что переводы строк у обоих одинаковы и они действительно LF. И различаются они (ну кроме кода, конечно) только наличием или отсутствием упоминания pcmet в preprocessor.bat. Проведу эксперимент. Сделаю переводы строк CR+LF и попробую еще раз. Мне не зазорно признать свою неправоту, нужно докопаться до истины. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2018, 12:54 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008 Проведу эксперимент. Сделаю переводы строк CR+LF и попробую еще раз. Вынужден признать, что был неправ! Замена переводов строк решила проблему. Проект стал корректно собираться даже при отсутствии pcmet. Упрямился я потому, что мне казалось это нелогичным... Вопрос снят, всем кому моя упёртость принесла огорчения, приношу свои искренние извинения. Но на этом не прощаюсь... Скоро будут новые вопросы :) ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2018, 13:10 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
В студии 2015 добавились новые предупреждения. При компиляции проекта выдается множество C4595, о том, что использование перегруженных инлайн операторов new и delete, являющихся не членами класса, не рекомендуется. Чисто теоретически эти операторы могут быть вызваны для разных объектов, что может привести к утечкам памяти. А теперь вопрос - что лучше сделать: 1. Вынести определения new и delete как неинлайн в alloc.cpp, оставив в alloc.h только объявления. 2. Подавить выдачу предупреждений C4595 в каждом отдельном проекте. Я бы выбрал 1-й вариант, но возможно, что есть некие нюансы, которые мне пока неизвестны. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2018, 14:10 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008, в master это уже давно исправлено https://github.com/FirebirdSQL/firebird/commit/ce66904ebfd0cef7021bb5e3e90419c634b0f79c ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2018, 14:21 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
hvlad, спасибо! у меня похоже устаревшая версия. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2018, 14:44 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008hvlad, спасибо! у меня похоже устаревшая версия.master - это Firebird 4 ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2018, 21:53 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Здравствуйте, а есть какое-то публичное место где можно обсуждать вопросы связанные с разработкой? Например, я попробовал бы сделать Pull request по следующим задачам, но перед этим хотелось бы обсудить/убедиться, что решение таким-то способом у меня примут, а таким-то нет. - http://tracker.firebirdsql.org/browse/CORE-5612 - http://tracker.firebirdsql.org/browse/CORE-5746 Пробовал задавать вопросы в трекере, но там полная тишина. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2018, 14:35 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
rashid.abzalov, твои предложения полная фигня. Отключить защиту системных таблиц = вернуться в прошлый век. Если что-то делается медленно правильно попросить ускорить этот момент в ядре, а не ковырять системные таблицы. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2018, 14:41 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Симонов Дениствои предложения полная фигня. Отключить защиту системных таблиц = вернуться в прошлый век. Если что-то делается медленно правильно попросить ускорить этот момент в ядре, а не ковырять системные таблицы. А есть более конкретные аргументы в пользу защиты системных таблиц, кроме "полная фигня" и "вернуться в прошлый век"? К тому же, я предлагал разрешить создание/выключение/включение индексов для системных таблиц. Симонов ДенисЕсли что-то делается медленно правильно попросить ускорить этот момент в ядре, а не ковырять системные таблицы. Что значит "в ядре" и что значит "не ковырять системные таблицы"? Что есть еще кроме системных таблиц и исходников? Я указал место в исходниках, где это можно ускорить, а также указал каких индексов не хватает и в какой момент. И при каких действиях сейчас используется не совсем оптимальный индекс. Ну вот я "попросил" - сижу жду ответа (не решения) уже больше полу года. Сколько еще ждать? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2018, 15:01 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
rashid.abzalovЗдравствуйте, а есть какое-то публичное место где можно обсуждать вопросы связанные с разработкой? https://sourceforge.net/p/firebird/mailman/firebird-devel/ rashid.abzalovНапример, я попробовал бы сделать Pull request по следующим задачам, но перед этим хотелось бы обсудить/убедиться, что решение таким-то способом у меня примут, а таким-то нет. - http://tracker.firebirdsql.org/browse/CORE-5612 - http://tracker.firebirdsql.org/browse/CORE-5746 Насколько я помню, я исследовал 5612 и пришёл в выводу, что новыми индексами всех проблем не решить. Увы уже не помню подробностей. Кроме того, очень сомнителен сам тестовый пример - там сотни вьюх на таблицы с сотнями полей. Т.е. оно показывает проблему, но её реальная актуальность вызывает большие сомнения. 5746 слишком спорный, чтобы его взять и сделать, нужно обсуждение. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2018, 15:09 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
rashid.abzalovНу вот я "попросил" - сижу жду ответа (не решения) уже больше полу года. Сколько еще ждать?Активнее надо быть, не надо столько ждать :) ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2018, 15:09 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
rashid.abzalovА есть более конкретные аргументы в пользу защиты системных таблиц, кроме "полная фигня" и "вернуться в прошлый век"? конечно есть. Именно из-за коверкания системных таблиц больше всего воплей поломалась база, бекап не восстанавливается и т.д. rashid.abzalovК тому же, я предлагал разрешить создание/выключение/включение индексов для системных таблиц. изначально ты рассказал о проблеме, а потом стал предлагать странные решения в виде разрешения делать свои системные объекты. Если надо ускорять, то уж делать это для всех, а не придумывать каждому пользователю собственный системный индекс. По твоему вопросу. Разработка обсуждается в fbdevel. см. https://www.firebirdsql.org/en/devel-mailing-lists/ ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2018, 15:10 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
hvlad5746 слишком спорный, чтобы его взять и сделать, нужно обсуждение.Сходу, я не против создания\удаления\альтера юзерских индексов для системных таблиц. Также, возникает вопрос с бекапом\рестором, ибо они не будут включены в бекап - нужно менять код gbak ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2018, 15:12 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
19.02.2018 15:12, hvlad пишет: > Также, возникает вопрос с бекапом\рестором, ибо они не будут включены в бекап - > нужно менять код gbak а вродь собирались же, не? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2018, 15:14 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Мимопроходящий, ну там он меняется сейчас несколько с другой целью ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2018, 15:17 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
hvlad https://sourceforge.net/p/firebird/mailman/firebird-devel/ Спасибо, но там же вроде тоже самое (считай слепок), что и http://tracker.firebirdsql.org/secure/Dashboard.jspa? Или нет? hvladКроме того, очень сомнителен сам тестовый пример - там сотни вьюх на таблицы с сотнями полей. Т.е. оно показывает проблему, но её реальная актуальность вызывает большие сомнения. В реальных базах зависимостей еще больше, а объектов которые нужно удалять/создавать/пересоздавать под 1 тыс. Поэтому время затрачиваемое на развертывание баз доходит до ~ 6-8 часов. Т.е. для нас актуальность самая настоящая. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2018, 15:22 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
19.02.2018 15:17, Симонов Денис пишет: > ну там он меняется сейчас несколько с другой целью если склероз мне не изменяет то собирались писать/ресторить пользовательские триггеры на системные таблицы и т.п. примочки. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2018, 15:25 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
hvladСходу, я не против создания\удаления\альтера юзерских индексов для системных таблиц. Также, возникает вопрос с бекапом\рестором, ибо они не будут включены в бекап - нужно менять код gbak Зачем менять gbak - у него свой системный слой, за который он отвечает. Если на местах кто-то создал свои индексы в системных таблицах, то он сам за ними будет следить. В других СУБД аналогично. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2018, 15:26 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Симонов Денисконечно есть. Именно из-за коверкания системных таблиц больше всего воплей поломалась база, бекап не восстанавливается и т.д. Т.е снова, из-за заботы о бедных пользователях, которые могут прострелить себе ногу, нужно все запретить и не дать никакой альтернативы? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2018, 15:32 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
rashid.abzalovСпасибо, но там же вроде тоже самое (считай слепок), что и http://tracker.firebirdsql.org/secure/Dashboard.jspa? Или нет? нет конечно. В трекере делают предложения или рапортуют баги, но не обсуждают реализацию ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2018, 15:33 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
rashid.abzalov, >> Т.е снова, из-за заботы о бедных пользователях, которые могут прострелить себе ногу, нужно все запретить и не дать никакой альтернативы? да. Лично моё мнение, что расширение возможностей FB должно делаться штатными путями, а не хаками с боку. Если что-то работает медленно в поиске по метаданным, то это тоже должно быть исправлено в ядре и для всех ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2018, 15:38 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
rashid.abzalovhvlad https://sourceforge.net/p/firebird/mailman/firebird-devel/ Спасибо, но там же вроде тоже самое (считай слепок), что и http://tracker.firebirdsql.org/secure/Dashboard.jspa? Или нет?Нет. "Там" почтовый список рассылки, просто при создании нового тикета в трекере "туда" тоже шлётся письмо. Предлагаю найти соотв. письмо в fb-devel (про создание тикета 5746) и, ответив на него, начать обсуждение. rashid.abzalovhvladКроме того, очень сомнителен сам тестовый пример - там сотни вьюх на таблицы с сотнями полей. Т.е. оно показывает проблему, но её реальная актуальность вызывает большие сомнения. В реальных базах зависимостей еще больше, а объектов которые нужно удалять/создавать/пересоздавать под 1 тыс. Поэтому время затрачиваемое на развертывание баз доходит до ~ 6-8 часов. Т.е. для нас актуальность самая настоящая.Я имел в виду не вас конкретно, а более общий случай. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2018, 15:56 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Мимопроходящийесли склероз мне не изменяет то собирались писать/ресторить пользовательские триггеры на системные таблицы и т.п. примочки.Твой склероз знает что-то, чего не помнит мой ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2018, 15:56 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
19.02.2018 15:56, hvlad пишет: > Твой склероз знает что-то, чего не помнит мой больше склерозов! хороших и разных! (С) Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2018, 15:58 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
hvlad, Спасибо, понял. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2018, 16:00 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Коллеги, кто в теме - когда планируется выход беты 4? Хотя бы примерные сроки есть? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2018, 14:06 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
hvladПредлагаю найти соотв. письмо в fb-devel (про создание тикета 5746) и, ответив на него, начать обсуждение. В самом sourceforge нет педали ответа на это сообщение. Подскажите пожалуйста, вчера отправлял письмо с темой этого события по адресу почтовой группы fb-devel - оно не приходило? Если нет, то есть какой-то другой способ кроме ответа на изначальное письмо о создании события (оно не сохранилось)? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2018, 14:09 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
rashid.abzalovВ самом sourceforge нет педали ответа на это сообщение.Там можно только просматривать архив rashid.abzalovПодскажите пожалуйста, вчера отправлял письмо с темой этого события по адресу почтовой группы fb-devel - оно не приходило?Чтобы письма в fb-devel проходили, нужно сначала подписаться (это элементарная защита от спама) rashid.abzalovЕсли нет, то есть какой-то другой способ кроме ответа на изначальное письмо о создании события (оно не сохранилось)?Вот тут я не понял вопрос - что именно не сохранилось ? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2018, 14:12 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
rashid.abzalov, лично я читаю через NNTP news.gmane.org Настроил себе в Opera Mail. Пишу (редко) туда через него же ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2018, 14:15 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008, очень приблизительно https://www.firebirdsql.org/en/planning-board/ Там несколько раз даты сдвигались ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2018, 14:18 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
hvladТам можно только просматривать архив. Чтобы письма в fb-devel проходили, нужно сначала подписаться. Да, это все понятно - я там зарегистрировался и подписался. hvladВот тут я не понял вопрос - что именно не сохранилось ? У меня не сохранилось изначальное письмо, которое пришло после создания события в трекере. Вчера я отправил письмо по адресу группы с темой события из трекера, которое хотел обсудить, но нет уверенности, что оно разослалось участникам группы. Да и в списке писем на Mailing List его (отправленного вчера сообщения) нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2018, 14:20 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Симонов Денис, Как читать понятно, а писать-то как? Просто отправить произвольное письмо на адрес группы? Нет каких-то условий по наличию значения MessageID в письмах? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2018, 14:23 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
rashid.abzalov, ну да письма отправляются с моего почтового адреса. В почтовой проге настройки его SMTP сервера ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2018, 14:26 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Кажется понял - нужен толстый почтовый клиент, который вытянет последние письма, и уже там отвечать. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2018, 14:27 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
rashid.abzalov, необязательно, но с почтовым клиентом удобнее. Он темы группирует ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2018, 14:29 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Симонов ДенисSQL2008, очень приблизительно https://www.firebirdsql.org/en/planning-board/ Там несколько раз даты сдвигались Спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2018, 16:49 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Симонов Денисочень приблизительно https://www.firebirdsql.org/en/planning-board/ Полез читать, заинтересовало это - "Timeouts for statements / transactions / connections" Оно будет говоздем прибито в конфиге или можно будет управлять таймаутами из коннекта? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2018, 08:16 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
ExterisОно будет гвоздем прибито в конфиге или можно будет управлять таймаутами из коннекта? конфиг + переопределение на уровне сессии/запроса ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2018, 09:05 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Exteris, скачай снапшот 4.0. Там в папке doc полное описание данной функциональности README.statement_timeouts README.session_idle_timeouts ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2018, 09:30 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Симонов Денисскачай снапшот 4.0. Там в папке doc полное описание данной функциональностиМожно и не скачивая почитать https://github.com/FirebirdSQL/firebird/blob/master/doc/README.session_idle_timeouts https://github.com/FirebirdSQL/firebird/blob/master/doc/README.statement_timeouts ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2018, 11:51 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Спасибо, почитал. Есть пара уточняющих вопросов - 1. Если таймаут уровня запроса указан больше, чем таймаут уровня коннекта, то учитывается только таймаут запроса, даже если в коннекте указано меньшее значение? 2. Если произошел таймаут в запросе, то транзакция откатится с ошибкой? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2018, 07:51 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
"Как художник художника хочу спросить - вы рисовать умеете?" (с) Остап Берта-Мария Бендер бей. Коллеги! Есть у кого-нибудь ссылки на ресурсы по разработке движка FIREBIRD. Можно не по-русски. У меня есть некоторые материалы, в том числе видеолекции, но может быть ещё есть что-то полезное? Остались еще непонятные моменты. Информации много не бывает. Заранее спасибо. P.S. Мимопроходящий! О твоих кровожадных планах я уже в курсе. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2018, 08:13 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Exteris2. Если произошел таймаут в запросе, то транзакция откатится с ошибкой? запрос вернет ошибку. Что делать с транзакцией - решает клиент. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2018, 08:24 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Exteris1. Если таймаут уровня запроса указан больше, чем таймаут уровня коннекта, то учитывается только таймаут запроса, даже если в коннекте указано меньшее значение? Насколько я понял, пока запрос выполняется сессия ни разу не айдл doc- when user API call leaves engine, special idle timer assotiated with current connection is started - when user API call enters engine, idle timer is stopped Exteris2. Если произошел таймаут в запросе, то транзакция откатится с ошибкой? запрос или фетч да, транзакция нет ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2018, 08:43 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008> У меня есть некоторые материалы, в том числе видеолекции Видеолекции "по разработке движка FIREBIRD" ? Потница завтра. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2018, 10:08 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Exteris1. Если таймаут уровня запроса указан больше, чем таймаут уровня коннекта, то учитывается только таймаут запроса, даже если в коннекте указано меньшее значение?Да, но только если это значение не ослабляет значение заданное админом в конфиге. README.statement_timeouts- effective value of timeout is evaluated every time statement starts execution (or cursor is opened) as: - if not set at statement level, look at connection level - if not set at connection level, look at database level - in any case can't be greater than value set at database level i.e. value of statement timeout could be overriden by application developer at lower scope but it can't relax limit set by DBA (in config) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2018, 13:56 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Дегтярев ЕвгенийExteris1. Если таймаут уровня запроса указан больше, чем таймаут уровня коннекта, то учитывается только таймаут запроса, даже если в коннекте указано меньшее значение? Насколько я понял, пока запрос выполняется сессия ни разу не айдлНе нужно путать таймаут выполнения запроса (statement timeout) и таймаут простоя сессии (idle session timeout) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2018, 13:57 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
rashid.abzalov Зачем менять gbak - у него свой системный слой, за который он отвечает. Если на местах кто-то создал свои индексы в системных таблицах, то он сам за ними будет следить. В других СУБД аналогично. Вот с этого места поподробнее... Правильно ли я понял, что пользовательские индексы на системные таблицы при бекапе / ресторе не сохраняются / не восстанавливаются? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2018, 15:37 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008, правильно ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2018, 15:41 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008Правильно ли я понял, что пользовательские индексы на системные таблицы при бэкапе бэкапятся юзерские метаданные. Любые обвесы системных таблиц сюда не относятся. При ресторе сервер создает новую пустую базу , и только потом туда наливает пользовательские метаданные. Соответственно, "юзерским индексам на системные таблицы" взяться неоткуда. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2018, 16:55 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
kdv ... сервер создает новую пустую базу ... Т.е. пустая база создается с "вшитыми" в неё объектами, как-то системными таблицами, индексами, контсрейнами и т.п.? А что "наваял" пользователь остается на его совести? Это понятно. P.S. Никогда не приходилось модифицировать системные таблицы. Это вообще в FIREBIRD практикуется? Есть от этого какая-то выгода? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2018, 17:18 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008, это практиковалось раньше от бедности и служило основной причиной так называемых "невосстановимых" бекапов. В 3.0 практически всё можно сделать через DDL операторы. Для модификации системных таблиц осталась возможность только удалять исходные тексты ХП/функций/триггеров/пакетов. И добавление перечисляемых значений в RDB$TYPES ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2018, 17:22 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Симонов Денисэто практиковалось раньше от бедности А ещё раньше, до появления SQL вообще и DDL в частности, это был единственный способ что-то в базе создать. И с тех пор оно тянется в качестве legacy. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2018, 17:52 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, не очень понял тебя. Я говорил о примерах когда нельзя было изменить признак NULL/NOT NULL (до 3.0) и ещё раньше DEFAULT. Разве DDL не является частью SQL? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2018, 17:57 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Симонов ДенисРазве DDL не является частью SQL? Именно. И появилось оно намного, намного позже системных таблиц. А до тех пор все объекты создавались с помощью их прямой модификации из GDML. И до сих пор так создаются "унутре", откуда и проистекает порядочное количество проблем типа всем известной невозможности создать таблицу и работать с ней в одной транзакции. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2018, 18:02 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Коллеги, поделитесь, пожалуйста, документом с описанием BLR (binary language representation) Все ссылаются на http://www.ibphoenix.com/downloads/blr_syntax.pdf , но ссылка битая. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2018, 20:09 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008, оно никому не надо. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2018, 21:01 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
kdvSQL2008, оно никому не надо. Что осознать, что вещь не нужна, её нужно потрогать / посмотреть. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2018, 22:20 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008, BLR - это байт-код, исполняемый сервером. При prepare и сохранении процедур, триггеров и view, sql/psql превращается в байт-код. И затем выполняется. Посмотреть его можно элементарно, в ISQL, и в IBE (через просмотр например rdb$procedure_blr в view as blr), но пользы от этого практически никакой. Конструировать его самому нельзя, он меняется со временем, от версии к версии, и т.д. Например Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
выглядит как Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58.
полегчало? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2018, 22:40 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
kdv полегчало? Странный вы человек... Приведу аналогию. Вас спрашивают - "У вас есть телефонный справочник?" Вы: - "Он никому не нужен" - "Я посмотрю и сам решу нужен или нет" Вы: - "Ну вот, к примеру, Иванов Иван Иванович, его телефон 123-45-67! Полегчало?" Какой-то разговор немого с глухим, ей богу! И мне нужно соответствие Что-то типа этого: BLRarg0arg1arg2arg3Descriptionblr_version5Версия Blrblr_beginНачало описания вызова blr_message 0 20create or alter procedure blr_short 0 blr_short 0 blr_message 1 30 blr_text2 00 50returns (PROJ_ID char(5)) blr_short 0 blr_short 0 blr_receive 0 ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2018, 11:48 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008blr_message ... create or alter procedure бред собачий. create or alter нигде не сохраняется. В blr хранится только тело процедуры ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2018, 11:56 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008Коллеги, поделитесь, пожалуйста, документом с описанием BLR (binary language representation) Все ссылаются на http://www.ibphoenix.com/downloads/blr_syntax.pdf, но ссылка битая. http://www.ibphoenix.com/downloads/isc_docs.zip ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2018, 12:37 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Симонов ДенисSQL2008blr_message ... create or alter procedure бред собачий. create or alter нигде не сохраняется. В blr хранится только тело процедуры Я привел просто пример! ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2018, 12:55 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
hvladSQL2008Коллеги, поделитесь, пожалуйста, документом с описанием BLR (binary language representation) Все ссылаются на http://www.ibphoenix.com/downloads/blr_syntax.pdf]http://www.ibphoenix.com/downloads/blr_syntax.pdf] http://www.ibphoenix.com/downloads/blr_syntax.pdf, но ссылка битая. http://www.ibphoenix.com/downloads/isc_docs.zip Огромное спасибо!!! ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2018, 12:55 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008Огромное спасибо!!!Не уверен :) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2018, 13:17 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008- "Я посмотрю и сам решу нужен или нет" Вы: - "Ну вот, к примеру, Иванов Иван Иванович, его телефон 123-45-67! Полегчало?" Какой-то разговор немого с глухим, ей богу! BLR - это не телефонный справочник. А если пользоваться этой аналогией - внутренняя схема коммутации проводов на АТС. Толку вам от нее абсолютно никакой, потому что вы все равно будете продолжать звонить со своего телефона на конечный телефон. А если вы попытаетесь перекоммутировать эти самые провода, то у вас фигня получится, даже если есть их описание. Вы хотите написать декомпилятор? Так для этого можно было взять исходники ФБ, и попробовать типа развернуть компиляцию в BLR в обратную сторону. Но такие герои уже были, и все это ничем не кончилось. А больше ни для чего другого "описание BLR" не годится. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2018, 14:49 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
kdvА больше ни для чего другого "описание BLR" не годится. К сожалению, оно ещё нужно для того, чтобы что-то добавить в птичьи потроха, поскольку преобразование SQL->executable по-прежнему идёт через промежуточный BLR. И новый SQL требует порождать для себя BLR ручками в классах типа XXXXNode. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2018, 14:54 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov К сожалению, оно ещё нужно для того, чтобы что-то добавить в птичьи потроха, поскольку преобразование SQL->executable по-прежнему идёт через промежуточный BLR. И новый SQL требует порождать для себя BLR ручками в классах типа XXXXNode. Ровно для этого и нужно! Хочу добавить свои объекты и их обработку в движок. Но чтобы это корректно и правильно вписывалось в существующую архитектуру. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2018, 15:44 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008, что за объекты, если не секрет? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2018, 15:45 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008Хочу добавить свои объекты и их обработку в движок. Ты для начала case-preserved identifiers запили. По твоим словам это быстро. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2018, 16:36 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovSQL2008Хочу добавить свои объекты и их обработку в движок. Ты для начала case-preserved identifiers запили. По твоим словам это быстро. Это мне непонятно о чем речь. Разве я где-то хвастался, что могу что-то быстро сделать? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2018, 18:21 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008Это мне непонятно о чем речь. Разве я где-то хвастался, что могу что-то быстро сделать? 21188801 Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2018, 18:30 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Симонов ДенисSQL2008, что за объекты, если не секрет? Пока попробовал добавить объект JOB по аналогии с PACKAGE, но что-то не срастается. Вот пытаюсь разобраться почему при компилляции пишет что в parse.h нет такого объекта, если в parse.y, fields.h,ids.h,metd.epp, relations.h, keywords.h все прописал аналогично (ну изменив наименjвание конечно) PACKAGE. Добавил соответственнно новый JobNodes.epp (аналогично PackageNodes.epp) и включил его обработку в батник. Но это пока не вопрос на форуме. Мне нужно все самому перепроверить, думаю, что что-то где-то упустил. Дело-то новое :) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2018, 18:31 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovSQL2008Это мне непонятно о чем речь. Разве я где-то хвастался, что могу что-то быстро сделать? 21188801 И правда было! Так вопрос лишь в этом? А где деньги, ЗИН? Про энтузиазм я ничего не говорил ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2018, 18:32 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008 Добавил соответственнно новый JobNodes.epp (аналогично PackageNodes.epp) и включил его обработку в батник. Но это пока не вопрос на форуме. Мне нужно все самому перепроверить, думаю, что что-то где-то упустил. Дело-то новое :) Разобрался! Забыл включить Parser.h#include "../dsql/JobNodes.h" ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2018, 22:31 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Привет всем! Что может служить причиной сообщения при сборке сервера SQL> Assertion (absVal(distance) < 128 * 1024) failure: ..\..\..\src\common\classes\alloc.cpp 2613 Вот место, откуда это пришло Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
из сообщения понятно, что разница между указателями thisLocation и myStack не должна превышать 128 кб. Вопрос - в чем может быть причина? Что смотреть в первую очередь? Доп. информация - версия 3.0.3, добавлено много функционала, но все компилируется без ошибок. Только на этапе сборки, при обработке батника создания сообщений ломается на этом ассерте. P.S. Убедительная просьба - держаться в рамках политеса и правил поведения джентльменов в общественных местах. Работать по алгоритму Код: plaintext 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2018, 14:17 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008в чем может быть причина? слишком жирные стековые переменные. Либо неправильное использование конструкторов, опционально требующих пул. SQL2008Что смотреть в первую очередь?Стек вызовов, есс-но ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2018, 14:19 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
hvladSQL2008в чем может быть причина? слишком жирные стековые переменные. Либо неправильное использование конструкторов, опционально требующих пул. SQL2008Что смотреть в первую очередь?Стек вызовов, есс-но Спасибо! Все перепроверю. Скорее всего второе. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2018, 14:21 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Доброй всем пятницы. Снова возник вопрос, на который очень хотелось бы получить ответ. При сборке проекта, на одном из этапов вызывается препроцессор gpre_boot.exe, на вход которому подается файл .epp. Если говорить конкретно, то met.epp. В тексте файла я вижу строку Код: sql 1.
которая после препроцессинга в файле met.cpp превращается в описание структуры blr. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
Но не могу взять в толк, как это происходит. Хотя бы подскажите где поискать ответ? Погуглил полдня, но кроме ссылок на описание препроцессора GPRE.EXE ничего не нашел. В описании тоже нет ничего подобного. Что все таки означает строка Код: sql 1.
заранее спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2018, 15:32 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008Но не могу взять в толк, как это происходит. Хотя бы подскажите где поискать ответ? Никак. Структура не имеет отношения к данной строчке и порождается из другого кода. В данном конкретном случае - из "FOR(REQUEST_HANDLE request) DAT IN RDB$DATABASE". Искать ответ в Embedded SQL Guide. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2018, 15:38 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008При сборке проекта, на одном из этапов вызывается препроцессор gpre_boot.exeДобавлю, что gpre_boot - это специальная "облегчённая" версия препроцессора, которая использует известные метаданные системных объектов. Она используется только для первой фазы boot_build, когда полноценный движок ещё не собран и запросы выполнять некому. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2018, 15:42 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Было смутное предположение, что это компилится из Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Смутило лишь то обстоятельство, что порядок расположения этих блоков не совпадает. Но видимо у препроцессора иной метод обработки входящего текста. Спасибо, теперь мне понятно. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2018, 15:52 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Рискну предположить, что все это берется из ..\gen\dbs\METADATA.FDB ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2018, 15:55 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008Было смутное предположение, что это компилится изПосмотри в cpp файле - где используется jrd_0 - станет понятнее ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2018, 16:13 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Ну вот конкретный пример MET.EPP Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9.
MET.CPP Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24.
Препроцессор вставляет сгенерированный код ровно в то место, в котором была строка, закомментировав её. Код: plaintext 1.
Логика мне подсказывает, что именно вследствие обработки этой строки там и появляется этот код. Опять-таки и вам я не верить не могу... Как-то непонятно мне. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2018, 16:50 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
SQL2008, Препроцессор должен где-то разместить "свои" объявления ? Почему не сделать это в том месте, где он нашёл первую свою директиву ? Проблема-то в чём ? Не нашёл в коде использования jrd_0 ? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2018, 16:58 |
|
Разработчик ядра FIREBIRD: первые шаги
|
|||
---|---|---|---|
#18+
Насчет декларации структур теперь стало понятно, что препроцессор просто их впихнул в начало файла. Почему-то jrd_0 оказался самым последним в коде. Он обрабатывает их в обратной последовательности? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2018, 17:06 |
|
|
start [/forum/topic.php?all=1&fid=40&tid=1561170]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
45ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
107ms |
get tp. blocked users: |
1ms |
others: | 309ms |
total: | 501ms |
0 / 0 |