mersenneforum.org

mersenneforum.org (https://www.mersenneforum.org/index.php)
-   PrimeNet (https://www.mersenneforum.org/forumdisplay.php?f=11)
-   -   OFFICIAL "SERVER PROBLEMS" THREAD (https://www.mersenneforum.org/showthread.php?t=5758)

kladner 2014-09-09 21:27

1 Attachment(s)
This isn't really a problem, just an oddity. I expect it to resolve itself. The upper portion is the communication with PrimeNet; the lower is from P95 Status.

garo 2014-09-09 21:30

Manual assigments page is very slow when given a range. For example, I just tried to get lowest first-time tests with range 68M-80M. Without a range it is blazingly fast. With a range it took over 100 seconds to return the assignments. Example AID:
45CDF8382E4DFB8B4E822BA914F5838E

to help with the logs.

Prime95 2014-09-09 22:44

Over the coming days, maybe weeks, I'll be cleaning up the PHP code that is called when prime95 contacts the server. There are numerous poor programming practices that must be eliminated. There are inconsistencies between the way the web pages do their work and the way the API does its work. There are places where the web pages and API should be sharing code.

Don't be surprised if I break something every now and then. Thanks for your patience.

LaurV 2014-09-10 08:33

[QUOTE=kladner;382627]This isn't really a problem, just an oddity. I expect it to resolve itself. The upper portion is the communication with PrimeNet; the lower is from P95 Status.[/QUOTE]
As we have seen some values/fields magically disappeared (zerorized) on the server during the transfer to a new home, this may be caused by the same phenomenon, if the "hours to work per day" was cleaned on the server side. Your P95 knows that you are working 24 (or 12, or 59, hehe) hours per day for this expo, but the server believe you are only working much less amount of hours per day (zero?) so the time to arrival is longer...

This should solve by itself after few talks (progress reports) to the server, indeed, if that's the case.

kladner 2014-09-10 14:28

[QUOTE=LaurV;382671].....
This should solve by itself after few talks (progress reports) to the server, indeed, if that's the case.[/QUOTE]

Indeed it did, next time it checked in.

Madpoo 2014-09-10 17:50

[QUOTE=LaurV;382671]As we have seen some values/fields magically disappeared (zerorized) on the server during the transfer to a new home, this may be caused by the same phenomenon, if the "hours to work per day" was cleaned on the server side. Your P95 knows that you are working 24 (or 12, or 59, hehe) hours per day for this expo, but the server believe you are only working much less amount of hours per day (zero?) so the time to arrival is longer...

This should solve by itself after few talks (progress reports) to the server, indeed, if that's the case.[/QUOTE]

It *probably* wasn't due to the server move itself so much as some other back end changes that might have been done to the check in code.

The DB itself was migrated over pretty easily from SQL 2005 to SQL 2012, thank goodness (and 32-bit to 64-bit).

We didn't really experience any incompatibilities in the queries or sprocs with the SQL version updates, which was a relief. Most of the work revolved around changes between PHP versions during the upgrade (5.2 up to 5.5) and some deprecated language, functions, etc. which required some tinkering.

There were also some old warnings that had been suppressed previously that we started to notice after the move since the PHP logging level was a little different. Things that had always been there, and weren't really critical but annoying enough that James has been doing a good job at squashing.

Point being, once the nitty gritty of the upgrade was done and tested, it was also an opportunity to look at some old PHP code and get it fixed up or just brought up to modern standards.

If you do see more odd behavior from the site (that wasn't there before), be sure to point those things out. There has been real good feedback so far.

Madpoo 2014-09-10 18:22

[QUOTE=garo;382628]Manual assigments page is very slow when given a range. For example, I just tried to get lowest first-time tests with range 68M-80M. Without a range it is blazingly fast. With a range it took over 100 seconds to return the assignments. Example AID:
45CDF8382E4DFB8B4E822BA914F5838E

to help with the logs.[/QUOTE]

Is that something you've done in the past, and it worked okay (when selecting a range for new assignments)?

I'd have to see what kind of query is happening behind the scenes when a request like that comes in.

I couldn't actually find that assignment ID anywhere. I looked at all assignments and also the ones for your account specifically but I didn't see it. Has it already been checked in?

Were these requests for TF work (not likely in that range) or was this for first time LL?

garo 2014-09-10 18:40

[QUOTE=Madpoo;382711]Is that something you've done in the past, and it worked okay (when selecting a range for new assignments)?

I'd have to see what kind of query is happening behind the scenes when a request like that comes in.

I couldn't actually find that assignment ID anywhere. I looked at all assignments and also the ones for your account specifically but I didn't see it. Has it already been checked in?

Were these requests for TF work (not likely in that range) or was this for first time LL?[/QUOTE]

I do not know if this is a new problem because I rarely use the manual assignments page. So many pages were slow or broken previously that I wouldn't have noticed. Also apologies for sending you on a wild goose chase but I unreserved the AID after 24 hours when no one responded.

To confirm slowness you can try to retrieve two LLs yourself. I chose first time tests in the dropdown.

Madpoo 2014-09-10 19:11

[QUOTE=garo;382712]I do not know if this is a new problem because I rarely use the manual assignments page. So many pages were slow or broken previously that I wouldn't have noticed. Also apologies for sending you on a wild goose chase but I unreserved the AID after 24 hours when no one responded.

To confirm slowness you can try to retrieve two LLs yourself. I chose first time tests in the dropdown.[/QUOTE]

I decided to look into the code itself at the query that grabs first time LL work. If I do it directly in SQL and use a range of 68M - 80M it took about 3 seconds to run and showed a couple exponents in that range that would be first time LL tests.

Note that it will apparently run this same query once for each exponent you want assigned. So presumably, 3 seconds if you're just getting one, and then multiply by the # of assignments you're hoping to get. When you tried, were you just looking for a single LL test or did you ask it for more?

You may have just stumbled onto a busy period on the server. Around-about that same time I saw GPU72 was "crawling" and getting assignments, so it very well may have been that you just tried getting assignments at the same time and it took a while for yours to run.

I guess I'd suggest trying again and see what happens, using the same range, same settings as before and see if it's better.

This is my first look at the manual assignments SQL queries and it's a little hard to get through all the things it's doing, some interesting clauses here and there to take into account the reliability of clients, version of software, etc. so that makes it fun and in my artificial test I may have defaulted one of those to something that makes the query run better than the real world.

Madpoo 2014-09-10 19:31

[QUOTE=Madpoo;382717]I guess I'd suggest trying again and see what happens, using the same range, same settings as before and see if it's better.
[/QUOTE]

I ate my own dogfood and got 2 first time assignments for myself using the manual page. Yeah, it wasn't 100 seconds, but it wasn't fast either, more like 15 seconds.

It could probably be improved by selecting more than one assignment at a time if a person is requesting more than one. Otherwise it iterates and just seems like a waste of cycles if there were an easier way to run the query once and grab a range.

There's also some overhead with not only getting exponents but also "checking them out" and writing info to the database about "this user is now assigned these exponents". I'd probably have to do a lot more PHP debugging to see how long each of those things takes and I just don't feel like doing that. :smile:

garo 2014-09-10 19:49

Thanks for looking at this. I tried to get 20 assignments. And it took ~ 2 minutes. Just repeated that right now and same deal. Yes I guess a big part of the problem is repeating the SQL query for each assignment. It should really do only a single query for each request. Note that if I don't specify a range it is more or less instant. (And I get 64M assignments or Cat3). So I don't think the problem has to do with the checkout or PHP and much more likely inefficient SQL.


[QUOTE=Madpoo;382720]I ate my own dogfood and got 2 first time assignments for myself using the manual page. Yeah, it wasn't 100 seconds, but it wasn't fast either, more like 15 seconds.

It could probably be improved by selecting more than one assignment at a time if a person is requesting more than one. Otherwise it iterates and just seems like a waste of cycles if there were an easier way to run the query once and grab a range.

There's also some overhead with not only getting exponents but also "checking them out" and writing info to the database about "this user is now assigned these exponents". I'd probably have to do a lot more PHP debugging to see how long each of those things takes and I just don't feel like doing that. :smile:[/QUOTE]


All times are UTC. The time now is 23:07.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.