Coder Social home page Coder Social logo

Comments (12)

mib1185 avatar mib1185 commented on July 2, 2024 2

Hi @bdraco
Your suggestion sounds reasonable and I'm happy to implement it - since I'm on a business trip next week, I can care about it earliest the week after.

from core.

BoneheadFraggle avatar BoneheadFraggle commented on July 2, 2024 2

Feedback: Seems to work 100% now (HA 2024.6.2).

Thank you very much!

from core.

bdraco avatar bdraco commented on July 2, 2024 1

aiohttp.ClientTimeout(total=40, connect=15) would probably fix this.

Since the lib already knows about aiohttp sessions, I think it would be ok to accept a ClientTimeout object as the timeout or a float/int

from core.

mib1185 avatar mib1185 commented on July 2, 2024 1

i found some spare time in between preparing for the business trip ๐Ÿ™ˆ

from core.

home-assistant avatar home-assistant commented on July 2, 2024

Hey there @hacf-fr, @Quentame, @mib1185, mind taking a look at this issue as it has been labeled with an integration (synology_dsm) you are listed as a code owner for? Thanks!

Code owner commands

Code owners of synology_dsm can trigger bot actions by commenting:

  • @home-assistant close Closes the issue.
  • @home-assistant rename Awesome new title Renames the issue.
  • @home-assistant reopen Reopen the issue.
  • @home-assistant unassign synology_dsm Removes the current integration label and assignees on the issue, add the integration domain after the command.
  • @home-assistant add-label needs-more-information Add a label (needs-more-information, problem in dependency, problem in custom component) to the issue.
  • @home-assistant remove-label needs-more-information Remove a label (needs-more-information, problem in dependency, problem in custom component) on the issue.

(message by CodeOwnersMention)


synology_dsm documentation
synology_dsm source
(message by IssueLinks)

from core.

bdraco avatar bdraco commented on July 2, 2024

I believe thats one of the ones with the old slower Marvell chips. Maybe 30s is even too low for it when its under load. Synology's API internals are very poorly optimized. We ended up bumping up the timeout a bit ago, but maybe its not enough. Maybe we need to go to 40s

from core.

bdraco avatar bdraco commented on July 2, 2024

What does the startup time look like ?

System -> Settings -> Repairs -> 3 dots in the upper right -> Integration startup time

from core.

BoneheadFraggle avatar BoneheadFraggle commented on July 2, 2024

image

The general load on NAS01 is ~5% CPU except during backups where it peaks at 100%, illustrated with fill(previous) below

image

from core.

bdraco avatar bdraco commented on July 2, 2024

We increased it to 30 in #116836

I'm hesitant to increase it more without splitting the timeout in the library so we have a lower connect timeout and a higher read timeout as we might get into a predicament where we block startup for too long if we increase it anymore

from core.

bdraco avatar bdraco commented on July 2, 2024

I think we could set the connect timeout to 15 and the read/write timeout to 40s and be ok

https://github.com/mib1185/py-synologydsm-api/blob/b6166f77504f9d705b6b77cd458e39e21e44d892/src/synology_dsm/synology_dsm.py#L70

But we would need a change in the library to be able to pass both

from core.

bdraco avatar bdraco commented on July 2, 2024

Right now its implemented as a total timeout https://github.com/mib1185/py-synologydsm-api/blob/b6166f77504f9d705b6b77cd458e39e21e44d892/src/synology_dsm/synology_dsm.py#L77

from core.

bdraco avatar bdraco commented on July 2, 2024

I'm not the codeowner here so above it just my suggestion. Let's wait for one of the codeowners to respond before proceeding

from core.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.