On-line: гостей 0. Всего: 0 [подробнее..]
АвторСообщение
администратор




Пост N: 2728
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 12.03.13 11:27. Заголовок: Leto DB Server (продолжение 10) (продолжение)


Продолжаем тут

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 191 , стр: 1 2 3 4 5 6 7 8 9 10 All [только новые]


moderator


Пост N: 905
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 09.04.15 09:32. Заголовок: nbatocanin пишет: Е..


nbatocanin пишет:

 цитата:
Есть ли где описание команды в дебуг режиме?


Нет. Посмотреть можно только по исходникам - source/client/letocl.c

Спасибо: 0 
ПрофильЦитата Ответить
moderator


Пост N: 908
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 10.04.15 10:22. Заголовок: Я немного изменил си..


Я немного изменил систему нумерации версий LetoDb - добавил туда номер сборки ( build ), чтобы можно было, не меняя все время основной номер версии, выкладывать на Sourceforge обновленные пакеты.
Выложен letodb-2.15-b2.src.zip

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 4705
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 10.04.15 10:24. Заголовок: alkresin Раздел соз..


alkresin
Раздел создавать по LetoDB Server ?
Название такое и будет LetoDB Server ?


Спасибо: 0 
ПрофильЦитата Ответить
moderator


Пост N: 910
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 10.04.15 11:56. Заголовок: Я бы назвал "Let..


Я бы назвал "LetoDB, HbNetio и пр."
"пр." - на всякий случай :)
И в разделе GUI подзаголовок, наверное, надо переименовать "GUI в [x]Harbour"

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 13
Зарегистрирован: 06.12.14
ссылка на сообщение  Отправлено: 12.04.15 00:17. Заголовок: Пользовательские переменные в пользовательских функциях


Пользовательские переменные в пользовательских функциях не работают.
Попытка создать переменную приводит к падению сервера.
При этом без разницы указан nUserStru или просто NIL.

letoudf.prg

 цитата:
#include "rddleto.ch"

Function VarTest( nUserStru )

LETO_VARSET( nUserStru, 'TestGroupName', 'TestVarName', 'TestVarContent', LETO_VCREAT )
//LETO_VARSET( NIL, 'TestGroupName', 'TestVarName', 'TestVarContent', LETO_VCREAT )

Return .T.




testvars.prg

 цитата:
#include "rddleto.ch"
#define LETOSERVER "//127.0.0.1:2812/"

Procedure Main(a)
local aa
REQUEST LETO
RDDSETDEFAULT("LETO")

leto_Connect( LETOSERVER )

? "aa:=LETO_UDF( LETOSERVER+'VarTest' )", aa:=LETO_UDF( LETOSERVER+'VarTest' )
? 'valtype( aa )', valtype( aa )

return
? 'hb_valtoexp( aa )', hb_valtoexp( aa )

return
? 'hb_valtoexp(LETO_VARGETLIST())', hb_valtoexp(LETO_VARGETLIST())

return
? aa:=leto_vargetlist()

return
? hb_valtoexp(leto_vargetlist())

return



Возможно это как-то победить?

Спасибо: 0 
ПрофильЦитата Ответить
moderator


Пост N: 917
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 14.04.15 12:28. Заголовок: finder пишет: Возмо..


finder пишет:

 цитата:
Возможно это как-то победить?


Победил.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 14
Зарегистрирован: 06.12.14
ссылка на сообщение  Отправлено: 14.04.15 15:07. Заголовок: УРААА!!!


УРААА!!! Заработало!
И похоже работает даже из UDF_Init
Буду тестировать в расширенном варианте.

Огромное Вам, Александр, человеческое СПАСИБО!

Небольшое уточнение, это уже будет окончательно без откатов и насовсем?


Спасибо: 0 
ПрофильЦитата Ответить
moderator


Пост N: 918
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 14.04.15 16:27. Заголовок: finder пишет: Небол..


finder пишет:

 цитата:
Небольшое уточнение, это уже будет окончательно без откатов


Конечно. Там были реальные ошибки, зачем откатывать.

 цитата:
и насовсем?


До тех пор, пока новых ошибок не наплодим

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 15
Зарегистрирован: 06.12.14
ссылка на сообщение  Отправлено: 14.04.15 23:45. Заголовок: Эта команда leto_var..


Эта команда leto_vardel( 'GroupNone', '' ) - удаляет группу со всеми переменными? Мусор оставлять за собой такое удаление не будет?

При попытке удалить несуществующую группу переменных - сервер падает, значит ли это, что надо проверять ее наличие со стороны клиента перед удалением?
При удалении отсутствующих переменных внутри группы такого не замечено.



Спасибо: 0 
ПрофильЦитата Ответить
moderator


Пост N: 920
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 15.04.15 09:39. Заголовок: finder пишет: Эта к..


finder пишет:

 цитата:
Эта команда leto_vardel( 'GroupNone', '' ) - удаляет группу со всеми переменными?


Да.

 цитата:
При попытке удалить несуществующую группу переменных - сервер падает


Пример на стол. Мне не удалось воспроизвести падение сервера при удалении несуществующей группы.

Спасибо: 0 
ПрофильЦитата Ответить
moderator


Пост N: 921
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 15.04.15 09:49. Заголовок: Впрочем, я сейчас ис..


Впрочем, я сейчас исправил возможный источник проблемы, но у меня и так почему-то работало.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 572
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 15.04.15 10:48. Заголовок: alkresin подключени..


alkresin
подключение триггера в letodb не работает (в 2-х поточной версии все Ok):
letodb.ini :
...
Trigger = my_Trigger
...
 
FUNCTION my_Trigger( nEvent, nArea, nPos, xTrigVal )

dbInfo(DBI_TRIGGER, .F.)
WrLog( Procname()+" "+ hb_valtoexp({ nEvent, nArea, nPos, xTrigVal }) )
dbInfo(DBI_TRIGGER, .T.)

RETURN .T.

включение этой функции в letodb.hrb или letodb.prg не срабатывает ни разу при операциях над таблицей
это можно побороть ?


Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 4732
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 15.04.15 10:55. Заголовок: SergKis А каков фун..


SergKis
А каков функционал у dbInfo(DBI_TRIGGER...... , для чего она ?

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 16
Зарегистрирован: 06.12.14
ссылка на сообщение  Отправлено: 15.04.15 11:15. Заголовок: alkresin пишет: При..


alkresin пишет:

 цитата:
Пример на стол. Мне не удалось воспроизвести падение сервера при удалении несуществующей группы.



#include "rddleto.ch"
#define LETOSERVER "//127.0.0.1:2812/"

Procedure Main(a)
local cTmp:='', aa
REQUEST LETO
RDDSETDEFAULT("LETO")

leto_Connect( LETOSERVER )

? leto_vardel( 'GroupNone', '' )
? leto_vardel( 'GroupNone', '' )

return

сервер запускал без letoudf.hrb для чистоты эксперимента

результат выполнения

Breakdown at: 2015.04.15 11:11:46
Unrecoverable error 6005: Exception %s at address %s SIGSEGV (nil)
------------------------------------------------------------------------
User: 127.0.0.1 localhost testvars
Command: var


P.S. Только что пересобрал сервер. Теперь при тесте он не падает, но тестовое приложение зависает ничего не выводя т.е. как я понимаю где-то внутри функции удаления группы.

Спасибо: 0 
ПрофильЦитата Ответить
moderator


Пост N: 922
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 15.04.15 12:01. Заголовок: finder пишет: Тольк..


finder пишет:

 цитата:
Только что пересобрал сервер. Теперь при тесте он не падает, но тестовое приложение зависает ничего не выводя т.е. как я понимаю где-то внутри функции удаления группы.


Исправил

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 17
Зарегистрирован: 06.12.14
ссылка на сообщение  Отправлено: 15.04.15 13:23. Заголовок: alkresin пишет: Исп..


alkresin пишет:

 цитата:
Исправил


Спасибо, сейчас отрабатывает.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 573
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 15.04.15 14:07. Заголовок: Dima пишет:А каков ф..


Dima пишет:
 цитата:
А каков функционал у dbInfo(DBI_TRIGGER...... , для чего она ?


Сейчас триггер заполняет поля :
IDNNN (N10) - идентификатор от поля + (клиент 2-х поточной версии не понимает новые поля)
IDDATEADD(C17) - дата добавления Timestamp -> в строку
IDDATEUPD (C17) - дата модификации Timestamp -> в строку
IDDATEDEL (C17) - дата удаления Timestamp -> в строку
эти поля обязательны по закондательству
и планировал на новой версии перенести с клиента ведение логов по изменению таблиц.


Спасибо: 0 
ПрофильЦитата Ответить
moderator


Пост N: 923
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 15.04.15 14:21. Заголовок: SergKis пишет: вклю..


SergKis пишет:

 цитата:
включение этой функции в letodb.hrb или letodb.prg не срабатывает ни разу при операциях над таблицей
это можно побороть ?


Можно, конечно. Только надо сначала разобраться - я не смотрел еще в ту сторону.

Спасибо: 0 
ПрофильЦитата Ответить
moderator


Пост N: 924
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 15.04.15 18:17. Заголовок: По-видимому, дело в ..


По-видимому, дело в том, что новые потоки не наследуют RDDI_... установки, их надо переустанавливать для каждого вновь создаваемого потока.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 575
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 15.04.15 20:10. Заголовок: alkresin пишет:По-ви..


alkresin пишет:
 цитата:
По-видимому, дело в том, что новые потоки не наследуют RDDI_... установки,


наверное, правильно, устанавливать "свой" триггер только для нужной области (с клиента), но общий, в некоторых, ситуациях лучше и лежать триггеру лучше в letodb.hrb - для клиента свой hrb и триггеры

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 191 , стр: 1 2 3 4 5 6 7 8 9 10 All [только новые]
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 236
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет