Автор | Сообщение |
Dima
|
| |
Пост N: 2728
Зарегистрирован: 17.05.05
|
|
Отправлено: 12.03.13 11:27. Заголовок: Leto DB Server (продолжение 9)
Продолжаем тут
|
|
|
Ответов - 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 (там слегка заметное замедление)
|
|
|
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 включен, то индекс открывается автоматически. Дима, может быть ты что-то другое имеешь в ввиду ?
|
|
|
Pasha
|
| Администратор
|
Пост N: 2825
Зарегистрирован: 23.05.05
|
|
Отправлено: 04.04.13 20:31. Заголовок: Dima пишет: Что кас..
Dima пишет: цитата: | Что касается бровса. Если он голый (просто поля) без наворотов то работает нормально (нет тормоза). А вот если появляются вычисляемые поля да еще по другим базам то тормоз обеспечен. Локально без LETO этого тормоза нет , впрочем как и под ADS (там слегка заметное замедление) |
| Если сравнить бровс с вычисляемыми полями по нескольким таблицам при работе в сети, то какой rdd быстрее: dbfcdx, ads или leto ? И какого вида вычисляемые поля ? Это seek по другой таблице и выборка из нее данных, или что-то сложнее ? Кстати, если это цикл с суммированием по другой таблице, то в leto для этого есть функция leto_sum, использование которой уберет тормоза, так как она выполняется одним запросом к серверу.
|
|
|
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 совсем из другой оперы.
|
|
|
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 всегда включен, и я думаю, это нельзя изменить. Представь ситуацию. Один клиент открыл таблицу с индексом, и другой без индекса, и оба обновляют таблицу. Что в таком случае будет с индексом ? Одно соединение его обновит, а другое нет. Получится битый индекс. Поэтому сервер всегда открывает индекс, даже если клиент это не просит.
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 2776
Зарегистрирован: 12.09.06
|
|
Отправлено: 04.04.13 21:36. Заголовок: Pasha пишет: Поэтом..
Pasha пишет: цитата: | Поэтому сервер всегда открывает индекс, даже если клиент это не просит. |
| Если не трудно - напишите это в доке ! А то потом забудешь про это и опять на те-же самые грабли наступишь...
|
|
|
alkresin
|
| moderator
|
Пост N: 606
Зарегистрирован: 06.07.06
|
|
Отправлено: 18.04.13 09:13. Заголовок: Павел, а можно виндо..
Павел, а можно виндовый letodb собрать не как службу ? Я его сегодня обновил с CVS, собрал, пытаюсь запустить - а он говорит, что "LetoDB service has had some problems: 1063". Мне служба совершенно не нужна...
|
|
|
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__.
|
|
|
alkresin
|
| moderator
|
Пост N: 607
Зарегистрирован: 06.07.06
|
|
Отправлено: 18.04.13 09:44. Заголовок: Спасибо. Не дочитал ..
Спасибо. Не дочитал до этого места readme :)
|
|
|
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 у себя в задачах ?
|
|
|
Панченко
|
| |
Пост N: 45
Зарегистрирован: 13.06.12
|
|
Отправлено: 24.05.13 09:30. Заголовок: В качестве пожелания..
В качестве пожелания. Паша, Александр что-то давненько не обновлялся архив на http://sourceforge.net/projects/letodb/. Ведь этот адрес заявлен в начале темы как адрес проекта. Густов в Вики тоже дает эту ссылку. Все, кто туда придут, скачают проект почти полугодичной давности.
|
|
|
|
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 - необязательное минимальное значение
|
|
|
Pasha
|
| Администратор
|
Пост N: 2883
Зарегистрирован: 23.05.05
|
|
Отправлено: 24.05.13 09:45. Заголовок: Панченко пишет: что..
Панченко пишет: Выложу сборку.
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 2913
Зарегистрирован: 12.09.06
|
|
Отправлено: 19.07.13 10:12. Заголовок: Только не пинайте си..
Только не пинайте сильно.... Дайте адрес для обновления LetoDB через SVN. Заранее спасибо....
|
|
|
Dima
|
| |
Пост N: 3317
Зарегистрирован: 17.05.05
|
|
Отправлено: 19.07.13 10:15. Заголовок: Andrey пишет: Дайте..
Andrey пишет: цитата: | Дайте адрес для обновления LetoDB через SVN |
| А его нет так как не переезжал туда если не ошибаюсь
|
|
|
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
|
|
|
Sergy
|
| |
Пост N: 254
Зарегистрирован: 08.07.06
|
|
Отправлено: 01.09.13 20:57. Заголовок: Подскажите плиз нови..
Подскажите плиз новичку: 1) с чего начать, откуда качать, что читать (кроме readme, скинутого в соседней теме) 2) возможна ли одновременная работа letodb сервера на одной базе параллельно со "старым" способом работы через DBFNTX rdd ? Т.е. есть желание попробовать оптимизировать сначала наиболее "медленные" выборки - чтобы обкатать методы работы. А потом потихоньку менять шаг за шагом, чтобы не раскорячить неожиданно основной процесс работы предприятия?
|
|
|
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 работать совместно с другими приложениями.
|
|
|
SergKis
|
| постоянный участник
|
Пост N: 252
Зарегистрирован: 17.02.12
|
|
Отправлено: 01.09.13 22:21. Заголовок: Sergy посмотреть ser..
Sergy посмотреть server.prg в Source и примеры в tests, utils - это святое
|
|
|
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.
|
|
|
Ответов - 301
, стр:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
All
[только новые]
|
|