powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Самопроизвольная чистка dbf
12 сообщений из 12, страница 1 из 1
Самопроизвольная чистка dbf
    #36101667
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ситуация. Есть программка на vfp9(один грид и три кнопки), работает с одним файлом dbf, файл лежит на расшаренном диске. Редактирование/добавление записей, редко удаление, один юзер.
В последние дни нам периодически и непредсказуемо обрубают эл-во (с.ки!), соединение с файлопомойкой рвётся (пож-та, не надо про бесперебойники...), в результате чего (не всегда) все записи в файле исчезают. То есть остаётся нормальная дбф-ка, но без записей, как будто ZAP-нутая. Я уже мозг сломал, пытаясь понять, чем это может быть вызвано.
Самое непонятное для меня в том, что в файле могут быть записи, юзер закрывает программу, уходить чайку попить - файл лежит, инфа в нём есть. Юзер приходит, включается, начинает туда ещё что-нить писать, обрубается сеть из-за эл-ва, и вуаля - "у меня всё исчезло!"
Объёмы инфы несерьёзные, но часто там ручной ввод, исправления - на меня скоро начнут злиться Поможите, пожалуйста, советом.
...
Рейтинг: 0 / 0
Самопроизвольная чистка dbf
    #36101681
tanglirВ последние дни нам периодически и непредсказуемо обрубают эл-во (с.ки!), соединение с файлопомойкой рвётся (пож-та, не надо про бесперебойники...)И тем не менее именно про бесперебойники. Комп и программы на нем без электричества работать не могут, потому всякие программные способы решения проблемы не проходят.
...
Рейтинг: 0 / 0
Самопроизвольная чистка dbf
    #36101724
reware
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tanglir
В последние дни нам периодически и непредсказуемо обрубают эл-во. Я уже мозг сломал, пытаясь понять, чем это может быть вызвано.


Стра-а-анный вы, сэр. Без елестричества бывают очень причудливые вещи. Например, начинает разговаривать чучело белого медведя :)
...
Рейтинг: 0 / 0
Самопроизвольная чистка dbf
    #36101729
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Предположительно, к этому может привести FLOCK(). Т.е. блокировка всей таблицы. Сама концепция блокировок в FoxPro предполагает сдвиг адресации. Если в этот момент обрубят электричество, то последствия не предсказуемые.

Поэтому, общая идеология программирования предполагает уменьшение времени блокировки файлов. Только и исключительно на момент записи. Процесс же редактирования должен осуществляться в некоторой "копии" данных. В Visual FoxPro это осуществляется при помощи буферизации
...
Рейтинг: 0 / 0
Самопроизвольная чистка dbf
    #36101818
прошелмимо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
попробуйте варианты
1. попробовать flush force везде после изм-я данных пользователем.
2. использовать курсорадаптер.
...
Рейтинг: 0 / 0
Самопроизвольная чистка dbf
    #36103483
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВладимирМ, прошелмимо,
Если я правильно понимаю концепцию буферизации в фоксе, то buffering=3 и tableupdate в нужных местах должно хватить для решения этой проблемы?
ЗЫ. Там вообще был use exclusive и никакой буферизации 8)
...
Рейтинг: 0 / 0
Самопроизвольная чистка dbf
    #36103499
прошелмимо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КАД
buffering=5 и tableupdate

в почту пришлите Ваш проект, если нет секретов.
...
Рейтинг: 0 / 0
Самопроизвольная чистка dbf
    #36103542
-=AlexiS=-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Без устойчивого эл.питания все буферизации и flush force всего лишь уменьшат вероятность пропадания данных.
использование курсорадаптера с 5 буферизацией наверное самое предпочтительное.
Но всё-равно 100 % защиты - нет.
Ведь кроме буферов фокса есть еще кеш винды и сетки.
Поэтому хотите спать спокойно - tanglir(пож-та, не надо про бесперебойники...)
ШурикНадо Федя-надо
...
Рейтинг: 0 / 0
Самопроизвольная чистка dbf
    #36103597
прошелмимо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tanglir

читайте здесь
http://forum.foxclub.ru/read.php?29,241344,241555#msg-241555

+ дайте мне проект посмотреть,
я попробую прикрутить курсорадаптер
...
Рейтинг: 0 / 0
Самопроизвольная чистка dbf
    #36103622
прошелмимо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
извиняюсь за флуд, но так просто вспомнилось

автори переставила рабочий стол в другое место, тетушка осталась прежней и вот чудо данные перестали теряться, а в том месте тетушки поставили цветочки

реальный случай из жизни:
АЭС, в бухгалтерии не работает флопик,
вызывают работника из ОАСУ,
уносит блок,
приносит со словами - все работает,
бухи проверяют - флоп не работает,
вызывают работника ОАСУ,
уносит, приносит ... ну и т.д.

в итоге от ОАСУ в бухгалтерии появляется бумага,
точно формулировку не помню, но имелась фраза про
"неблагоприятные геомагнитные условия"
...
Рейтинг: 0 / 0
Самопроизвольная чистка dbf
    #36104024
alextashk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tanglir,

присоеденяюсь к проходящему,
но может - архивация по выходу из программы и обязать пользователя пить чай, только после закрытия программы
...
Рейтинг: 0 / 0
Самопроизвольная чистка dbf
    #36105728
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alextashkархивация по выходу из программы и обязать пользователя пить чай, только после закрытия программы
tanglirюзер закрывает программу, уходить чайку попить - файл лежит, инфа в нём есть. Юзер приходит, включается, начинает туда ещё что-нить писать, обрубается сеть из-за эл-ва, и вуаля - "у меня всё исчезло!"
В общем, сделал 5 буферизацию и тэйблапдейт где надо, потестил путём выдёргивания провода из сетевухи - вроде нормально, по крайней мере что было "закоммиченное", то остаётся на месте.
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Самопроизвольная чистка dbf
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]