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




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


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

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


Dima
администратор




Пост N: 2930
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 04.04.13 15:58. Заголовок: Блин еще косяк не по..


Блин еще косяк не понятный
В цикле работает ordlistadd()
C обычным DBFCDX после отработки цикла первым (управляющим) становится первый добавленный индекс
А с LETO последний.

Сколько таких не соответствий мне еще суждено поймать.......

Что касается бровса. Если он голый (просто поля) без наворотов то работает нормально (нет тормоза).
А вот если появляются вычисляемые поля да еще по другим базам то тормоз обеспечен. Локально без
LETO этого тормоза нет , впрочем как и под ADS (там слегка заметное замедление)

Спасибо: 0 
Профиль
Pasha
Администратор




Пост N: 2824
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 04.04.13 20:25. Заголовок: Dima пишет: остался..


Dima пишет:

 цитата:
остался вопрос с Set Autopen off



рисую такой тест:

#define _leto

proc main
#ifdef _leto
local cPath := '//127.0.0.1:2812/'

REQUEST LETO
RDDSETDEFAULT( "LETO" )
#else
local cPath := ''
REQUEST DBFCDX
RDDSETDEFAULT( "DBFCDX" )
#endif

set autopen off

#ifdef _leto
leto_Connect(cPath)
hb_rddinfo(101, .f.,, 1)
#endif
USE (cPath+'test') new
? rddname(), IndexOrd(), ordCount()
set index to test
? rddname(), IndexOrd(), ordCount()
wait

retu

Что leto, что dbfcdx ведут себя одинаково. Если индекс существует и autopen выключен, то индекс не открывается, надо принудительно выдать команду set index
Если autopen включен, то индекс открывается автоматически.
Дима, может быть ты что-то другое имеешь в ввиду ?

Спасибо: 0 
Профиль
Pasha
Администратор




Пост N: 2825
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 04.04.13 20:31. Заголовок: Dima пишет: Что кас..


Dima пишет:

 цитата:
Что касается бровса. Если он голый (просто поля) без наворотов то работает нормально (нет тормоза).
А вот если появляются вычисляемые поля да еще по другим базам то тормоз обеспечен. Локально без
LETO этого тормоза нет , впрочем как и под ADS (там слегка заметное замедление)



Если сравнить бровс с вычисляемыми полями по нескольким таблицам при работе в сети, то какой rdd быстрее: dbfcdx, ads или leto ?
И какого вида вычисляемые поля ? Это seek по другой таблице и выборка из нее данных, или что-то сложнее ?
Кстати, если это цикл с суммированием по другой таблице, то в leto для этого есть функция leto_sum, использование которой уберет тормоза, так как она выполняется одним запросом к серверу.

Спасибо: 0 
Профиль
Dima
администратор




Пост N: 2931
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 04.04.13 20:35. Заголовок: Pasha пишет: Дима, ..


Pasha пишет:

 цитата:
Дима, может быть ты что-то другое имеешь в ввиду ?



НЕ LETO , ставлю set autopen off
Открываю базу magaz3.dbf , в этой же папке есть magaz3.cdx и он к этой базе ни какого отношения не имеет.
Тут он и не откроется.

А в случае с LETO даже если установка set autopen off этот индекс будет открываться и понятное дело
будет ошибка открытия базы так как индекс magaz3.cdx совсем из другой оперы.

Спасибо: 0 
Профиль
Pasha
Администратор




Пост N: 2826
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 04.04.13 21:00. Заголовок: Dima пишет: НЕ LETO..


Dima пишет:

 цитата:
НЕ LETO , ставлю set autopen off
Открываю базу magaz3.dbf , в этой же папке есть magaz3.cdx и он к этой базе ни какого отношения не имеет.
Тут он и не откроется.

А в случае с LETO даже если установка set autopen off этот индекс будет открываться и понятное дело
будет ошибка открытия базы так как индекс magaz3.cdx совсем из другой оперы.



Понятно. На сервере set autopen всегда включен, и я думаю, это нельзя изменить.
Представь ситуацию. Один клиент открыл таблицу с индексом, и другой без индекса, и оба обновляют таблицу. Что в таком случае будет с индексом ? Одно соединение его обновит, а другое нет. Получится битый индекс.
Поэтому сервер всегда открывает индекс, даже если клиент это не просит.

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




Пост N: 2776
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 04.04.13 21:36. Заголовок: Pasha пишет: Поэтом..


Pasha пишет:

 цитата:
Поэтому сервер всегда открывает индекс, даже если клиент это не просит.


Если не трудно - напишите это в доке !
А то потом забудешь про это и опять на те-же самые грабли наступишь...

Спасибо: 0 
Профиль
alkresin
moderator


Пост N: 606
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 18.04.13 09:13. Заголовок: Павел, а можно виндо..


Павел, а можно виндовый letodb собрать не как службу ?
Я его сегодня обновил с CVS, собрал, пытаюсь запустить - а он говорит, что "LetoDB service has had some problems: 1063". Мне служба совершенно не нужна...

Спасибо: 0 
Профиль
AlexMyr



Пост N: 819
Зарегистрирован: 11.06.10
ссылка на сообщение  Отправлено: 18.04.13 09:28. Заголовок: Александр, поправьте..


Александр, поправьте следующее
#-prgflag={win}-D__WIN_DAEMON__
-prgflag={win}-D__WIN_SERVICE__

замениете на

-prgflag={win}-D__WIN_DAEMON__
#-prgflag={win}-D__WIN_SERVICE__

Вот в reame
Для ОС Windows сервер letodb может быть
собран как служба Windows (должен быть инициализирован макрос __WIN_SERVICE__),
или как демон (процесс), для чего надо установить макрос __WIN_DAEMON__.

Спасибо: 0 
Профиль
alkresin
moderator


Пост N: 607
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 18.04.13 09:44. Заголовок: Спасибо. Не дочитал ..


Спасибо. Не дочитал до этого места readme :)

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




Пост N: 2828
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 06.05.13 12:44. Заголовок: Pasha пишет в теме h..


Pasha пишет в теме http://clipper.borda.ru/?1-6-0-00000001-000-10001-0:

 цитата:
Я autoinc не использую, и насчет стабильности точно не скажу.
Но мне кажется, что и без flock, т.е. по rlock, будет стабильнее, чем делать go bottom, выбирать последний ключ, и т.д, поскольку узких мест для autoinc меньше.



В связи с переходом на LetoDb - как лучше реализовывать "счетчик" ID у себя в задачах ?

Спасибо: 0 
Профиль
Панченко





Пост N: 45
Зарегистрирован: 13.06.12
ссылка на сообщение  Отправлено: 24.05.13 09:30. Заголовок: В качестве пожелания..


В качестве пожелания.

Паша, Александр
что-то давненько не обновлялся архив на http://sourceforge.net/projects/letodb/.
Ведь этот адрес заявлен в начале темы как адрес проекта. Густов в Вики тоже дает эту ссылку. Все, кто туда придут, скачают проект почти полугодичной давности.

Спасибо: 0 
Профиль
Pasha
Администратор




Пост N: 2882
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 24.05.13 09:42. Заголовок: Andrey пишет: В свя..


Andrey пишет:

 цитата:
В связи с переходом на LetoDb - как лучше реализовывать "счетчик" ID у себя в задачах ?



Только заметил этот вопрос. Можно использовать udf-функцию
UDF_AppendRec( nUserStru, cFieldName, xOrder, xMin )
из модуля letoudf.prg
она обеспечивает уникальность ключа с гарантией 100%
Вызов с клиента:
leto_ParseRec( leto_udf("UDF_AppendRec", <cFieldName>, <xOrder>[, <xMin>] ) )

Параметры:
cFieldName - имя поля ключа
xOrder - имя/номер индекса
xMin - необязательное минимальное значение


Спасибо: 0 
Профиль
Pasha
Администратор




Пост N: 2883
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 24.05.13 09:45. Заголовок: Панченко пишет: что..


Панченко пишет:

 цитата:
что-то давненько не обновлялся архив на http://sourceforge.net/projects/letodb/.



Выложу сборку.

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




Пост N: 2913
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 19.07.13 10:12. Заголовок: Только не пинайте си..


Только не пинайте сильно....
Дайте адрес для обновления LetoDB через SVN.
Заранее спасибо....

Спасибо: 0 
Профиль
Dima
администратор




Пост N: 3317
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 19.07.13 10:15. Заголовок: Andrey пишет: Дайте..


Andrey пишет:

 цитата:
Дайте адрес для обновления LetoDB через SVN


А его нет так как не переезжал туда если не ошибаюсь

Спасибо: 0 
Профиль
AlexMyr



Пост N: 901
Зарегистрирован: 11.06.10
ссылка на сообщение  Отправлено: 19.07.13 16:22. Заголовок: Dima пишет: А его н..


Dima пишет:

 цитата:
А его нет так как не переезжал туда если не ошибаюсь

правильно.

Andrey пишет:

 цитата:
Дайте адрес для обновления LetoDB


cvs -d:pserver:anonymous@letodb.cvs.sourceforge.net:/cvsroot/letodb co -P -r rel-1-mt letodb

Спасибо: 1 
Профиль
Sergy





Пост N: 254
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 01.09.13 20:57. Заголовок: Подскажите плиз нови..


Подскажите плиз новичку:
1) с чего начать, откуда качать, что читать (кроме readme, скинутого в соседней теме)
2) возможна ли одновременная работа letodb сервера на одной базе параллельно со "старым" способом работы через DBFNTX rdd ? Т.е. есть желание попробовать оптимизировать сначала наиболее "медленные" выборки - чтобы обкатать методы работы. А потом потихоньку менять шаг за шагом, чтобы не раскорячить неожиданно основной процесс работы предприятия?


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




Пост N: 251
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 01.09.13 22:12. Заголовок: Sergy пишет: с чего ..


Sergy пишет:
 цитата:
с чего начать


1. со сборки LetoDb, настройка letodb.ini,запуска на localhost
2. с мало используемого справочника, Use перенацеливаешь на localhost, RDD LETO в use, если в текстах было Shared, то по идее все должно зашевелиться, иначе Rlock обработки добавляешь
3. если зашевелилось, можно переползти на сервер с localhost и потестить
4. попробовать совместную работу LetoDb со "старым" способом работы

Sergy пишет:
 цитата:
работа letodb сервера на одной базе параллельно со "старым" способом работы


letodb.ini
 
...
Default_Driver = NTX - RDD по умолчанию для открытия файлов на сервере ( CDX/NTX );
...
Share_Tables = 1 - если 0 (по умолчанию, этот режим существует с момента
старта проекта letodb), letodb открывает все таблицы
в монопольном режиме, что позволяет увеличить
производительность. Если 1 (новый режим, добавлен после 11.06.2009),
таблицы открываются в том режима, в каком их открывает
клиентское приложение, монопольном или режиме разделения, что
позволяет letodb работать совместно с другими приложениями.


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




Пост N: 252
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 01.09.13 22:21. Заголовок: Sergy посмотреть ser..


Sergy
посмотреть server.prg в Source и примеры в tests, utils - это святое

Спасибо: 0 
Профиль
AlexMyr



Пост N: 918
Зарегистрирован: 11.06.10
ссылка на сообщение  Отправлено: 01.09.13 22:21. Заголовок: Sergy пишет: 1) с ч..


Sergy пишет:

 цитата:
1) с чего начать, откуда качать, что читать (кроме readme, скинутого в соседней теме)

Лучше начинать с этого форума. Брать через
cvs -d:pserver:anonymous@letodb.cvs.sourceforge.net:/cvsroot/letodb co -P -r rel-1-mt letodb
По поводу почитать - поиск letodb по форуму.

Sergy пишет:

 цитата:
2) возможна ли одновременная работа letodb сервера на одной базе параллельно со "старым" способом работы через DBFNTX rdd ? Т.е. есть желание попробовать оптимизировать сначала наиболее "медленные" выборки - чтобы обкатать методы работы.


Смотреть опцию:
Share_Tables  = 0        -    если 0 (по умолчанию, этот режим существует с момента 
старта проекта letodb), letodb открывает все таблицы
в монопольном режиме, что позволяет увеличить
производительность. Если 1 (новый режим, добавлен после 11.06.2009),
таблицы открываются в том режима, в каком их открывает
клиентское приложение, монопольном или режиме разделения, что
позволяет letodb работать совместно с другими приложениями.

На практике можно поступить следующим образом (у меня так), взять базу, например справочник, и открывать его через letodb, т.е. use baza via rddleto, остальные базы как и открывали. Потом смотрите что получается, как работает прога и постепенно переносите оставшиеся базы на leto.

Спасибо: 0 
Профиль
Ответов - 301 , стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 All [только новые]
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 94
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет