-
Notifications
You must be signed in to change notification settings - Fork 8
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
`inotify` does not work reliably with network file systems (e.g., NFS, CIFS) commonly used in cloud environments. These file systems may not propagate file system events correctly, causing `inotify` to miss changes. To ensure consistent file monitoring across these environments, polling is enabled by default in FileWatcher. Signed-off-by: Daniel Zullo <daniel.zullo@frequenz.com>
- Loading branch information
1 parent
1a262ef
commit bbb1198
Showing
4 changed files
with
39 additions
and
5 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,11 +1,19 @@ | ||
# Frequenz channels Release Notes | ||
|
||
## Upgrading | ||
|
||
- `FileWatcher`: The file polling mechanism is now forced by default. This provides reliable and consistent file monitoring on network file systems (e.g., CIFS). However, it may have a performance impact on local file systems or when monitoring a large number of files. | ||
- To disable file polling, set the `force_polling` parameter to `False`. | ||
- The `polling_interval` parameter defines the interval for polling changes. This is relevant only when polling is enabled and defaults to 1 second. | ||
|
||
## New Features | ||
|
||
- `Timer.reset()` now supports setting the interval and will restart the timer with the new interval. | ||
|
||
## Bug Fixes | ||
|
||
- `FileWatcher`: Fixed `ready()` method to return False when an error occurs. Before this fix, `select()` (and other code using `ready()`) never detected the `FileWatcher` was stopped and the `select()` loop was continuously waking up to inform the receiver was ready. | ||
- `FileWatcher`: | ||
- Fixed `ready()` method to return False when an error occurs. Before this fix, `select()` (and other code using `ready()`) never detected the `FileWatcher` was stopped and the `select()` loop was continuously waking up to inform the receiver was ready. | ||
- Reports file events correctly on network file systems like CIFS. | ||
|
||
- `Timer.stop()` and `Timer.reset()` now immediately stop the timer if it is running. Before this fix, the timer would continue to run until the next interval. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters