You might see that the Dropbox Community team have been busy working on some major updates to the Community itself! So, here is some info on what’s changed, what’s staying the same and what you can expect from the Dropbox Community overall.
Forum Discussion
Itay D.
9 years agoNew member | Level 1
Update your Dropbox Python Core SDK
Hi!
We have recently received a message indicating that the old version of the Python SDK we're using (1.6) is going to be deprecated on Aug 1, 2016.
Had a couple of quick questions about this:
- If we were to continue using the 1.6 SDK, what sort of issues should we expect? Will all API calls fail due to the expired certificate?
- Is there a way to work around this and continue using 1.6? Maybe a way to use the newer certificate with the old SDK?
The reason we’re asking this is that in the past, we’ve had some issues upgrading to newer Dropbox SDKs, and we’re on a tight schedule with other projects until Aug 1st.
Thanks!
Itay
- Greg-DB
Dropbox Staff
1. Yes, your API calls will fail once the Dropbox certificates are changed to ones not covered by the certificate file included in your copy of the SDK
2. We recommend upgrading the SDK entirely, and we'll be happy to help with any issues you have while doing so. Looking at the CHANGELOG.md file, I don't see any breaking changes between 1.6 and 2.x, so it should just be a matter of dropping in the new library.
That said, one alternative to upgrading the SDK entirely is to instead just replace the dropbox/trusted-certs.crt file in your copy with the one from the new versions of the SDK.
- Itay D.New member | Level 1
Thank you for the quick response, Gregory!
We understand that upgrading the entire SDK is the best option.
If for some reason we are unable to complete the upgrade and choose to replace the certificate, what is the safest way to test (before Aug 1) that it works?
Thanks!
- Greg-DB
Dropbox Staff
There isn't a great way to test this from your side ahead of time, since the actual change will just be a change in the certificate being used on the Dropbox API servers. As long as the upgrade (either SDK or just certificate file) works when you do the upgrade, we don't expect any issues when the new certificate is in use. That said, we'll of course be available and monitoring for issues when we make the change.
- Itay D.New member | Level 1
Hi Gregory,
After upgrading the Dropbox SDK, we ran into the following warning:
"Connection pool is full, discarding connection: api.dropbox.com"
It seems as though the number of concurrent connections exceeds the allocated number of connections allowed in the pool.
What is the best approach of handling this?
Thanks!
- Greg-DB
Dropbox Staff
The connection pooling should be handled for you. Are you getting failed requests when you see this warning logged?
If you'd like, you can control the max_connections by creating a session:
https://dropbox-sdk-python.readthedocs.io/en/master/moduledoc.html#dropbox.dropbox.create_session
and then passing that in when creating a client:
https://dropbox-sdk-python.readthedocs.io/en/master/moduledoc.html#dropbox.dropbox.Dropbox
- Itay D.New member | Level 1
I believe these connections are being dropped, so some of the work is not executed when it should be.
Any idea why the connection pooling is not working correctly?
If we use the session to increase the number of connections in the pool, it's very likely that we'll still see this warning, only less frequently (now the number of connections is 8, I believe).
Thanks!
- Greg-DB
Dropbox Staff
Can you elaborate on what you mean when you say you "believe these connections are being dropped, so some of the work is not executed when it should be"? Is there any error or output you can share?
- Itay D.New member | Level 1
These "connection dropped" logs are printed as part of /delta calls being made to the Dropbox API. What I mean is that I believe some of these requests never make it to the host api.dropbox.com since they are dropped by the urllib3 library.
Is there anything else we could try except creating a session to increase the max number of connections per pool?
Thanks!
- Greg-DB
Dropbox Staff
Specifically, I mean are you getting anything else from your app (e.g., other output or errors) that leads you to believe that's the case beyond that warning log message though? I believe that warning just indicates that a freed connection wasn't being returned to the pool because the pool is already full, not that any requests are being dropped. It doesn't indicate an issue that necessarily needs to be fixed, but you can increase the max_connections if you want to.
About Dropbox API Support & Feedback
Find help with the Dropbox API from other developers.
5,910 PostsLatest Activity: 3 days agoIf you need more help you can view your support options (expected response time for an email or ticket is 24 hours), or contact us on X or Facebook.
For more info on available support options for your Dropbox plan, see this article.
If you found the answer to your question in this Community thread, please 'like' the post to say thanks and to let us know it was useful!