powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
40 сообщений из 40, показаны все 2 страниц
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664440
Добрый день

Firebird 3.0.3 - 3.0.4 SS под Linux падает на нашей UDF при одновременном обращении к ней из нескольких коннектов (не важно какая функция из трех вызывается).

UDF собрана на FreePascal 3.0.4.
Проблема проявляется только на Linux и только в режиме SS. Ранее под Linux использовали только режим CS и там проблема не возникала, сейчас не может из за этого перейти на SS.

Для того что бы разобраться сделали простой тестовый проект.
Три функции, во всех попробовали разный способ вернуть строковый параметр.


library tbudf;

uses
SysUtils, Math,
tbutil in 'tbutil.pas',
ib_util in 'ib_util.pas',
ibutil in 'ibutil.pas',
consts in 'consts.pas';


function udf_CopyMalloc(Str: PChar; var Index, Count: integer): PChar; cdecl; export;
begin
Result := ib_util_malloc(Length(Str) + 1);
StrPCopy(Result, Copy(Str, Index, Count));
End;


function udf_Copy(Str: PChar; var Index, Count: integer): PChar; cdecl; export;
begin
Result := Str;
StrPCopy(Str, Copy(Str, Index, Count));
end;

procedure udf_StrOfChar(Ret, Ch: PChar; var Count: integer); cdecl; export;
begin
if (Ch = nil) or (Ch^ = #0) or (Count <= 0) then
Ret^ := #0
else
StrPCopy(Ret, TBStrOfChar(Ch^, Count));
end;


exports
udf_CopyMalloc,
udf_StrOfChar,
udf_Copy;

begin
isMultithread := True;
end.



Вот SQL для регистрации

declare external function udf_CopyMalloc
cstring(254), integer, integer
returns cstring(254) Free_it

entry_point 'udf_CopyMalloc' module_name 'tbudf';


declare external function udf_Copy
cstring(254), integer, integer
returns cstring(254)
entry_point 'udf_Copy' module_name 'tbudf';

declare external function udf_StrOfChar
cstring(254), cstring(254),integer
returns parameter 1
entry_point 'udf_StrOfChar' module_name 'tbudf';


Если функции вызываются в нескольких коннектах - сервер падает.

Иногда успевает записать в лог ошибку
The user defined function: UDF_COPYMALLOC
referencing entrypoint: udf_CopyMalloc
in module: tbudf
caused the fatal exception: Segmentation Fault.
The code attempted to access memory
without privilege to do so.
This exception will cause the Firebird server
to terminate abnormally.

Иногда нет

/opt/firebird/bin/fbguard: /opt/firebird/bin/firebird terminated abnormally (-1)
fbserver2 Fri Jun 22 20:19:28 2018
/opt/firebird/bin/fbguard: guardian starting /opt/firebird/bin/firebird
fbserver2 Fri Jun 22 20:33:50 2018
/opt/firebird/bin/fbguard: /opt/firebird/bin/firebird terminated abnormally (-1)
fbserver2 Fri Jun 22 20:33:50 2018
/opt/firebird/bin/fbguard: guardian starting


Во вложении спроект и откомпилированная на CentOS-7 udf
Как правильно писать udf для FB 3
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664461
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вадим Мещеряковне важно какая функция из трех вызывается

И это понятно: ни одна из них неработоспособна в принципе.
В образовательных целях попробуйте докопаться до ошибок сами:
http://ibphoenix.com/resources/documents/search/doc_36
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664464
Dimitry Sibiryakovне важно какая функция из трех вызывается


Что с ними не так? Хорошие такие функции.
Если откомпилировать под Windows и вызывать в нескольких потоках из тестовой программы, все ОК
И Firebird 3.0.3 SS для Windows работает с какой то из них. Две других результат попытки решения этой задачи :)
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664465
Dimitry SibiryakovВ образовательных целях попробуйте докопаться до ошибок сами:
http://ibphoenix.com/resources/documents/search/doc_36


Спасибо за ваш ответ.
Но по указанной вами ссылке нет информации о том как нужно работать со строками в Pascal что бы Firebird под Linux не падал.

P.S. Этот пост - просьба помочь, после того как сами не смогли решить проблему.
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664466
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вадим МещеряковЧто с ними не так?

Я же говорю: трассируйте, повышайте квалификацию и знание потрохов FCL.

Вадим МещеряковЕсли откомпилировать под Windows и вызывать в нескольких потоках из
тестовой программы, все ОК
Дай угадаю: и сама библиотека и "тестовая программа" компилируются Дельфями?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664467
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вадим МещеряковНо по указанной вами ссылке нет информации о том как нужно работать со строками в Pascal
что бы Firebird под Linux не падал.

Зато там есть информация как получить и проанализировать core dump после падения.

Вадим МещеряковP.S. Этот пост - просьба помочь, после того как сами не смогли
решить проблему.
А что вы уже делали чтобы её решить?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664469
Dimitry SibiryakovЯ же говорю: трассируйте, повышайте квалификацию и знание потрохов FCL.



Я взял на себя задачу задать вопрос здесь. Так как тот кому я это поручал сказал, что на русскоязычных форумах только обольют говном а кому это нравится? Он взял на себя задачу в трекер Firebird написать а я сюда.
Если вы не способны помочь - зачем тратить тут время? Собственное эго тееребите?
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664485
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вадим МещеряковОн взял на себя задачу в трекер Firebird написать а я сюда.

Падает криво написанная UDF, скомпилированная глючным компилятором, а писать об этом,
конечно же, нужно в трекер Firebird. Ню-ню...

Вадим МещеряковЕсли вы не способны помочь - зачем тратить тут время?

Тлеет надежда, что вы начнёте-таки использовать отладчик и поймёте почему PChar никогда
нельзя пихать туда, где ожидается string. И в чём разница между PChar, PAnsiChar,
PWideChar и PUtf8Char. И что StrPCopy - зло. Ну и ещё пару мелочей типа того, что доверять
нельзя никому и первое, что следует сделать - убедиться, что функция получает именно те
значения, которые ей передали.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664498
Dimitry SibiryakovТлеет надежда, что вы начнёте-таки использовать отладчик и поймёте почему PChar никогда
нельзя пихать туда, где ожидается string. И в чём разница между PChar, PAnsiChar,

Не нужно поднимать собственную самоценку за мой счет.
Если есть - то дайте пример исходников, написанных правильным образом. Если знаете как сделать - покажите код. Если видели толковую статью, что я не нашел - дайте ссылку.
Если нет ни того ни другого, то просто отойдите в сторонку, уступите место тому специалисту кто знает и может помочь.
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664499
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вадим МещеряковЕсли знаете как сделать - покажите код.

Первые две функции следует заменить на встроенный SUBSTRING.
Третью - на не менее встроенный RPAD.
RTFM Firebird Language Reference.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664500
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вадим Мещеряков,

под тройку лучше писать UDR. Это конечно сложнее зато больше возможностей, да и в 4.0 UDF уже объявлены deprecated.
Рискну предположить что первые две функции на фиг не сдались ибо есть аналоги на встроенных функциях.
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664501
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вадим МещеряковЕсли видели толковую статью, что я не нашел - дайте ссылку.

http://www.ibphoenix.com/files/Writing-External-Functions.pdf
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664502
Симонов ДенисРискну предположить что первые две функции на фиг не сдались ибо есть аналоги на встроенных функциях.

Денис, вы совершенно правы. Эти функции просто попытка разобраться в проблеме и понять как вернуть строку в результат что бы сервер не падал. Их код основан на примерах с ibase.ru.
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664509
Dimitry Sibiryakov,

Эти функции просто попытка разобраться в проблеме и понять как вернуть строку в результат что бы сервер не падал. Их код основан на примерах с ibase.ru.

А нужны такие функции как FormatDateTime, FormatFloat и еще несколько специфических.
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664511
Симонов Денис http://www.ibphoenix.com/files/Writing-External-Functions.pdf

Денис, спасибо! Хорошая статья. Завтра попробуем
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664513
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вадим Мещеряков,

я писал и проверял пример safeudf (который на ibase.ru) на Дельфи. Что там делает FPC - хрен его знает.
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664514
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вадим Мещеряков,

Дмитрий уже намекнул про PChar. Этот тип очень не надёжен в том смысле что в зависимости от версии компилятора там может бять PAnsiChar или PWideChar.
Ну и внимательно читаем описание StrPCopy

Вадим Мещеряков Ранее под Linux использовали только режим CS и там проблема не возникала

возникала просто её не всегда можно заметить потому что пользователи отваливались по одному. А на SS падают сразу все
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664516
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvЧто там делает FPC - хрен его знает.

Обычно он делает хрень. Я не удивлюсь если он игнорирует IsMultithreaded или cdecl,
освобождает временную переменную раньше, чем следовало бы, возвращает рандомный мусор по
отрицательному смещению из Length или не пишет терминирующий нуль в StrPCopy. Туева хуча
граблей заботливо разложена в нём с помощью compiler magic для таких вот... программистов,
не умеющих пользоваться отладчиком.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664527
Dimitry Sibiryakov для таких вот... программистов, не умеющих пользоваться отладчиком.


И опять вы в меня говном бросили. При этом ни из одного вашего комментария к моему вопросу ни крошки ни выжать пользы. Зачем вы все это пишете? В чем прикол? Что у вас там чешется?

Обратите внимание на точные и полезные ответы Дмитрия Кузьменко и Дениса Симонова. Именно так и создают сообщество, сообщество которое может помочь и в которое не бояться заходить новые участники.
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664530
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вадим МещеряковПри этом ни из одного вашего комментария к моему вопросу ни крошки ни выжать пользыПри этом он первый (и единственный), кто намекнул Вам о корнях проблемы. О String и PChar, о том, что находится в fpc-шном String...
Т.е. о сути проблемы вопроса.

P.S. То, что где-то иногда работает - везение.
Совет: попробуйте реализовать эти [элементарные] функции "вручную". И проблема всплывет, либо решится сама.
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664533
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovkdvЧто там делает FPC - хрен его знает.

Обычно он делает хрень. Я не удивлюсь если он игнорирует IsMultithreaded или cdecl,
освобождает временную переменную раньше, чем следовало бы, возвращает рандомный мусор по
отрицательному смещению из Length или не пишет терминирующий нуль в StrPCopy. Туева хуча
граблей заботливо разложена в нём с помощью compiler magic для таких вот... программистов,
не умеющих пользоваться отладчиком.
ну у тебя как будто климакс наступил.... - не докапывайся зря до нуббов
Вадим МещеряковDimitry Sibiryakov для таких вот... программистов, не умеющих пользоваться отладчиком.


И опять вы в меня говном бросили. При этом ни из одного вашего комментария к моему вопросу ни крошки ни выжать пользы. Зачем вы все это пишете? В чем прикол? Что у вас там чешется?

Обратите внимание на точные и полезные ответы Дмитрия Кузьменко и Дениса Симонова. Именно так и создают сообщество, сообщество которое может помочь и в которое не бояться заходить новые участники.чтобы было меньше граблей при скрещивании (ну и пробелы в опыте) - используй компилятор вызывающей системы, т.е. твоей версии ФБ

для ЮДФ много знаний написать на С не нужно - а седые волосы в редких солнцу местах можно бы поэкономить
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664567
Siemarglчтобы было меньше граблей при скрещивании (ну и пробелы в опыте) - используй компилятор вызывающей системы, т.е. твоей версии ФБ

Спасибо за совет.
Так и сделаем, перепишем udf под C. Как узнать каким компилятором собран Firebird под linux x64?
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664582
kdvя писал и проверял пример safeudf (который на ibase.ru) на Дельфи. Что там делает FPC - хрен его знает.
Я собрал вашу safeudf на FPC и протестировал на Firebird SS с Win 64, Win32, Linux 64 Все работает отлично!
Наши функции работают только под Win 32 и Win 64.
Вчера под подозрение попала StrPCopy (не случайно в тесте наши три функции используют именно её) но проблема проявлялась только в SS Linux так что стали искать проблему в реализации многопоточности приложения FPC под Linux (Про многопоточночть вы нам рассказали ранее, когда мы делали dll для Win 64 на Delphi)

Нашел в статье про разработку многопоточных приложений на FreePascal что нужно делать так

uses
// Вот оно решение !!!!!!
cthreads,
//
SysUtils, Math,
tbutil in 'tbutil.pas',
ib_util in 'ib_util.pas',
ibutil in 'ibutil.pas',
consts in 'consts.pas'

Все работает! Из нескольких пользовательских коннектов одновременно вызываю наши функции в SQL запросах с полным переборам записей из больших таблиц (3 000 000 записей).
Разумеется, это не меняет принятого нами решения переписать нашу UDF на C.
Прошу вас в вашу полезную статью, о том как правильно писать UDF, добавить информацию о StrPCopy и uses cthreads. Может комутто это съэкономит время.
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664654
Провели дополнительные эксперименты
StrPCopy - не виновата. Проблема была только в многопоточности FPC.

Если в простой код код SafeUdf добавить создание и уничтожение PChar то сервер будет падать.
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
function function3(P1: PChar): PChar; cdecl; export;
var
  P: PChar;
begin
  P := StrNew('112');
  StrDispose(P);

  P1:=StrCopy(P1, P1);
  Result:=P1;
 end;



Проблему решает только добавление в uses cthreads
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664664
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вадим МещеряковПроблему решает только добавление в uses cthreads

Как я и сказал выше: FPC игнорирует IsMultithreaded. Вы уже пошли и написали это ему в трекер?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664673
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вадим Мещеряковпростой код код SafeUdf

kdv , этот код действительно есть в Safe Udf? Серверу будет очень весело,
когда он захочет использовать результат уже после того, как освободил входящие параметры.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664694
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakovэтот код действительно есть в SafeUdf?
какой именно "этот" код? Мне кажется, ты перепутал эксперименты Мещерякова.
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664703
Dimitry SibiryakovКак я и сказал выше: FPC игнорирует IsMultithreaded. Вы уже пошли и написали это ему в трекер?
Это не баг а фича. в документации на freepascal.org (там я и нашел решение проблемы) написано:
You don´t need any special unit for this to work with Windows. However with Linux, Mac OS X and FreeBSD, you need the cthreads unit and it must be the first used unit of the project (the program source, usually the .lpr file)!
вот тут http://wiki.freepascal.org/Multithreaded_Application_Tutorial%5D]http://wiki.freepascal.org/Multithreaded_Application_Tutorial]
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664705
Dimitry Sibiryakov этот код действительно есть в Safe Udf? Серверу будет очень весело,
когда он захочет использовать результат уже после того, как освободил входящие параметры.


Вот код из SafeUdf.dpr

{ DECLARE EXTERNAL FUNCTION function3
CSTRING(80)
RETURNS CSTRING(80)
ENTRY_POINT 'function3' MODULE_NAME 'safeudf' }

function function3(P1: PChar): PChar; cdecl; export;
begin
P1:=StrCopy(P1, P1);
Result:=P1;
end;

Онт работает везде и всегда
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664706
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вадим МещеряковcthreadsСтранное название для модуля, который наверняка меняет менеджер памяти. Хотя я не смотрел. Но почему это не по умолчанию для невинды - загадочно.
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664713
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvкакой именно "этот" код?

Приведённый чуть ниже твоего поста. Возвращающий из функции указатель, полученный на вход.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664718
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вадим МещеряковЭто не баг а фича.

Кривой костыль это. Установки IsMultithreaded должно быть достаточно для того, чтобы
штатный менеджер памяти работал с учётом использования его из разных потоков. Но аффтары
FPC, как обычно, ниасилили.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664724
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

Дима каждый инструмент диктует свои правила. В каждом есть свой набор костылей. Если какому-то инструменту нужны костыли это не значит что им нельзя пользоваться, надо всего лишь знать о наличии оных.
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664729
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

1. я не помню, зачем там вот это P1:=StrCopy(P1, P1); в функции3.
2. "Возвращающий из функции указатель, полученный на вход."
насколько я помню, аллокируется ФБ именно входной параметр (иначе никак), а выходной - никак не аллокируется (кроме случая free_it, которое является явным указанием ФБ что выходной параметр надо деаллокировать). Поэтому передать указатель входного параметра как выходной - получается норм. ФБ уничтожит только входной параметр. А значение будет получено до его уничтожения (по идее).
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664735
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зачем фантазировать про менеджеры памяти и прочее, если есть явное описание

https://www.freepascal.org/docs-html/rtl/cthreads/index.html
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664737
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов ДенисДима каждый инструмент диктует свои правила.

Я не против, но надо же либо трусы надеть, либо крестик снять. То бишь отдельные менеджеры
памяти на каждый чих и платформу - ок, но тогда неработающую IsMultithreaded надо на
соответствующих платформах либо выкосить, либо объявлять только в тех ММ, которые умеют ею
пользоваться. А создавать иллюзию работы с последующим segfault - это всё же баг.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664762
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladЗачем фантазировать про менеджеры памяти и прочее, если есть явное описание

https://www.freepascal.org/docs-html/rtl/cthreads/index.html Да, но в этом описании не сказано, что если 2-м юнитом проекта не указать менеджер cmem, то тоже проблемы segfault бывают. "Так свидетельствуют люди"...
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664788
__Avenger__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не знаю у меня все работает
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39664792
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRockпроблемы segfault бывают. "Так свидетельствуют люди"...Потому что компилировать нужно в полнолуние.
...
Рейтинг: 0 / 0
Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
    #39665064
WildSery
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вадим МещеряковИменно так и создают сообщество, сообщество которое может помочь и в которое не бояться заходить новые участники.Ты заходи, не бойся :)
Главное, не путать форум с техподдержкой.

У нас тут, в зависимости от настроения, чаще пытаются всучить чертёж удочки, чем рыбу. Не воспринимай это как попытку тебе нахамить или потешить чьё-то эго.
(Обычно оно настолько большое, что такими мелочами его не потешить )
...
Рейтинг: 0 / 0
40 сообщений из 40, показаны все 2 страниц
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Firebird 3.0.3 - 3.0.4 SS Linux и udf на FreePascal со строковыми параметрами
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]