Ticket #3 (closed defect: fixed)

Opened 7 years ago

Last modified 7 years ago

POST/PUT fails for certain files (incl. WebDAV)

Reported by: dsandler Assigned to: dsandler
Priority: high Milestone:
Component: ftproxy Version: 0.5.0
Severity: normal Keywords: webdav ical proxy poolboy
Cc: Java version: Unknown
Subversion change number (if known):

Description

Symptom: Some things (such as iCal calendars) fail with a timeout when PUTting or POSTing through the proxy. iCal has delivered all its data, yet Poolboy is still waiting for more based on the Content-length: header.

Suspicion: BufferedReader.read() is returning the number of Unicode chars read off the stream; unfortunately, the Content-length: header is in bytes. Probably need to restructure the innards of Poolboy to use InputStreams? that can operate on byte[] buffers instead of char[] buffers.

Additional debugging info:

[Poolboy.run] POST/PUT content-length = 37306
[Poolboy.run] read 0/37306 bytes (1448 just now)
[Poolboy.run] read 1448/37306 bytes (600 just now)
[Poolboy.run] read 2048/37306 bytes (1448 just now)
[Poolboy.run] read 3496/37306 bytes (600 just now)
[Poolboy.run] read 4096/37306 bytes (1448 just now)
[Poolboy.run] read 5544/37306 bytes (600 just now)
[Poolboy.run] read 6144/37306 bytes (1448 just now)
[Poolboy.run] read 7592/37306 bytes (600 just now)
[Poolboy.run] read 8192/37306 bytes (1445 just now)
[Poolboy.run] read 9637/37306 bytes (600 just now)
[Poolboy.run] read 10237/37306 bytes (1448 just now)
[Poolboy.run] read 11685/37306 bytes (598 just now)
[Poolboy.run] read 12283/37306 bytes (1448 just now)
[Poolboy.run] read 13731/37306 bytes (600 just now)
[Poolboy.run] read 14331/37306 bytes (1448 just now)
[Poolboy.run] read 15779/37306 bytes (600 just now)
[Poolboy.run] read 16379/37306 bytes (1448 just now)
[Poolboy.run] read 17827/37306 bytes (600 just now)
[Poolboy.run] read 18427/37306 bytes (1448 just now)
[Poolboy.run] read 19875/37306 bytes (600 just now)
[Poolboy.run] read 20475/37306 bytes (1448 just now)
[Poolboy.run] read 21923/37306 bytes (600 just now)
[Poolboy.run] read 22523/37306 bytes (1448 just now)
[Poolboy.run] read 23971/37306 bytes (598 just now)
[Poolboy.run] read 24569/37306 bytes (1448 just now)
[Poolboy.run] read 26017/37306 bytes (600 just now)
[Poolboy.run] read 26617/37306 bytes (1448 just now)
[Poolboy.run] read 28065/37306 bytes (1448 just now)
[Poolboy.run] read 29513/37306 bytes (1448 just now)
[Poolboy.run] read 30961/37306 bytes (1448 just now)
[Poolboy.run] read 32409/37306 bytes (1448 just now)
[Poolboy.run] read 33857/37306 bytes (1448 just now)
[Poolboy.run] read 35305/37306 bytes (1448 just now)
[Poolboy.run] read 36753/37306 bytes (546 just now)
## ... waits ... ##
[Poolboy.run] parsing form post: Content-length was 37306 but read() returned -1 before all content had been read.
[Poolboy.run] What we got was: >>>
## entire iCal object ##

Change History

10/06/05 13:10:58 changed by dsandler

  • version changed from 0.6b to 0.5.0.

10/06/05 13:15:59 changed by dsandler

  • priority changed from normal to high.
  • summary changed from POST/PUT fails for certain files to POST/PUT fails for certain files (incl. WebDAV).

10/07/05 21:34:19 changed by dsandler

  • status changed from new to closed.
  • java_version set to Unknown.
  • resolution set to fixed.

Fixed with changeset [1]. Will roll out a new point-release shortly.

10/07/05 21:34:36 changed by dsandler

Er, rather, changeset [9].