1. 07 Dec, 2022 1 commit
    • Sina Mahmoodi's avatar
      graphql, node, rpc: improve HTTP write timeout handling (#25457) · f20eba42
      Sina Mahmoodi authored
      Here we add special handling for sending an error response when the write timeout of the
      HTTP server is just about to expire. This is surprisingly difficult to get right, since is
      must be ensured that all output is fully flushed in time, which needs support from
      multiple levels of the RPC handler stack:
      
      The timeout response can't use chunked transfer-encoding because there is no way to write
      the final terminating chunk. net/http writes it when the topmost handler returns, but the
      timeout will already be over by the time that happens. We decided to disable chunked
      encoding by setting content-length explicitly.
      
      Gzip compression must also be disabled for timeout responses because we don't know the
      true content-length before compressing all output, i.e. compression would reintroduce
      chunked transfer-encoding.
      f20eba42
  2. 06 Dec, 2022 1 commit
    • Felix Lange's avatar
      cmd/devp2p: add --extaddr flag (#26312) · b44abf56
      Felix Lange authored
      The new flag allows configuring an explicit endpoint which is to be
      announced in the DHT. This feature was originally developed for the
      discv5 wormhole experiment (#25798), but it's useful in other contexts
      as well.
      b44abf56
  3. 05 Dec, 2022 4 commits
  4. 03 Dec, 2022 1 commit
    • Sina Mahmoodi's avatar
      core: drop legacy receipt types (#26225) · 10347c6b
      Sina Mahmoodi authored
      This PR drops the legacy receipt types, the freezer-migrate command and the startup check. The previous attempt #22852 at this failed because there were users who still had legacy receipts in their db, so it had to be reverted #23247. Since then we added a command to migrate legacy dbs #24028.
      
      As of the last hardforks all users either must have done the migration, or used the --ignore-legacy-receipts flag which will stop working now.
      10347c6b
  5. 02 Dec, 2022 1 commit
  6. 30 Nov, 2022 1 commit
  7. 28 Nov, 2022 7 commits
  8. 25 Nov, 2022 4 commits
  9. 24 Nov, 2022 4 commits
  10. 22 Nov, 2022 1 commit
  11. 21 Nov, 2022 2 commits
  12. 17 Nov, 2022 6 commits
  13. 16 Nov, 2022 3 commits
  14. 15 Nov, 2022 1 commit
    • Felix Lange's avatar
      rpc: fix connection tracking set in Server (#26180) · ae421480
      Felix Lange authored
      rpc: fix connection tracking in Server
      
      When upgrading to mapset/v2 with generics, the set element type used in
      rpc.Server had to be changed to *ServerCodec because ServerCodec is not
      'comparable'. While the distinction is technically correct, we know all
      possible ServerCodec types, and all of them are comparable. So just use
      a map instead.
      ae421480
  15. 14 Nov, 2022 3 commits
    • Felix Lange's avatar
      common/lru: add generic LRU implementation (#26162) · 9afc6816
      Felix Lange authored
      It seems there is no fully typed library implementation of an LRU cache.
      So I wrote one. Method names are the same as github.com/hashicorp/golang-lru,
      and the new type can be used as a drop-in replacement.
      
      Two reasons to do this:
      
      - It's much easier to understand what a cache is for when the types are right there.
      - Performance: the new implementation is slightly faster and performs zero memory
         allocations in Add when the cache is at capacity. Overall, memory usage of the cache
         is much reduced because keys are values are no longer wrapped in interface.
      9afc6816
    • Jolly Zhao's avatar
    • Martin Holst Swende's avatar
      eth/filters: send rpctransactions in pending-subscription (#26126) · 8c5ce110
      Martin Holst Swende authored
      This PR changes the pending tx subscription to return RPCTransaction types instead of normal Transaction objects. This will fix the inconsistencies with other tx returning API methods (i.e. getTransactionByHash), and also fill in the sender value for the tx.
      
      co-authored by @s1na 
      8c5ce110