Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BUGFIX: FS read + speed improvements for SD #6569

Merged

Conversation

P-R-O-C-H-Y
Copy link
Member

Summary

  1. Reverted changes Edited VFSFileImpl::read to use both read/fread #6456 that are breaking the FS reads.
  2. Files internal buffer is now set to 4Kb by default where the recommended size cannot be read from _stat.

Impact

Fix FS issues in 2.0.3-RC1 release.
Improve SD reading speed (approx 40-50%)

Related links

Closes #6507
Closes #6502
Closes #6516

@P-R-O-C-H-Y P-R-O-C-H-Y added Area: Performance Issue related to performance problems and improvements Area: Libraries Issue is related to Library support. Priority: High 🗻 Issues with high priority which needs to be solved first. labels Apr 12, 2022
@P-R-O-C-H-Y P-R-O-C-H-Y added this to the 2.0.3 milestone Apr 12, 2022
@P-R-O-C-H-Y P-R-O-C-H-Y self-assigned this Apr 12, 2022
@github-actions
Copy link
Contributor

Unit Test Results

0 files  0 suites   0s ⏱️
0 tests 0 ✔️ 0 💤 0

Results for commit 757479c.

@brentru brentru mentioned this pull request Apr 14, 2022
1 task
@me-no-dev me-no-dev merged commit 02f4178 into espressif:master Apr 21, 2022
Jason2866 added a commit to tasmota/arduino-esp32 that referenced this pull request Apr 21, 2022
* Delete stale.yml

* IDF release/v4.4 b8050b365e (espressif#6594)

* Update camera example to support face detection and recognition (espressif#6603)

Fixes: espressif#6508

* Change pinMode OUTPUT to INPUT_OUTPUT (espressif#6602)

* Change OUTPUT to INPUT_OUTPUT

To match the official Arduino API.

* Changed type of LEDC frequency from double to uint32_t (espressif#6570)

* BUGFIX: FS read + speed improvements for SD (espressif#6569)

* Revert "Edited VFSFileImpl::read to use both read/fread (espressif#6456)"

This reverts commit 7b89b39.

* Added default file buffer size + function to change it by user

* workflows/publish.yml: Run the workflow on success and failure only. (espressif#6531)

* workflows/publish.yml: Run the workflow on success and failure only.
This prevents trying to run when the trigger was cancelled or skipped.
In these cases there will be no event file to upload.

Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>

* scripts/sketch_utils.sh: Move the logic that gets the build dir after
the part that retrieves the arguments.

Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>

* workflows/hil.yml: Update the HIL runners tags.

Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>

* workflows/hil.yml: Remove the Check Artifacts step.  That was only
useful for debugging.

Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>

* Pull request/Issue Templates and Readme update (espressif#6577)

* Templates and readme

* Templates_and_readme

* Delete libraries/RainMaker directory

* Delete tools/sdk/esp32/include/esp_rainmaker directory

* Delete tools/sdk/esp32s2/include/esp_rainmaker directory

* Delete tools/sdk/esp32s3/include/esp_rainmaker directory

* Delete tools/sdk/esp32c3/include/esp_rainmaker directory

Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com>
Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com>
Co-authored-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com>
Jason2866 added a commit to tasmota/arduino-esp32 that referenced this pull request Apr 24, 2022
* Delete stale.yml

* IDF release/v4.4 b8050b365e (espressif#6594)

* Update camera example to support face detection and recognition (espressif#6603)

Fixes: espressif#6508

* Change pinMode OUTPUT to INPUT_OUTPUT (espressif#6602)

* Change OUTPUT to INPUT_OUTPUT

To match the official Arduino API.

* Changed type of LEDC frequency from double to uint32_t (espressif#6570)

* BUGFIX: FS read + speed improvements for SD (espressif#6569)

* Revert "Edited VFSFileImpl::read to use both read/fread (espressif#6456)"

This reverts commit 7b89b39.

* Added default file buffer size + function to change it by user

* workflows/publish.yml: Run the workflow on success and failure only. (espressif#6531)

* workflows/publish.yml: Run the workflow on success and failure only.
This prevents trying to run when the trigger was cancelled or skipped.
In these cases there will be no event file to upload.

Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>

* scripts/sketch_utils.sh: Move the logic that gets the build dir after
the part that retrieves the arguments.

Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>

* workflows/hil.yml: Update the HIL runners tags.

Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>

* workflows/hil.yml: Remove the Check Artifacts step.  That was only
useful for debugging.

Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>

* Pull request/Issue Templates and Readme update (espressif#6577)

Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com>
Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com>
Co-authored-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com>
@P-R-O-C-H-Y P-R-O-C-H-Y deleted the BUGFIX-FS-read+speed_improvements branch April 19, 2023 11:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area: Libraries Issue is related to Library support. Area: Performance Issue related to performance problems and improvements Priority: High 🗻 Issues with high priority which needs to be solved first.
Projects
Development

Successfully merging this pull request may close these issues.

2.0.3 RC1 issues with ESPAsyncWebServer Processor
2 participants