Closed mikehearn closed 2 years ago
Yep I'm currently working on that...seems production is down...
Should be better now, can you please try again?
It's not better. I still get 400s multiple times when trying to resolve an ephemeral ID before it works.
I'd suggest rethinking this API design. I don't fully understand the need for the ephemeral IDs - if you want to know how many people are downloading/picking a particular JDK you could just provide the download URL directly and then simply ask API users to ping a different endpoint async that does nothing but write to a log. This would be faster for end users, you'd get the data, and it'd be drastically more reliable as it'd remove the need for global synchronous replication (I assume that's what's going wrong here from the apparent multi-second delay before the ephemeral ID becomes usable). We'd happily do it if it's really helpful for you.
At the moment I'm trying to incorporate this API into a product I'm developing for the JVM community and it's just not reliable enough right now. If this problem isn't resolved soon, my plan is to modify the code in this repository to generate static datasets that the app downloads and searches locally. A cloud API is overkill for this use case, there aren't enough records to justify the availability hit.
BTW I'm also seeing HTTP request timeouts.
Yep there is definitely something wrong here, I also see this behavior. There have currently be some changes in the infrastructure which seem to break things down. We use the ephemeral id to avoid caching the download links and get at least one possibility to get some statistics. For the time we have that trouble with our production version I could offer you to run against my private server that I use for testing, if you are interested, just drop me a mail at han dot solo dot gg at gmail dot com
Thanks for the offer, but this is a product I plan to start distributing in a few months to the client side, so I'm looking for a long term solution. I'll probably do a set of canned queries and ship the results statically.
The infrastructure problems should be solved now.
I get HTTP 400s almost every time I do a query. I have to hit the server in a loop for it to work, which eventually it will. It appears there's some non-transactional behaviour going on, e.g. the ephemeral ID is often not recognized immediately after it's been vended.