<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-circmgr/src/hspool.rs, branch ios-sqlite-hacks</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=ios-sqlite-hacks</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=ios-sqlite-hacks'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2023-07-07T13:00:31Z</updated>
<entry>
<title>circmgr: Use event_report!() and similar macros</title>
<updated>2023-07-07T13:00:31Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-07-06T17:52:07Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=a441b4e9d3ab3dde2b304d9bf721aa2c7817a7f5'/>
<id>urn:sha1:a441b4e9d3ab3dde2b304d9bf721aa2c7817a7f5</id>
<content type='text'>
This simplifies our logging a little, and implements part of
</content>
</entry>
<entry>
<title>tor-circmgr: Provide estimate_timeout as a method on HsCircPool</title>
<updated>2023-06-29T16:41:49Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2023-06-29T13:46:43Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=a7d1efe2cec0815c6be5f5a1e7bbd09295d8ccf0'/>
<id>urn:sha1:a7d1efe2cec0815c6be5f5a1e7bbd09295d8ccf0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>circmgr: Refactor duplicate logic.</title>
<updated>2023-06-28T19:28:52Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-06-27T19:46:24Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=02878518b8453dd60236ddd5078c74194da6dd5f'/>
<id>urn:sha1:02878518b8453dd60236ddd5078c74194da6dd5f</id>
<content type='text'>
These two functions are only slightly different, and benefit from
taking a Fn.
</content>
</entry>
<entry>
<title>circmgr: Remove a "TODO HS" about path restrictions.</title>
<updated>2023-06-28T19:28:52Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-06-27T19:43:21Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=6affb50c1a9cd194f45cd9a0433ab9a652e387c3'/>
<id>urn:sha1:6affb50c1a9cd194f45cd9a0433ab9a652e387c3</id>
<content type='text'>
I looked through the C tor source code and couldn't find any
additional path restrictions.
</content>
</entry>
<entry>
<title>circmgr: Defer two "TODO HS" in hspool</title>
<updated>2023-06-28T19:28:52Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-06-27T19:20:50Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=d32ba9ed18ae3d0ce5750c46867db55c46c5a318'/>
<id>urn:sha1:d32ba9ed18ae3d0ce5750c46867db55c46c5a318</id>
<content type='text'>
One of these is test-related; one is vanguards-related.
</content>
</entry>
<entry>
<title>hspool: Use let-else pattern; our MSRV permits it.</title>
<updated>2023-06-22T17:21:36Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-06-22T17:21:36Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=5ce7221f06164dd3ccf65b5250dd99716421b0ed'/>
<id>urn:sha1:5ce7221f06164dd3ccf65b5250dd99716421b0ed</id>
<content type='text'>
</content>
</entry>
<entry>
<title>circmgr: Use path_ref() instead of path().</title>
<updated>2023-06-22T13:45:47Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-06-22T13:26:16Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=1bb298d1e6fc26a5c927a8b0c01b51626ebe81a0'/>
<id>urn:sha1:1bb298d1e6fc26a5c927a8b0c01b51626ebe81a0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>circmgr: Make hspool size dynamic</title>
<updated>2023-06-16T16:11:49Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-06-16T15:34:54Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=686d5cf2093322e4408513daf832af6693fa67a9'/>
<id>urn:sha1:686d5cf2093322e4408513daf832af6693fa67a9</id>
<content type='text'>
Previously we'd always try to keep 8 circuits ready.  That doesn't
make sense if we are super-busy.  Instead, if we run out of
circuits, we double the amount that we try to keep ready, and if we
never go under 80% of our target number, we half the number we try
to keep ready.

We limit the rate of change here, to make sure that we aren't
flapping too much or shrinking too aggressively.

This algorithm is still a mite arbitrary, and will need tuning in
the future.
</content>
</entry>
<entry>
<title>circmgr::hspool: Move the Mutex into an intermediary Inner struct</title>
<updated>2023-06-16T15:42:38Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-06-16T13:41:09Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=69179c5dfe1889ee77003fc491f2dfd05d7b7428'/>
<id>urn:sha1:69179c5dfe1889ee77003fc491f2dfd05d7b7428</id>
<content type='text'>
This will be helpful as we complexify the pool behavior a bit.
</content>
</entry>
<entry>
<title>circmgr: Remove TODOS about retrying.</title>
<updated>2023-06-16T15:40:00Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-06-16T13:30:31Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=1c470fd4832e1ed57b442ba761874e0a9f4bb8d6'/>
<id>urn:sha1:1c470fd4832e1ed57b442ba761874e0a9f4bb8d6</id>
<content type='text'>
These functions' documentation already says that they don't retry,
and hsclient appears to be where we are concentrating our retry
efforts.
</content>
</entry>
</feed>
