Автор | Сообщение |
Pasha
|
| Администратор
|
Пост N: 2416
Зарегистрирован: 23.05.05
|
|
Отправлено: 22.06.12 18:14. Заголовок: Leto DB Server (продолжение 8)
Немного доработал документацию к letodb
|
|
|
Ответов - 273
, стр:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
All
[только новые]
|
|
Pasha
|
| Администратор
|
Пост N: 2744
Зарегистрирован: 23.05.05
|
|
Отправлено: 11.03.13 19:34. Заголовок: Dima пишет: А в чем..
Dima пишет: цитата: | А в чем разница между leto_RecLock() и RLock() если база открыта с RDD Leto и нужно залочить текущую запись ? |
| leto_RecLock предназначена для использования исключительно на сервере, в udf-функциях. А с клиента надо работать стандартными средствами rlock/flock/dbRLock На сервере их использовать нельзя, поскольку смысл блокировок на сервере другой. Сервер открывает файлы (при стандартном режиме) монопольно, и блокировки там выполняются логически.
|
|
|
Dima
|
| |
Пост N: 2718
Зарегистрирован: 17.05.05
|
|
Отправлено: 11.03.13 19:36. Заголовок: Pasha Спасибо за ра..
Pasha Спасибо за разъяснения !
|
|
|
Pasha
|
| Администратор
|
Пост N: 2745
Зарегистрирован: 23.05.05
|
|
Отправлено: 11.03.13 21:29. Заголовок: Dima пишет: еще наб..
Dima пишет: цитата: | еще наблюдение. если пересобрать клиентское приложение то в 30% после первого запуска LETO_CONNECT выдаст -1 |
| Я тоже напоролся на это. Пока 2 предположения: или служба "еще не до конца запустилась", а клиент уже коннектится к ней и валит ее (я службу постоянно останавливаю-пересобираю-запускаю-запускаю тест). Либо все-таки есть какой то баг в операциях с памятью, связанный с BM Но у меня эта ситуация возникает только в момент первого запуска теста после старта службы.
|
|
|
Dima
|
| |
Пост N: 2720
Зарегистрирован: 17.05.05
|
|
Отправлено: 11.03.13 22:03. Заголовок: Pasha пишет: Но у м..
Pasha пишет: цитата: | Но у меня эта ситуация возникает только в момент первого запуска теста после старта службы |
| я тоже обратил на это внимание , закономерности пока не понял. в течении дня таких глюков больше не было. Pasha пишет: цитата: | Либо все-таки есть какой то баг в операциях с памятью, связанный с BM |
| Не знаю. Еще до того как начинаю юзать BM то падало на LETO_CONNECT() Если мне не изменяет память то еще до ввода BM такой глюк имел место , возможно сервис LetoDB еще не до конца запустился. В свое время именно из за этого я и не стал тестить Leto. Поживем , посмотрим , может и найдем что. А вообще LetoDB мне уже начинает нравиться ;) Мне вот просто интересно. В плане надежности имеет значение как юзать сервер Leto , как SERVICE или DAEMON ? Чисто в теории разницы в надежности и стабильности быть не должно.
|
|
|
Pasha
|
| Администратор
|
Пост N: 2746
Зарегистрирован: 23.05.05
|
|
Отправлено: 11.03.13 22:24. Заголовок: Сбросил изменения на..
Сбросил изменения на CVS Для того, чтобы по команде SET FILTER формировался bitmap-фильтр, надо в letodb.ini задать параметр: ForceOpt = 1 А насчет демона - я, как только появилась служба, демон не использовал ни разу. Служба намного удобнее. Нет проблем с правами доступа. Запускает ее сама система, не нужен вход пользователя.
|
|
|
Dima
|
| |
Пост N: 2721
Зарегистрирован: 17.05.05
|
|
Отправлено: 11.03.13 22:42. Заголовок: Pasha пишет: Сброси..
Pasha пишет: Спасибо , завтра проверю. Отпишу тут.
|
|
|
Pasha
|
| Администратор
|
Пост N: 2748
Зарегистрирован: 23.05.05
|
|
Отправлено: 11.03.13 22:55. Заголовок: Кстати, маленький нь..
Кстати, маленький ньюанс Я службу останавливать/запускать батником стал недавно, а до этого делал это через диспетчер служб. Там процесс запуска отображается на экране, и видно, когда служба запустилась. Поэтому тест "в процессе" никогда не коннектился. Если это делать из батника, то окончания запуска не видно, вот наверное и возникают накладки.
|
|
|
Dima
|
| |
Пост N: 2724
Зарегистрирован: 17.05.05
|
|
Отправлено: 11.03.13 23:24. Заголовок: Pasha пишет: Я служ..
Pasha пишет: цитата: | Я службу останавливать/запускать батником стал недавно |
| Ну смотря как батник устроен. Если echo off то не видать ни чего а если echo on тогда виндец ошибку выдаст если что. Что то типа такого The requested service has already been started. More help is available by typing NET HELPMSG 2182.
|
|
|
Pasha
|
| Администратор
|
Пост N: 2749
Зарегистрирован: 23.05.05
|
|
Отправлено: 12.03.13 09:30. Заголовок: Есть еще пара момент..
Есть еще пара моментов. Во первых, при вызове LBM_dbSetFilterArray(), надо сбрасывать skip-буфер. Это я добавлю вечером. Во-вторых, я хочу все-таки сделать, чтобы не всякий фильтр строился как bitmap, а только если на клиенте также установлен _SET_FORCEOPT. Для этого эту настройку надо передавать серверу вместе с фильтром. Таким образом, на клиенте можно будет управлять, какой фильтр будет bitmap, а какой - обычный.
|
|
|
Dima
|
| |
Пост N: 2726
Зарегистрирован: 17.05.05
|
|
Отправлено: 12.03.13 10:56. Заголовок: Да все заработало. П..
Да все заработало. По команде Set filter to так же ставится опт. фильтр. Но в этом случае LBM_DBGETFILTERARRAY() вернет 0 а это не правильно. Со сбросом фильтра все нормально. Есть правда не удобство но к нему можно и привыкнуть. LBM_DBSETFILTERARRAY({1,590,234,2345,7899,9000,700000}) go top // видим 7 записей LBM_DBSETFILTERARRAY({1,590) go top // видим 2 записи Тут все норм. А вот так нет Set filter to nomer==5 go top // видим 30 записей dbclearfilter() // нужно принудительно сбросить фильтр после Set filter to....... LBM_DBSETFILTERARRAY({1,590) go top // если фильтр не снять не увидим ни чего То есть поведение LBM_DBSETFILTERARRAY и у dbsetfilter() разное а должно быть одинаковое. В BMDBFCDX именно так
|
|
|
Dima
|
| |
Пост N: 2727
Зарегистрирован: 17.05.05
|
|
Отправлено: 12.03.13 11:19. Заголовок: Dima пишет: copy fi..
Dima пишет: цитата: | copy file test.txt to (cserv+"test1.txt") |
| Pasha пишет: цитата: | Надо использовать функции leto_MemoWrite и leto_FileWrite |
| Да работает leto_memowrite(cserv+"test1.txt",leto_memoread(cserv+"test.txt")) или же можно поблочно , считывать и писать с помощью Leto_FileRead , Leto_FileWrite
|
|
|
|
Dima
|
| |
Пост N: 2729
Зарегистрирован: 17.05.05
|
|
Отправлено: 12.03.13 11:29. Заголовок: Pasha Закроешь эту ..
Pasha Закроешь эту тему когда посчитаешь нужным. Продолжение будет в Leto DB Server (продолжение 9)
|
|
|
Dima
|
| |
Пост N: 2730
Зарегистрирован: 17.05.05
|
|
Отправлено: 12.03.13 14:12. Заголовок: Pasha я тут подумал..
Pasha я тут подумал. может оставить в покое DBsetfilter и пусть он работает как и работал до введения BM , если это сложно. для установки BM фильтра вполне достаточно иметь LBM_DBSETFILTERARRAY а оптимально заполнить массив как бы и не проблема.
|
|
|
Ответов - 273
, стр:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
All
[только новые]
|
|