Coder Social home page Coder Social logo

Comments (21)

chillaq avatar chillaq commented on May 28, 2024 2

I created support ticket #3004 for this issue.

from android-client.

NicoZelaya avatar NicoZelaya commented on May 28, 2024 1

Hi @bogdanzurac !

I'm really sorry to hear you're having issues, we're already taking a look at it and trying to repro. Will let you know once we have an update!
In the meantime, could you reach out via [email protected] so we can start a support ticket? It might be easier in case we need to ask you for some details of your application.

Thank you for your patience,
Nico.

from android-client.

cosminstefanxp avatar cosminstefanxp commented on May 28, 2024

Hey. We've also noticed this issue as well and is causing trouble for us in edge cases with poor connectivity. What is an ETA on fixing this?

from android-client.

cosminstefanxp avatar cosminstefanxp commented on May 28, 2024

CC @chillaq

from android-client.

chillaq avatar chillaq commented on May 28, 2024

Hi Guys, our ETA is within 2 weeks, will let you know once it is released.

Thanks
Bilal

from android-client.

NicoZelaya avatar NicoZelaya commented on May 28, 2024

Hi @bogdanzurac and @cosminstefanxp !

This fixes were already released, could you bump the SDK to the latest version on your end and let us know if you're still experiencing issues?

Thanks in advance,
Nico.

from android-client.

bogdanzurac avatar bogdanzurac commented on May 28, 2024

Hey @NicoZelaya. We've updated the SDK to the latest version and all seems good. Will let you know if we encounter any more issues. Thanks for your help guys!

from android-client.

NicoZelaya avatar NicoZelaya commented on May 28, 2024

Glad to hear! thank you very much for reporting back!

from android-client.

bogdanzurac avatar bogdanzurac commented on May 28, 2024

Hey guys. We've starting seeing again issues with the caching. We're currently using v2.6.2.
Tried to copy-paste as much info from logs as I could get:

Firstly, tested with perfect network connection:

1st run, the SDK manages to load the feature flags and they're correctly visible inside the app.

2020-06-29 15:27:54.923 31463-31577/com.example D/SplitSDK: Features have been updated
2020-06-29 15:27:54.925 31463-31594/com.example D/AsyncTask #1/SplitFeatureManager$init$$inlined$apply$lambda: SPLIT SDK READY

2nd run, the SDK fetches from cache and loads feature flags correctly, but receives an SDK TIMEOUT, then immediately returns SDK READY.

2020-06-29 15:32:04.264 31936-31936/com.example W/SplitSDK: getTreatmentWithConfig: the SDK is not ready, results may be incorrect. Make sure to wait for SDK readiness before using this method
2020-06-29 15:32:04.502 31936-32068/com.example D/AsyncTask #1/SplitFeatureManager$init: SPLIT SDK READY FROM CACHE
2020-06-29 15:32:04.644 31936-32021/com.example D/SplitSDK: Posting 6 Split impressions
2020-06-29 15:32:05.283 31936-32068/com.example E/AsyncTask #1/SplitFeatureManager$init$$inlined$apply$lambda: SPLIT SDK TIMEOUT
2020-06-29 15:32:08.320 31936-32025/com.example D/SplitSDK: My Segments have been updated
2020-06-29 15:32:08.881 31936-31936/com.example W/SplitSDK: getTreatmentWithConfig: split: you passed 'fp_survey' that does not exist in this environment, please double check what Splits exist in the web console.
2020-06-29 15:32:11.138 31936-32024/com.example D/SplitSDK: Features have been updated
2020-06-29 15:32:11.204 31936-32068/com.example D/AsyncTask #1/SplitFeatureManager$init$$inlined$apply$lambda: SPLIT SDK READY

3rd run, the SDK reads from cache, but some features flags are not read properly, such as storage_logging and mock_data, which in the previous 2 runs were read perfectly. The SDK TIMEOUT is still present.

2020-06-29 15:35:10.082 32627-32668/com.example D/SplitSDK: Connecting to SSE server
2020-06-29 15:35:10.111 32627-32668/com.example I/SplitSDK: Peridic recording tasks scheduled
2020-06-29 15:35:10.193 32627-32668/com.example I/SplitSDK: Android SDK initialized!
2020-06-29 15:35:10.232 32627-32709/com.example D/SplitSDK: Posting 12 Split impressions
2020-06-29 15:35:10.261 32627-32730/com.example D/AsyncTask #1/SplitFeatureManager$init: SPLIT SDK READY FROM CACHE
2020-06-29 15:35:10.298 32627-32627/com.example W/SplitSDK: getTreatmentWithConfig: split: you passed 'storage_logging' that does not exist in this environment, please double check what Splits exist in the web console.
2020-06-29 15:35:11.082 32627-32760/com.example W/SplitSDK: getTreatmentWithConfig: split: you passed 'mock_data' that does not exist in this environment, please double check what Splits exist in the web console.
2020-06-29 15:35:11.142 32627-32760/com.example W/SplitSDK: getTreatmentWithConfig: split: you passed 'mock_data' that does not exist in this environment, please double check what Splits exist in the web console.
2020-06-29 15:35:11.629 32627-32709/com.example D/SplitSDK: 12 split impressions sent
2020-06-29 15:35:11.629 32627-32709/com.example D/SplitSDK: Posting 12 Split impressions
2020-06-29 15:35:11.643 32627-32716/com.example D/SplitSDK: SSE Authentication done, now parsing token...
2020-06-29 15:35:11.667 32627-32716/com.example D/SplitSDK: Streaming enabled: true
2020-06-29 15:35:12.035 32627-305/com.example I/SplitSDK: Streaming connection opened
2020-06-29 15:35:12.036 32627-305/com.example I/SplitSDK: Sending polling disabled message through event broadcaster.
2020-06-29 15:35:12.037 32627-305/com.example D/SplitSDK: Disable polling event message received.
2020-06-29 15:35:12.037 32627-305/com.example I/SplitSDK: Polling disabled.
2020-06-29 15:35:12.039 32627-305/com.example I/SplitSDK: Disabling polling
2020-06-29 15:35:12.069 32627-305/com.example I/SplitSDK: Sending polling disabled message through event broadcaster.
2020-06-29 15:35:12.069 32627-305/com.example D/SplitSDK: Disable polling event message received.
2020-06-29 15:35:12.069 32627-305/com.example I/SplitSDK: Polling disabled.
2020-06-29 15:35:12.070 32627-305/com.example D/SplitSDK: Ignoring occupancy notification in channel: [?occupancy=metrics.publishers]control_sec
2020-06-29 15:35:12.368 32627-32730/com.example E/AsyncTask #1/SplitFeatureManager$init$$inlined$apply$lambda: SPLIT SDK TIMEOUT
2020-06-29 15:35:12.412 32627-32627/com.example D/SplitSDK: Connecting to SSE server
2020-06-29 15:35:12.472 32627-32709/com.example D/SplitSDK: My Segments have been updated
2020-06-29 15:35:12.597 32627-32716/com.example D/SplitSDK: Features have been updated
2020-06-29 15:35:12.632 32627-32730/com.example D/AsyncTask #1/SplitFeatureManager$init$$inlined$apply$lambda: SPLIT SDK READY
2020-06-29 15:35:12.754 32627-32709/com.example D/SplitSDK: SSE Authentication done, now parsing token...
2020-06-29 15:35:12.761 32627-32709/com.example D/SplitSDK: Streaming enabled: true

4th run, the SDK ready from cache, but has issues reading feature flags before and after SDK READY event. Major issue.

2020-06-29 15:38:16.250 2421-2511/com.example D/SplitSDK: Connecting to SSE server
2020-06-29 15:38:16.290 2421-2511/com.example I/SplitSDK: Peridic recording tasks scheduled
2020-06-29 15:38:16.361 2421-2511/com.example I/SplitSDK: Android SDK initialized!
2020-06-29 15:38:16.398 2421-2591/com.example D/AsyncTask #1/SplitFeatureManager$init: SPLIT SDK READY FROM CACHE
2020-06-29 15:38:16.423 2421-2578/com.example D/SplitSDK: Posting 5 Split impressions
2020-06-29 15:38:16.637 2421-2421/com.example W/SplitSDK: getTreatmentWithConfig: split: you passed 'storage_logging' that does not exist in this environment, please double check what Splits exist in the web console.
2020-06-29 15:38:17.465 2421-2639/com.example W/SplitSDK: getTreatmentWithConfig: split: you passed 'mock_data' that does not exist in this environment, please double check what Splits exist in the web console.
2020-06-29 15:38:17.487 2421-2639/com.example W/SplitSDK: getTreatmentWithConfig: split: you passed 'mock_data' that does not exist in this environment, please double check what Splits exist in the web console.
2020-06-29 15:38:17.875 2421-2578/com.example D/SplitSDK: 5 split impressions sent
2020-06-29 15:38:17.877 2421-2578/com.example D/SplitSDK: Posting 5 Split impressions
2020-06-29 15:38:17.893 2421-2575/com.example D/SplitSDK: SSE Authentication done, now parsing token...
2020-06-29 15:38:17.956 2421-2575/com.example D/SplitSDK: Streaming enabled: true
2020-06-29 15:38:18.494 2421-2591/com.example E/AsyncTask #1/SplitFeatureManager$init$$inlined$apply$lambda: SPLIT SDK TIMEOUT
2020-06-29 15:38:18.520 2421-2654/com.example I/SplitSDK: Streaming connection opened
2020-06-29 15:38:18.520 2421-2654/com.example I/SplitSDK: Sending polling disabled message through event broadcaster.
2020-06-29 15:38:18.521 2421-2654/com.example D/SplitSDK: Disable polling event message received.
2020-06-29 15:38:18.521 2421-2654/com.example I/SplitSDK: Polling disabled.
2020-06-29 15:38:18.530 2421-2654/com.example I/SplitSDK: Disabling polling
2020-06-29 15:38:18.558 2421-2654/com.example I/SplitSDK: Sending polling disabled message through event broadcaster.
2020-06-29 15:38:18.561 2421-2654/com.example D/SplitSDK: Disable polling event message received.
2020-06-29 15:38:18.561 2421-2654/com.example I/SplitSDK: Polling disabled.
2020-06-29 15:38:18.570 2421-2654/com.example D/SplitSDK: Ignoring occupancy notification in channel: [?occupancy=metrics.publishers]control_sec
2020-06-29 15:38:19.217 2421-2421/com.example W/SplitSDK: getTreatmentWithConfig: split: you passed 'fp_news_feed_new_design' that does not exist in this environment, please double check what Splits exist in the web console.
2020-06-29 15:38:19.370 2421-2421/com.example W/SplitSDK: getTreatmentWithConfig: split: you passed 'sp_v2' that does not exist in this environment, please double check what Splits exist in the web console.
2020-06-29 15:38:19.378 2421-2421/com.example W/SplitSDK: getTreatmentWithConfig: split: you passed 'food_feature_enabled' that does not exist in this environment, please double check what Splits exist in the web console.
2020-06-29 15:38:19.379 2421-2421/com.example W/SplitSDK: getTreatmentWithConfig: split: you passed 'food_feature_enabled' that does not exist in this environment, please double check what Splits exist in the web console.
2020-06-29 15:38:19.666 2421-2580/com.example D/SplitSDK: My Segments have been updated
2020-06-29 15:38:19.699 2421-2578/com.example D/SplitSDK: My Segments have been updated
2020-06-29 15:38:19.718 2421-2575/com.example D/SplitSDK: Features have been updated
2020-06-29 15:38:19.722 2421-2591/com.example D/AsyncTask #1/SplitFeatureManager$init$$inlined$apply$lambda: SPLIT SDK READY
2020-06-29 15:38:19.841 2421-2421/com.example W/SplitSDK: getTreatmentWithConfig: split: you passed 'sp_v2' that does not exist in this environment, please double check what Splits exist in the web console.
2020-06-29 15:38:19.849 2421-2421/com.example W/SplitSDK: getTreatmentWithConfig: split: you passed 'fp_news_feed_new_design' that does not exist in this environment, please double check what Splits exist in the web console.
2020-06-29 15:38:19.851 2421-2421/com.example W/SplitSDK: getTreatmentWithConfig: split: you passed 'fp_news_feed_new_design' that does not exist in this environment, please double check what Splits exist in the web console.
2020-06-29 15:38:20.044 2421-2421/com.example W/SplitSDK: getTreatmentWithConfig: split: you passed 'the_north' that does not exist in this environment, please double check what Splits exist in the web console.
2020-06-29 15:38:20.325 2421-2579/com.example D/SplitSDK: Features have been updated
2020-06-29 15:38:20.744 2421-2421/com.example W/SplitSDK: getTreatmentWithConfig: split: you passed 'the_north' that does not exist in this environment, please double check what Splits exist in the web console.
2020-06-29 15:38:21.070 2421-2421/com.example W/SplitSDK: getTreatmentWithConfig: split: you passed 'the_north' that does not exist in this environment, please double check what Splits exist in the web console.

Secondly, tested with poor network connection:

5th run (so the feature flags should still be in the local cache), complete chaos. Nothing works.

2020-06-29 15:41:51.229 3827-3871/com.example D/SplitSDK: Connecting to SSE server
2020-06-29 15:41:51.253 3827-3871/com.example I/SplitSDK: Peridic recording tasks scheduled
2020-06-29 15:41:51.321 3827-3871/com.example I/SplitSDK: Android SDK initialized!
2020-06-29 15:41:51.452 3827-3913/com.example D/SplitSDK: Posting 207 Split impressions
2020-06-29 15:41:51.571 3827-3827/com.example W/SplitSDK: getTreatmentWithConfig: the SDK is not ready, results may be incorrect. Make sure to wait for SDK readiness before using this method
2020-06-29 15:41:51.959 3827-3947/com.example W/SplitSDK: getTreatmentWithConfig: the SDK is not ready, results may be incorrect. Make sure to wait for SDK readiness before using this method
2020-06-29 15:41:51.973 3827-3947/com.example W/SplitSDK: getTreatmentWithConfig: the SDK is not ready, results may be incorrect. Make sure to wait for SDK readiness before using this method
2020-06-29 15:41:52.383 3827-3827/com.example D/SplitSDK: Connecting to SSE server
2020-06-29 15:41:53.187 3827-3916/com.example E/SplitSDK: Error while executing splits sync task: Newtwork error while fetching splitsError while fetching data from source https://sdk.split.io/api/splitChanges: Source not reachable
2020-06-29 15:41:53.187 3827-3916/com.example E/SplitSDK: Error while executing splits sync task: Retrying...
2020-06-29 15:41:53.304 3827-3913/com.example E/SplitSDK: Impressions recorder task: Some impressions couldn't be sent.Saving to send them in a new iterationError while sending data to https://events.split.io/api/testImpressions/bulk: Source not reachable
2020-06-29 15:41:53.540 3827-3965/com.example E/AsyncTask #1/SplitFeatureManager$init$$inlined$apply$lambda: SPLIT SDK TIMEOUT
2020-06-29 15:41:53.678 3827-3827/com.example W/SplitSDK: getTreatmentWithConfig: the SDK is not ready, results may be incorrect. Make sure to wait for SDK readiness before using this method
2020-06-29 15:41:53.753 3827-3827/com.example W/SplitSDK: getTreatmentWithConfig: the SDK is not ready, results may be incorrect. Make sure to wait for SDK readiness before using this method
2020-06-29 15:41:53.769 3827-3827/com.example W/SplitSDK: getTreatmentWithConfig: the SDK is not ready, results may be incorrect. Make sure to wait for SDK readiness before using this method
2020-06-29 15:41:54.694 3827-3916/com.example E/SplitSDK: Error while executing splits sync task: Newtwork error while fetching splitsError while fetching data from source https://sdk.split.io/api/splitChanges: Source not reachable
2020-06-29 15:41:54.694 3827-3916/com.example E/SplitSDK: Error while executing splits sync task: Retrying...
2020-06-29 15:41:54.776 3827-3917/com.example E/SplitSDK: Error while executing my segments sync task: Network error while retrieving my segments: Error while fetching data from source https://sdk.split.io/api/mySegments/app_split-91fee0f0-b4b7-4332-bbc1-f73f707b84f6: HttpException: Something happened while retrieving data: failed to connect to sdk.split.io/151.101.114.2 (port 443) from /10.0.2.16 (port 35422) after 3000ms
2020-06-29 15:41:54.776 3827-3917/com.example E/SplitSDK: Error while executing my segments sync task: Retrying...
2020-06-29 15:41:54.995 3827-3827/com.example W/SplitSDK: getTreatmentWithConfig: the SDK is not ready, results may be incorrect. Make sure to wait for SDK readiness before using this method
2020-06-29 15:41:55.014 3827-3827/com.example W/SplitSDK: getTreatmentWithConfig: the SDK is not ready, results may be incorrect. Make sure to wait for SDK readiness before using this method
2020-06-29 15:41:55.764 3827-3827/com.example W/SplitSDK: getTreatmentWithConfig: the SDK is not ready, results may be incorrect. Make sure to wait for SDK readiness before using this method
2020-06-29 15:41:55.785 3827-3827/com.example W/SplitSDK: getTreatmentWithConfig: the SDK is not ready, results may be incorrect. Make sure to wait for SDK readiness before using this method
2020-06-29 15:41:56.205 3827-3916/com.example E/SplitSDK: Error while executing splits sync task: Newtwork error while fetching splitsError while fetching data from source https://sdk.split.io/api/splitChanges: Source not reachable
2020-06-29 15:41:56.205 3827-3916/com.example E/SplitSDK: Error while executing splits sync task: Retrying...
2020-06-29 15:41:57.781 3827-3914/com.example E/SplitSDK: Error while authenticating to SSE server: Unexpected Error while fetching data from source https://auth.split.io/api/auth: HttpException: Something happened while retrieving data: failed to connect to auth.split.io/52.2.126.135 (port 443) from /10.0.2.16 (port 37658) after 3000ms
2020-06-29 15:41:57.785 3827-3914/com.example I/SplitSDK: Enabling polling
2020-06-29 15:41:57.807 3827-3914/com.example D/SplitSDK: Disable polling event message received.
2020-06-29 15:41:57.807 3827-3914/com.example I/SplitSDK: Periodic fetcher tasks scheduled
2020-06-29 15:41:57.814 3827-3914/com.example I/SplitSDK: Polling enabled.
2020-06-29 15:41:57.931 3827-3914/com.example D/SplitSDK: Posting 231 Split impressions

from android-client.

bogdanzurac avatar bogdanzurac commented on May 28, 2024

For some users we're also seeing the following logs, being spit out every second or so:

2020-07-01 16:06:22.036 26887-27020/? E/SQLiteLog: (1) too many SQL variables
2020-07-01 16:06:22.037 26887-27020/? E/SplitSDK: An error has ocurred while running task on executor: too many SQL variables (code 1 SQLITE_ERROR): , while compiling: UPDATE impressions SET status = ?  WHERE id IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,
2020-07-01 16:06:22.037 26887-27020/? E/SplitSDK: ?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)

Dunno if it's related or not.

from android-client.

chillaq avatar chillaq commented on May 28, 2024

Hi Bogdan, I have seen this error when there are lot of Split Factories created with different user ids, will pass this internally, could you provide the code that uses the SDK?

Thanks
Bilal

from android-client.

illay1994 avatar illay1994 commented on May 28, 2024

io.split.client:android-client:2.6.2

from android-client.

bogdanzurac avatar bogdanzurac commented on May 28, 2024

Are there any updates on this front? We're using v2.6.5 and still encountering issues.

Our latest test case is:

  1. Start the app normally, SDK READY FROM CACHE event is triggered and we get the correct treatments.
  2. Put the app in the background, go to settings and disable a permission which was previously granted.
  3. Resume the app (it will actually restart itself since the OS detected a permission change and needs to reload the process).
  4. The SDK READY FROM CACHE events gets triggered again.
  5. Treatments are now not working.

from android-client.

chillaq avatar chillaq commented on May 28, 2024

Hi Bogdan, we will try to repro, could you provide which permissions you disable for the app? also Android version.

Thanks
Bilal

from android-client.

bogdanzurac avatar bogdanzurac commented on May 28, 2024

Hi Bilal. It doesn't matter which permission we disable. It's a Huawei P20 Lite with Android 8.

from android-client.

chillaq avatar chillaq commented on May 28, 2024

Hi Bogdan, We are not able to reproduce the issue, tried in a Moto G 5 plus with Android 8.1 (API 27) and also in an emulator.

Could you provide the following info:

  • If this issue is happening in all devices

  • The code used using to instantiate de sdk

  • Any data that you think it would be useful for us to reproduce the issue

from android-client.

chillaq avatar chillaq commented on May 28, 2024

Hi Bogdan, Just want to follow up on this issue, do you still see it on your end?

Thanks
Bilal

from android-client.

bogdanzurac avatar bogdanzurac commented on May 28, 2024

Hi. We are currently not seeing it anymore. It might caused by your backend, thus only acting up in some cases.

from android-client.

jboxx avatar jboxx commented on May 28, 2024

Hi @chillaq @NicoZelaya currently we faced similar to this issue,

Happened in my poor connection, I got HSDPA connection in my device and did same step:
1 Start the app from cold start (normally)
2 Put the app in the background -> go to settings and disable a permission which will trigger configuration change from the OS
3 Resume (maximise) the app

and I got this
Error while executing my segments sync task: Network error while retrieving my segments: Error while fetching data from source https://sdk.split.io/api/mySegments/YRIzEj9dbJoDAPgH6%2Fk9VTrt: http return code 404

I think the error coming from here

logError("Network error while retrieving my segments: " + e.getLocalizedMessage());

I can send the replication video if needed,
And It happened also when we put the app in the background for 1 or 2 hours and after that resume the app again.

It's like breaking others thread, because there's no result or feedback when using getTreatmentWithConfig or SplitEventTask we cannot have control treatment

Is there's something wrong with the work manager when the app configuration is changed or once the app in the background for quite long period?
and why the mySegments api returning 404? Is there any log that presenting how many error 404 happened from your BE?

Thanks

from android-client.

jboxx avatar jboxx commented on May 28, 2024

Btw we use SDK version 2.7.0

After debugging normal flow, I am afraid my previous founding leading the real issue, since it happened when the app opened normally.
After reading the code I found wrong arguments submitted once creating workmanagerwrapper for MySegments
Here is the parameter require


But at the factory method you put databaseName as the last parameter which must be key param
WorkManager.getInstance(context), splitClientConfig, apiKey, key, databaseName);

Regarding the real issue that I raised before, I also can reproduce it by making the app crash but once application try to retain the activity and refetch the config, SDK no returning any result

from android-client.

javrudsky avatar javrudsky commented on May 28, 2024

A fix was applied for this ticket for both issues. Closing it because it has been inactive for one year.

from android-client.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.