When both Foolscap and HTTP API are used on same StorageServer, there are some bad interactions #3905

Closed
opened 2022-06-30 19:17:42 +00:00 by itamarst · 2 comments

Getting the following traceback, suggesting bad interaction in cleanup code (HTTP API is probably assuming only it can create buckets, or something):

  /home/itamarst/devel/tahoe-lafs/venv3/lib/python3.8/site-packages/twisted/internet/defer.py(662)_runCallbacks()
-> current.result = callback(current.result, *args, **kw)
  /home/itamarst/devel/tahoe-lafs/venv3/lib/python3.8/site-packages/foolscap/broker.py(584)<lambda>()
-> d.addCallback(lambda res: self._doCall(delivery))
  /home/itamarst/devel/tahoe-lafs/venv3/lib/python3.8/site-packages/foolscap/broker.py(619)_doCall()
-> return obj.doRemoteCall(delivery.methodname, args, kwargs)
  /home/itamarst/devel/tahoe-lafs/venv3/lib/python3.8/site-packages/foolscap/referenceable.py(61)doRemoteCall()
-> res = meth(*args, **kwargs)
  /home/itamarst/devel/tahoe-lafs/src/allmydata/storage/immutable.py(513)remote_abort()
-> return self._bucket_writer.abort()
  /home/itamarst/devel/tahoe-lafs/src/allmydata/storage/immutable.py(491)abort()
-> self.ss.bucket_writer_closed(self, 0)
  /home/itamarst/devel/tahoe-lafs/src/allmydata/storage/server.py(411)bucket_writer_closed()
-> handler(bw)
> /home/itamarst/devel/tahoe-lafs/src/allmydata/storage/http_server.py(191)remove_write_bucket()
-> storage_index, share_number = self._bucketwriters.pop(bucket)
Getting the following traceback, suggesting bad interaction in cleanup code (HTTP API is probably assuming only it can create buckets, or something): ``` /home/itamarst/devel/tahoe-lafs/venv3/lib/python3.8/site-packages/twisted/internet/defer.py(662)_runCallbacks() -> current.result = callback(current.result, *args, **kw) /home/itamarst/devel/tahoe-lafs/venv3/lib/python3.8/site-packages/foolscap/broker.py(584)<lambda>() -> d.addCallback(lambda res: self._doCall(delivery)) /home/itamarst/devel/tahoe-lafs/venv3/lib/python3.8/site-packages/foolscap/broker.py(619)_doCall() -> return obj.doRemoteCall(delivery.methodname, args, kwargs) /home/itamarst/devel/tahoe-lafs/venv3/lib/python3.8/site-packages/foolscap/referenceable.py(61)doRemoteCall() -> res = meth(*args, **kwargs) /home/itamarst/devel/tahoe-lafs/src/allmydata/storage/immutable.py(513)remote_abort() -> return self._bucket_writer.abort() /home/itamarst/devel/tahoe-lafs/src/allmydata/storage/immutable.py(491)abort() -> self.ss.bucket_writer_closed(self, 0) /home/itamarst/devel/tahoe-lafs/src/allmydata/storage/server.py(411)bucket_writer_closed() -> handler(bw) > /home/itamarst/devel/tahoe-lafs/src/allmydata/storage/http_server.py(191)remove_write_bucket() -> storage_index, share_number = self._bucketwriters.pop(bucket) ```
itamarst added the
unknown
normal
defect
n/a
labels 2022-06-30 19:17:42 +00:00
itamarst added this to the HTTP Storage Protocol milestone 2022-06-30 19:17:42 +00:00
Author
This will be fixed by <https://github.com/tahoe-lafs/tahoe-lafs/compare/3902-listen-storage-http>
itamarst added the
fixed
label 2022-07-15 16:56:55 +00:00
itamarst removed the
fixed
label 2022-07-15 16:57:39 +00:00
itamarst reopened this issue 2022-07-15 16:57:39 +00:00
Author
Closed by <https://github.com/tahoe-lafs/tahoe-lafs/pull/1220>
itamarst added the
fixed
label 2022-10-04 14:32:30 +00:00
Sign in to join this conversation.
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Reference: tahoe-lafs/trac-2024-07-25#3905
No description provided.