-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DynamoDB Session Handler exceptions #42
Comments
For [1], I just committed something that should fix that: 807cec5. Seems related to #13. For [2], hmmm... off hand, I have no idea, so I'll have to investigate. If you are able to debug a little and find out which part of the session handler (writes, reads, etc.) it is happening in that would help. Also, some questions:
|
Thanks for the quick response! On a Friday! |
Yeah, I'd try using a shutdown function or custom exception handler and see if you can get a better stack trace or |
Didn't do anything different to get this output, so not sure if it's related or not but it looks to be a write to me...? |
Thanks for the information, ralph-tice. The problem is that, for some reason, the request is being resent internally inside of cURL. This could be caused by some sort of intermittent networking issue. When cURL needs to resend data that is previously sent, it attempts to rewind the data stream. Unfortunately, PHP does not allow a custom seek or ioctl function to be passed to cURL, so when cURL attempts to rewind our custom stream, it fails. Here's the related issue on PHP.net-- I would be grateful if you upvoted this issue: https://bugs.php.net/bug.php?id=47204 I've disabled the use of streaming requests when interacting with JSON services like Amazon DynamoDB. This will prevent cURL error 65 from occurring because cURL is able to rewind a string of POST data internally. This fix will be present in the next release. |
Hi, I'm having this exact problem when doing file uploads to Amazon S3 using the SDK. Aws \ Common \ Exception \ TransferException Is this related? I've only started seeing these errors today, and they are intermittent. |
PHP Fatal error: Undefined class constant 'Aws\\Common\\Client\\UserAgentListener::OPTION' in /var/www/dynamodb_session_handler/vendor/aws/aws-sdk-php/src/Aws/DynamoDb/Session/LockingStrategy/AbstractLockingStrategy.php on line 82
PHP Fatal error: Cannot declare self-referencing constant 'Aws\\Common\\Client\\UserAgentListener::OPTION' in /var/www/dynamodb_session_handler/vendor/aws/aws-sdk-php/src/Aws/DynamoDb/Session/LockingStrategy/AbstractLockingStrategy.php on line 82
PHP Fatal error: Uncaught exception 'Guzzle\Http\Exception\CurlException' with message '[curl] 65: necessary data rewind wasn't possible [url] https://dynamodb.us-east-1.amazonaws.com/' in /var/www/dynamodb_session_handler/vendor/guzzle/guzzle/src/Guzzle/Http/Curl/CurlMulti.php:595\nStack trace: #0 /var/www/dynamodb_session_handler/vendor/guzzle/guzzle/src/Guzzle/Http/Curl/CurlMulti.php(526): Guzzle\Http\Curl\CurlMulti->isCurlException(Object(Guzzle\Http\Message\EntityEnclosingRequest), Object(Guzzle\Http\Curl\CurlHandle), Array) #1 /var/www/dynamodb_session_handler/vendor/guzzle/guzzle/src/Guzzle/Http/Curl/CurlMulti.php(458): Guzzle\Http\Curl\CurlMulti->processResponse(Object(Guzzle\Http\Message\EntityEnclosingRequest), Object(Guzzle\Http\Curl\CurlHandle), Array) #2 /var/www/dynamodb_session_handler/vendor/guzzle/guzzle/src/Guzzle/Http/Curl/CurlMulti.php(418): Guzzle\Http\Curl\CurlMulti->processMessages() #3 /var/www/dynamodb_session_handler/vendor/guzzle/guzzle/src/Guzzle/Http/Curl/CurlMulti.php(278): Guzzle\Http\Curl\CurlMu in /var/www/dynamodb_session_handler/vendor/guzzle/guzzle/src/Guzzle/Http/Curl/CurlMulti.php on line 595
What would cause this? I'm on PHP 5.3.19...
The text was updated successfully, but these errors were encountered: