Comments (35)
We're able to repro, and are working on a fix. In the meatime, as a workaround, if you can send an occasional empty string or other NOOP message to the channel (every minute), this should workaround the issue until we've provided the fix.
from objective-c.
Also @laynemoseley can you confirm if you are on physical hardware or simulator when the issue occurs, on WiFi, or cellular network? If Cellular network, which one, and what speed / technology are you connected at?
from objective-c.
We've only seen it on the simulator while connected to Wifi.
from objective-c.
Thanks for looking into this!
from objective-c.
@laynemoseley just an update, we're working on a fix for this, thanks for your patience!
from objective-c.
@geremyCohen do you have an ETA for the fix?
from objective-c.
@laynemoseley @perrypoint we're working the weekend on this, I'll have an update by Monday for you.
from objective-c.
@laynemoseley just to confirm the issue, If you send traffic to the client after receiving the above log messages, can you confirm it no longer receives messages correctly? Or are you just seeing the above log message cycle with no other symptoms?
from objective-c.
That is correct. After the these log messages are output, the client no longer receives any messages.
from objective-c.
same problem here and not only in the simulator. Waiting for a fix too, thanks.
from objective-c.
Any updates or a branch to test? CC/ @stephenlb
Since my app only subscribes to channels, there isn't much of a work around for me at the moment.
from objective-c.
Hi @mattetti
We are still working on update.
Is his issue reproducible when SSL is on? Or you always test with SSL on?
from objective-c.
Also @mattetti if you send a publish every 30s (of any data) on the line, do you still get into this state? Or only when the channel is idle?
from objective-c.
@parfeon SSL is always on as per the documentation. Our code doesn't implement the shouldUseSecureConnection
delegate so I assume that SSL is always used.
@geremyCohen Our client doesn't have the possibility to publish, only to subscribe. Are you asking me to publish events every 30s on the client channel and see if that helps idling clients?
from objective-c.
@geremyCohen Our clients don't publish either...
from objective-c.
@laynemoseley @mattetti you don't need to publish from the client, publish from the server (just have the iPhone connected and subscribed). The way I understood the current workaround, was that you can avoid the client entering this state by giving it some traffic to consume continuously (start with every 30s). Can you confirm this works for you?
from objective-c.
@geremyCohen Ah, I misunderstood the workaround. We don't be able to use this workaround unfortunately. We'll have to wait for the fix.
from objective-c.
@geremyCohen I could def. try that but I don't think that would help when the client goes to sleep. Right now, I've hacked a reconnection when the machine wakes up but I have a hard time reliably reproducing the lack of reconnection. I'm not sure how long it takes the client to lose its connection. Last week you mentioned you found the issue, was that a false positive?
from objective-c.
@mattetti @laynemoseley thanks for your patience on this guys, we've been working the weekend on it, and have made great progress refactoring the suspected core code, as well as improving the logging to help narrow down where the issue lies.
We're wrapping up the coding now, and we expect to begin formally testing a fix within 24 hours.
Thanks again for your patience.
geremy
from objective-c.
Thanks @geremyCohen
from objective-c.
@geremyCohen Thanks a lot for getting to the bottom of this. 😄
from objective-c.
@mattetti @laynemoseley based on current progress, we plan to have a new version available in your hands tomorrow for you to evaluate. thanks again for your patience on this.
from objective-c.
thanks for the update.
On Tue, Aug 6, 2013 at 11:56 AM, Geremy Cohen [email protected]:
@mattetti https://github.com/mattetti @laynemoseleyhttps://github.com/laynemoseleybased on current progress, we plan to have a new version available in your
hands tomorrow for you to evaluate. thanks again for your patience on this.—
Reply to this email directly or view it on GitHubhttps://github.com//issues/23#issuecomment-22202235
.
from objective-c.
@mattetti @laynemoseley this bug seems fixed. been testing all day to be sure what we give you is solid.
found some minor bugs in testing, we'll be addressing them tomorrow. if you are chomping at the bit to begin testing this new version, you can grab current code from https://github.com/pubnub/objective-c/tree/refinement-connection/iOS/3.4/pubnub/libs/PubNub otherwise I will ping you tomorrow when all known issues have been fixed.
I would suggest waiting until tomorrow, but feel free to begin kicking tires. Will update then.
geremy
Thanks again for patience.
from objective-c.
Thanks a lot @geremy I'll wait until tomorrow to test the fixes and push a
new release.
On Wed, Aug 7, 2013 at 8:44 PM, Geremy Cohen [email protected]:
@mattetti https://github.com/mattetti @laynemoseleyhttps://github.com/laynemoseleythis bug seems fixed. been testing all day to be sure what we give you is
solid.found some minor bugs in testing, we'll be addressing them tomorrow. if
you are chomping at the bit to begin testing this new version, you can grab
current code from
https://github.com/pubnub/objective-c/tree/refinement-connection/iOS/3.4/pubnub/libs/PubNubotherwise I will ping you tomorrow when all known issues have been fixed.I would suggest waiting until tomorrow, but feel free to begin kicking
tires. Will update then.
geremyThanks again for patience.
—
Reply to this email directly or view it on GitHubhttps://github.com//issues/23#issuecomment-22300335
.
from objective-c.
@mattetti @laynemoseley just an update, we're almost done with the remaining showstopper for this release. New target is for tomorrow.
This was initially intended to be more bug fix and less refactor/rewrite, but we've ended up refactoring a bit more than initially planned. This will result in code that is more efficient and more resilient to flapping as well as other intermittent network conditions. The new code will also be easier to troubleshoot moving forward, as we're adding more state info on the logging side.
Thanks again for your patience on this, we're doing everything we can to get you something stable for tomorrow.
geremy
from objective-c.
Awesome, thanks for the hard work!
On Thu, Aug 8, 2013 at 7:31 PM, Geremy Cohen [email protected]
wrote:
@mattetti @laynemoseley just an update, we're almost done with the remaining showstopper for this release. New target is for tomorrow.
This was initially intended to be more bug fix and less refactor/rewrite, but we've ended up refactoring a bit more than initially planned. This will result in code that is more efficient and more resilient to flapping as well as other intermittent network conditions. The new code will also be easier to troubleshoot moving forward, as we're adding more state info on the logging side.
Thanks again for your patience on this, we're doing everything we can to get you something stable for tomorrow.geremy
Reply to this email directly or view it on GitHub:
#23 (comment)
from objective-c.
@mattetti @laynemoseley at this point, I'd like to migrate this ticket to our Zen Desk system (as we've decided to version this as its own major release) I will contact you via helpdesk by Monday on status for this, this is turning out to be a long weekend for us. Thanks again for your patience.
from objective-c.
@geremyCohen do you need my client details to add me to Zen Desk?
from objective-c.
Matt, I got your info, I am just doing some final testing right now on
the client. Standby, trying to get this out today.
geremy
On 8/12/13 2:44 PM, Matt Aimonetti wrote:
@geremyCohen https://github.com/geremyCohen do you need my client
details to add me to Zen Desk?—
Reply to this email directly or view it on GitHub
#23 (comment).
from objective-c.
Geremy,
We confirmed the updated code in the 'refinement-connection' branch fixed our issue, but we are getting all kinds of pressure from our partner DirecTV about when this will be in a release - they are supposed to release themselves in a few weeks and are afraid to move forward unless they have this fix in an official release. We are of course caught in the middle since our service depends on PubNub - and they are giving us all kinds of heat.
Can you give me an ETA for a release including the refinement-connection fix?
thanks,
jim
Can you give me a target release date for having this back in the
On Aug 12, 2013, at 3:57 PM, Geremy Cohen [email protected] wrote:
Matt, I got your info, I am just doing some final testing right now on
the client. Standby, trying to get this out today.
geremyOn 8/12/13 2:44 PM, Matt Aimonetti wrote:
@geremyCohen https://github.com/geremyCohen do you need my client
details to add me to Zen Desk?—
Reply to this email directly or view it on GitHub
#23 (comment).—
Reply to this email directly or view it on GitHub.
from objective-c.
@perrypoint - We'll be merging this to master within the next week or so. In the meantime, it is 100% supported by PubNub. Please contact me at [email protected] so we can sync up directly on formal release.
geremy
from objective-c.
@geremyCohen Any way we could get an exact date on when you'll be merging into master? We need to get this included in an upcoming release.
from objective-c.
@laynemoseley We'll be reaching out to you via our helpdesk to get more info on your release schedule so we can be sure to have this ready for you. Please standby.
from objective-c.
@laynemoseley is this issue fixed for you or not?
P.S. We also released latest version not so long ago (3.5.3) which you can check and play with.
from objective-c.
Related Issues (20)
- Crash using library : [__NSMallocBlock__ handleClientConnectionStateChange:]: unrecognized selector sent to instance 0x17044e460 HOT 3
- Decryption error HOT 1
- Can't disable logger HOT 6
- Crash: EXC_CRASH (SIGSEGV) SIGNAL 11 Segmentation fault: 11
- 3.6.2 Released!
- requestHistoryForChannel: callback never called HOT 4
- When is the mentioned update for aps / APNs handling going to come out? HOT 6
- PubNub Crashes upon subscription HOT 4
- 3.6.3 Released!
- Retrieve Channel History HOT 2
- TableLoad before Request History HOT 3
- Multiple channel subscriptions with different cipher, subscribe, and auth keys HOT 1
- Python - publishing to APNS HOT 1
- Has any one got this working with swift and cocoapods? HOT 2
- Several crashes in 3.7.10.4 HOT 6
- PNJSONSerialization replacing NSNull characters during serialization prevents proper deserialization HOT 1
- PNImports.h file not found HOT 10
- Can't update sdk from COcoa pods any more HOT 4
- Does character ":" (colon) has special meaning in the channel name? HOT 5
- Cannot use the library in an app extension. HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from objective-c.