Принудительный сброс данных из памяти на диск | |
---|---|
Saratoga Автор Сообщений: 494 Дата регистрации: 02.02.2004 |
Такая ситуация - в конторе, где стоит программа, часто происходят скачки напряжения, UPS по всей видимости не справляется, как результат, холодное выключение компьютера, данные, внесенные в программу в последнем сеансе работы с ней, частично или полностью теряются...Есть ли способ принудительно сбрасывать все данные на диск, скажем, выполнять эту процедуру с периодичностью 20 минут?
|
Re: Принудительный сброс данных из памяти на диск | |
---|---|
PaulWist Сообщений: 14625 Дата регистрации: 01.04.2004 |
Ну, есть FLUSH, например, только боюсь в Вашем случае этого будет недостаточно, видимо нужен терминал сервер или пересмотр концепции организации модификации данных.
------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) |
Re: Принудительный сброс данных из памяти на диск | |
---|---|
Hel!Riser Сообщений: 10452 Откуда: Нижний Новгород Дата регистрации: 11.03.2001 |
SYS(1104) но ищите АКБ на свой УПС по-любому
------------------ Осторожно - глисты! |
Re: Принудительный сброс данных из памяти на диск | |
---|---|
PaulWist Сообщений: 14625 Дата регистрации: 01.04.2004 |
2Hel!Riser
Цитата: Поясни, пожалуйста, чем поможет - у него же просто питание вырубается. ------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) |
Re: Принудительный сброс данных из памяти на диск | |
---|---|
Hel!Riser Сообщений: 10452 Откуда: Нижний Новгород Дата регистрации: 11.03.2001 |
дык сбросить кеш на дисок Она круче FLUSH а то што питание вырубаеца - дык я за смену аккумулятороф тоже!
------------------ Осторожно - глисты! |
Re: Принудительный сброс данных из памяти на диск | |
---|---|
PaulWist Сообщений: 14625 Дата регистрации: 01.04.2004 |
Денис.
Как я понял автора, происходит следующее (если не прав, то Saratoga поправит) Сидит пользователь , вводит данные в буф. таблицу/view, решил их сохранить, а в этот момент отвалилась сеть - вот он и спрашивает мол, а что предпринять, на мой взгляд ни FLUSH ни SYS(1104) не помогут, поскольку хендл уж не знаю соединения, файла отвалился. Поэтому есть три решения - UPS (надежность близка к 100%) - Terminal (почти 100% надежность) - либо пересмотр идеологии работы с таблицами/view/соединениями, те работа с локальными курсорами как для ф-сервер, так и для к-сервер и при отвале соединения - восстановление его и сброс наработанного пользователем на сервер (про надежность не скажу, на мой взгля тоже высока) ЗЫ на моей памяти это уже второй пост на такую тему. ------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) |
Re: Принудительный сброс данных из памяти на диск | |
---|---|
Hel!Riser Сообщений: 10452 Откуда: Нижний Новгород Дата регистрации: 11.03.2001 |
Цитата:Паш, вот она ключевая фраза, на кот я отвечал Протиф твоих решений нич:е не имею - фс:е чотка ------------------ Осторожно - глисты! |
Re: Принудительный сброс данных из памяти на диск | |
---|---|
PaulWist Сообщений: 14625 Дата регистрации: 01.04.2004 |
Цитата: А мне она кажется совсем не понятной, те предположим вводятся данные в одну буф.(5) таблицу и в этот момент наступает время "Ч", что произойдет - всё что он ввел прилипнет на диск - нет, а прилипнет только то, что сохранял в передыдущий раз и по каким-то причинам буфер не был сброшен, тогда встает вопрос - а нафига вообще это промежуточное сохранение, если его можно выполнять при завершении транзакции, те то что не меняли сброситься на диск, а то что редактируем всё равно останется не сохраненным. ЗЫ ну , вообщем это мое понимание на "пальцах" ------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) |
Re: Принудительный сброс данных из памяти на диск | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
Hi, Hel!Riser!
Нет, sys(1104) не записывает данные на диск - она наоборот - считывает "свежие" данные с диска - например если SET REFRESH их ещё не считал А FLUSH вроде только в VFP9 довели до ума - до того он AFAIK как-то "не так" работал. А в VFP9 вроде он завязан на АПИшную функцию сброса WriteBack буфера - т.е. пытается физически записать данные на носитель. P.S. А я понял что речь не про "отваливание сети" а про вырубание собственно клиентских компов (поди и данные там локально лежат ------------------ WBR, Igor |
Re: Принудительный сброс данных из памяти на диск | |
---|---|
Saratoga Автор Сообщений: 494 Дата регистрации: 02.02.2004 |
Немного детализирую:
Редактирование происходит как правило одной записи в отдельном диалоговом окне каждую запись сбрасываю командой SCATTER в переменные, в них правлю, далее командой GATHER загоняю отредактированные данные обратно в запись. scatter name mo(index) Редактирование mo(index).field1,mo(index).field2,...,mo(index).fieldN rlock([table]) gather name mo(index) unlock([table]) Теряются данные, попавшие в запись уже после команды gather, причем не в одной записи, а сразу в нескольких. Т.е. фокс сделал все от него зависящее, чтобы сохранить модифицированную запись, и видимо далее данные не попадают на диск, а остаются в памяти по причинам, завиясящим от операционки? |
© 2000-2024 Fox Club  |