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




Пост N: 7866
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 28.11.23 19:18. Заголовок: Копирование открытых баз данных


Имею непонятку.
Cтал в последнее время замечать что скорость копирования базы
а она на данный момент весит 10 гиг , стало занимать до ~15 минут ,
хотя пару недель назад это время было всего ~32 секунды.
Провел эксперимент , в базах ни кого нет , время копирования
базы заняло ~32 секунды , зашел в прогу и перешел в раздел
где открывается много баз и снова запустил копирование ,
цирк ...время заняло ~ 33 секунды и ни какими минутами и не пахнет.
Копирую базы так
 
FOR EACH aFile IN aDir
hb_DynCall({ "CopyFileA", "kernel32.dll", HB_DYN_CALLCONV_STDCALL },pathbase+"dbf\"+afile[1],pathbase+"zip\"+afile[1],0)
hb_releaseCPU()
Next

Винт SSD и ему почти 2 года.
Не пойму куда копать ....есть какие мысли у кого ?

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


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




Пост N: 7885
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 04.12.23 16:05. Заголовок: PSP пишет: Вот нечт..


PSP пишет:

 цитата:
Вот нечто https://www.cyberforum.ru/win-api/thread983172.html


Почитал....хммм

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




Пост N: 7886
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 04.12.23 17:41. Заголовок: Потестю ка у клиента..


Потестю ка у клиента еще раз но уже с Hb_fcopy

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




Пост N: 7887
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 04.12.23 22:09. Заголовок: Да с Hb_fcopy время ..


Да с Hb_fcopy время тоже растет при каждом цикле копирования.
Файлы под 2 гига , но не все.
Погуглил , проблема таки есть по любому , когда поток + копирование в цикле + большие файлы.
Полагаю что то нужно добавить в цикл , вот только что , хз.
Поэтому пока буду юзать костыль с перезапуском потока , реально работает.

Паше.
Странно не замечать проблемы и косить на другие происходящие процессы , аргументы выше и статистику
я приводил.

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




Пост N: 7890
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 06.12.23 18:12. Заголовок: Паша а не сложно теб..


Паша а не сложно тебе сделать обертку для CopyFileExA
что бы можно было его запускать с флагом COPY_FILE_NO_BUFFERING , хочу с ней
поиграться и посмотреть на результат.

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




Пост N: 7891
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 06.12.23 18:27. Заголовок: и вот такую SHFileOp..


и вот такую SHFileOperationA

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




Пост N: 7893
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 07.12.23 19:19. Заголовок: Pasha Поможешь с во..


Pasha
Поможешь с вопросом ?

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




Пост N: 2228
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 07.12.23 20:14. Заголовок: Dima пишет: вот та..


Dima пишет:

 цитата:
вот такую SHFileOperationA


Дима!

Попробуй эту функцию из библиотеки hbwin:

 цитата:
win_SHFileOperation( [<hWnd>], [<nFunction>], [<cFrom>|<aFrom>], [<cTo>|<aTo>],
[<nFlags>], [<@lAnyOperationAborted>],
[<aNameMappings>], [<cProgressTitle>] ) -> <nResult>


Контрольный пример из поставки Харбора:
Скрытый текст


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




Пост N: 7894
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 07.12.23 20:48. Заголовок: gfilatov2002 пишет: ..


gfilatov2002 пишет:

 цитата:
Попробуй эту функцию из библиотеки hbwin:


Спасибо , потестю , отпишу !

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




Пост N: 4143
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 08.12.23 15:12. Заголовок: #define COPY_FILE_NO..


#define COPY_FILE_NO_BUFFERING 0x00001000

proc main

? win_CopyFileEx('_cf.prg', '_cf1.prg', COPY_FILE_NO_BUFFERING)

retu

#pragma BEGINDUMP

#include "hbapi.h"
#include "windows.h"

HB_FUNC( WIN_COPYFILEEX )
{
hb_retl( (LONG) CopyFileEx( (LPCSTR) hb_parc(1), (LPCSTR) hb_parc(2), NULL, NULL, NULL, HB_ISNIL(3) ? 0 : (DWORD) hb_parnl(3) ) );
}

#pragma ENDDUMP

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




Пост N: 7895
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 08.12.23 17:27. Заголовок: Pasha gfilatov2002 ..


Pasha gfilatov2002
Спасибо за помощь.
Вопрос не решился.
Поэтому перезапускаю поток если время копирования превысило N сек , работает.

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




Пост N: 7896
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 08.12.23 22:10. Заголовок: Пора поюзать ROBOCOP..


Пора поюзать ROBOCOPY , интересно уже каков будет результат

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


Пост N: 1701
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 09.12.23 11:11. Заголовок: Dima пишет: Пора по..


Dima пишет:

 цитата:
Пора поюзать ROBOCOPY


А она умеет открытые файлы?

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




Пост N: 7897
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 09.12.23 16:34. Заголовок: PSP пишет: А она ум..


PSP пишет:

 цитата:
А она умеет открытые файлы?


Да , облом . не копирует открытые файлы и Xcopy тоже по ходу

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




Пост N: 7630
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 09.12.23 17:13. Заголовок: Dima пишет: Да , об..


Dima пишет:

 цитата:
Да , облом . не копирует открытые файлы и Xcopy тоже по ходу


Делай тогда через Winrar или WinZip, они умеют делать архивы с открытыми файлами.
Я сделал свою утилиту на МиниГуи, создаю нужный мне список файлов и делаю архив.
Работает с 2013 года.
Команда простая:
         COMPRESS aFiles ; 
TO cBackupZip ;
BLOCK { | cFile, nPos | ProgressUpdate( nPos, cFile, aSizeFiles, .T. ) } ;
LEVEL LEVEL_ZIP ;
PASSWORD cPass ;
OVERWRITE ;
STOREPATH ;
FILEPROGRESS { | nPos, nTotal | ProgressFile( nPos, nTotal, .T. ) } ;
RESULT lSuccess



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




Пост N: 7898
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 09.12.23 17:51. Заголовок: Dima пишет: Да , об..


Dima пишет:

 цитата:
Да , облом . не копирует открытые файлы и Xcopy тоже по ходу


Поправка
Shared копирует , Exclusive нет

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




Пост N: 7899
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 09.12.23 19:46. Заголовок: Прикольно на одном и..


Прикольно на одном из серваков уже сделал 2 замера
и время не растет , даже падает , при использовании Robocopy.
Жду 2-го результата на втором серваке в другом городе.

Update
И на втором время не растет и тоже упало

Приз получает Robocopy

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




Пост N: 4144
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 09.12.23 21:42. Заголовок: Dima пишет: Поправк..


Dima пишет:

 цитата:
Поправка
Shared копирует , Exclusive нет



Так работают все средства, хоть функции, хоть сторонние утилиты. На то оно и эксклюзив, что никому больше доступ к файлу не даст

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


Пост N: 1702
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 09.12.23 21:43. Заголовок: :sm208:..




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


Пост N: 1703
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 09.12.23 21:45. Заголовок: Pasha пишет: Так ра..


Pasha пишет:

 цитата:
Так работают все средства, хоть функции, хоть сторонние утилиты. На то оно и эксклюзив, что никому больше доступ к файлу не даст


Разрешите не согласиться. VSS с этим справляется. Она на другом уровне работает, не файловом.

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




Пост N: 7900
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 09.12.23 21:51. Заголовок: Pasha пишет: Так ра..


Pasha пишет:

 цитата:
Так работают все средства, хоть функции, хоть сторонние утилиты. На то оно и эксклюзив, что никому больше доступ к файлу не даст


Да это я лоханулся в тестовом своем примере и написал что то типа
Use nakl_r new
и думал что оно в Shared по умолчанию открывается

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

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