VITAS changed the topic of #spacedock to: Problems?: https://github.com/KSP-SpaceDock/SpaceDock/issues | Matrix/Riot Chat: https://im.52k.de +spacedock:52k.de Feel free to ask for help, we only bite a little bit! | If you want to help, please check https://github.com/KSP-SpaceDock/SpaceDock-Backend/issues/5 :) | <VITAS> inet users have the attentionspan of a squirrel...
HebaruSan[m] has quit [Quit: Idle timeout reached: 10800s]
Darklight[m] has joined #spacedock
<Darklight[m]> I think admins should only be granted via a higher privilege level that vitas has
HebaruSan[m] has joined #spacedock
<HebaruSan[m]> Master branch merged and accounted for!
Darklight[m] has quit [Quit: Idle timeout reached: 10800s]
VITAS[m] has joined #spacedock
<VITAS[m]> that gives us rolls
<VITAS[m]> i would love to have per user or group rights like give admin or per game admins
<VITAS[m]> anyway perparing for update
HebaruSan[m] has quit [Quit: Client limit exceeded: 6]
<VITAS[m]> starting now
DasSkelett[m] has joined #spacedock
<DasSkelett[m]> Okay
<VITAS[m]> at db migration
HebaruSan[m] has joined #spacedock
<HebaruSan[m]> NetKAN bot starting to return 503s for SD-hosted mods 🙂
<VITAS[m]> any idea about the error message?
<HebaruSan[m]> New inflation error for ChampagneBottleRedux: The remote server returned an error: (503) Service Unavailable.
<HebaruSan[m]> Expected though
<VITAS[m]> need a fix
<VITAS[m]> TASK [sd-prod-update : Get alembic heads
<VITAS[m]> nothing?
<DasSkelett[m]> Is there a error message?
<HebaruSan[m]> Yeah it's not clear what problem you're having
<VITAS[m]> yes the one i posted twice
* HebaruSan[m] uploaded an image: unknown.png (17KB) < https://matrix.52k.de/_matrix/media/r0/download/52k.de/edMIAywstVWEIfIZnDfSMCMb >
<VITAS[m]> i just commented out the "is a migration neccesayry" part and forced it
<VITAS[m]> then discord isnt working
<HebaruSan[m]> Discord works fine
<VITAS[m]> maybe max char limit
<VITAS[m]> doesnt seem to
<HebaruSan[m]> Don't blame some bot's problems on Discord
<VITAS[m]> sure
<VITAS[m]> anyways
<VITAS[m]> aalembic heads isnt working
<VITAS[m]> also how can i see what sd ver im running?
<DasSkelett[m]> Git version? or database version?
<VITAS[m]> if its old prod or new master
<DasSkelett[m]> `git show HEAD` should show the beta->master merge commit
<VITAS[m]> thx
<VITAS[m]> can you see that?
<HebaruSan[m]> Yup, that's current
<VITAS[m]> cool
<VITAS[m]> im waiting for the storage rsync to be finished
<DasSkelett[m]> So why the heck doesn't alembic fund the KerbalStuff module?
<VITAS[m]> dont know but something for "lessons learned"
<HebaruSan[m]> (And we have our first unnecessary "SpaceDock is down" report!)
<DasSkelett[m]> It looks like it did `source bin/activate` beforehand
<VITAS[m]> yes as you told me
<DasSkelett[m]> I guess `sd.stage.service.path.web` is set to the repository dir?
<VITAS[m]> yes
<VITAS[m]> its var/www....
<VITAS[m]> AndyDrawsPrettyPictures_749/Extrasolar_Planets_Beyond_Kerbol/Extrasolar_Planets_Beyond_Kerbol takes ages :)
<VITAS[m]> to sync
<HebaruSan[m]> Yes you have multiple modders who think 1GB+ is a reasonable size to upload
<VITAS[m]> i know
<VITAS[m]> the kerbin city guy
<VITAS[m]> i think its reasonable if its well used
<DasSkelett[m]> I think I'll move the definition of `get_mod_score()` into the alembic script now, we should have done that all along.
<VITAS[m]> add every hickup during update so we can prevent it next time
<DasSkelett[m]> Can you re-pull code that we merge to master now to fix it?
<VITAS[m]> sure
<DasSkelett[m]> <span class="d-mention d-user">HebaruSan</span> https://github.com/KSP-SpaceDock/SpaceDock/pull/304
<VITAS[m]> should i reenable that alembic command?
<DasSkelett[m]> What do you mean re-enable?
<VITAS[m]> i disabled alembic heads and it ran trough
<DasSkelett[m]> Did the database upgrade?
<VITAS[m]> to be more precise
<VITAS[m]> ansible has tasks
<VITAS[m]> one is to do alembic heads to find out if a db migration is needed
<VITAS[m]> i disabled the check and forced it to migrate
<VITAS[m]> and it ran
<VITAS[m]> should i reenable that task where it failed before?
<HebaruSan[m]> If there are scores populated in the db then it's probably fine
<DasSkelett[m]> How can it upgrade the database, but `alembic heads` is not working?
<HebaruSan[m]> But I couldn't tell you how to check that
<VITAS[m]> ill check the db manualy for heads ver
<VITAS[m]> sec
<DasSkelett[m]> it's in the `alembic_version` table.
<VITAS[m]> 6ffd5dd5efab
<DasSkelett[m]> Should be 85be165bc5dc
<VITAS[m]> k ill check
<DasSkelett[m]> 6ffd5dd5efab isn't even the latest of the old master o.O
<HebaruSan[m]> At least we do have that as a down_revision
<DasSkelett[m]> Haha, true.
<VITAS[m]> my fault it didnt switch the config.ini propperly and did the migration on the wrong db
<HebaruSan[m]> B instead of A?
<HebaruSan[m]> Wow `alembic downgrade d6f41a805840` takes a long time
<VITAS[m]> a&b both have the staging config that migrated correctly
<VITAS[m]> the alembic error still exists
<VITAS[m]> no biggy i just skip checks and we sort it out afterwards
<HebaruSan[m]> I think my alembic downgrade is stuck
<HebaruSan[m]> Trying to look at your PR <span class="d-mention d-user">DasSkelett</span> but the tools aren't cooperating
<HebaruSan[m]> I can't even ctrl-C out of it
<DasSkelett[m]> Also happened once to me. Killing it worked, and I think it didn't even mess something up in my db
<HebaruSan[m]> Knew I should have prayed, parried, and partied first
<HebaruSan[m]> Ok, killed. What now, just try same command again?
<DasSkelett[m]> Yep
<DasSkelett[m]> Yep
<HebaruSan[m]> Stuck again
<HebaruSan[m]> Nothing in my local DB is big enough to take even 100 milliseconds
<DasSkelett[m]> Hmpf
<HebaruSan[m]> So I assume it's just trying to drop the score column
<HebaruSan[m]> I have like seven mods in my db
<DasSkelett[m]> Shouldn't be a problem. Alembic would complain if it wouldn't like somewhitng. I say it's a Alembic bug.
<HebaruSan[m]> Only one of which has more than one modversion
<DasSkelett[m]> Try forcefully restarting the database container
<VITAS[m]> 77f76102f99c
<VITAS[m]> still not what i want isnt it?
<DasSkelett[m]> It's at least what we expect to start with. But not upgraded yet.
<HebaruSan[m]> Downgrade finished instantaneously after another start-server.sh
<HebaruSan[m]> Upgrade worked
<VITAS[m]> alembic heads
<VITAS[m]> 77f76102f99c (head)
<HebaruSan[m]> Should this fix not go to alpha->beta->master first
<DasSkelett[m]> You're right, probably easier.
<VITAS[m]> INFO [alembic.runtime.migration] Running upgrade d6f41a805840 -> 85be165bc5dc, Add Mod.score
<DasSkelett[m]> Changes the PR to base on alpha
<VITAS[m]> while migrating
<VITAS[m]> File "/var/www/virtual/spacedock.info/htdocs/SpaceDock/KerbalStuff/search.py", line 39, in get_mod_score
<VITAS[m]> num_incompat = versions_behind(mod)
<VITAS[m]> File "/var/www/virtual/spacedock.info/htdocs/SpaceDock/KerbalStuff/search.py", line 48, in versions_behind
<DasSkelett[m]> OPh i see, have to rebase it now.
<DasSkelett[m]> Oh i see, have to rebase it now <span class="d-mention d-user">HebaruSan</span>
<VITAS[m]> please help solve
<DasSkelett[m]> Okay, PR should be merge-ready now
<DasSkelett[m]> There are mods without default version in the database 😦
<VITAS[m]> and now?
<VITAS[m]> set a default for the column?
<HebaruSan[m]> Can we search for them and delete them?
<VITAS[m]> delete mods?
<DasSkelett[m]> We could set the latest version version of each mod without default version as default version, however I suspect there are also mods without any version at all.
<VITAS[m]> if they dont have a default ver are they still functional?
<HebaruSan[m]> Nope
<DasSkelett[m]> No
<VITAS[m]> k so we should delete them in the long run and prevent them from exsting again
<VITAS[m]> what the best solution now
<VITAS[m]> as a quick fix to get this running?
<VITAS[m]> we are on a clock here :)
<HebaruSan[m]> Well what effect should that have on scores
<HebaruSan[m]> Zero it out?
<HebaruSan[m]> My problem is that then an invalid mod has a better score than a valid one
<DasSkelett[m]> Yeah sure. But if we're going to delete it anyways in the next days.
<HebaruSan[m]> I kind of think get_mod_score should not even call versions_behind if it's None
<HebaruSan[m]> Like if default_version is None, score is zero
<DasSkelett[m]> Oh okay, that could work
<HebaruSan[m]> OK, my turn for a PR
<VITAS[m]> everything that helps it go now
<VITAS[m]> im open to do a hotfix deployment in a few days
<HebaruSan[m]> <span class="d-mention d-user">DasSkelett</span> https://github.com/KSP-SpaceDock/SpaceDock/pull/305
<VITAS[m]> can you test it on alpha if it doesnt cause any new problems there
<HebaruSan[m]> One thing at a time, it has to get past code review first
<DasSkelett[m]> ✅ approved
<DasSkelett[m]> We can only test the "should be" case on alpha, not what's happening on production, because it's not possible to set default_version(_id) to null, not even manually.
<VITAS[m]> i know
<VITAS[m]> i want to prevent new errors
<VITAS[m]> well talk about how to improve testing afterwards
<HebaruSan[m]> <span class="d-mention d-user">DasSkelett</span> go ahead and do migrations or whatever on the alpha server
<HebaruSan[m]> I won't mess with it
<DasSkelett[m]> Okay, hang on
<DasSkelett[m]> Well, alpha also likes to freeze on downgrades
<DasSkelett[m]> Problem is I can't restart the database for alpha
<HebaruSan[m]> Can't we? We can sudo
<HebaruSan[m]> Should be able to do anything I thought
<DasSkelett[m]> Database is external, on another server
<DasSkelett[m]> We're not running the docker containers there
<HebaruSan[m]> Oy
<VITAS[m]> the db server also runs other things too
<DasSkelett[m]> `connection-string=postgresql://spacedock_testing:hqOomOBDZEYomHAhXXY5@psql.52k/spacedock_testing`
<VITAS[m]> (other dbs)
<VITAS[m]> bad idea
<DasSkelett[m]> Whoopsie, probably shouldn't post the secrets
<VITAS[m]> yes
<VITAS[m]> we should change that now
<DasSkelett[m]> But yeah, it's on another server
<DasSkelett[m]> It's just alpha, can wait
<VITAS[m]> yes
<VITAS[m]> noted it for later
<VITAS[m]> also that we should use somewhere more private for migrations
<HebaruSan[m]> So we're kind of stuck there. Move on to beta?
<VITAS[m]> i cant restart the whole db server but i can do things on it if you tell me
<DasSkelett[m]> Yep, let's try it on beta again <span class="d-mention d-user">HebaruSan</span>
<HebaruSan[m]> OK, beta is ready for migrations
<DasSkelett[m]> Doesn't want to do it either, I suspec the database server being stuck somehow
<VITAS[m]> i think they just did the storage update
<VITAS[m]> rsync and proxmox had a good scare
<VITAS[m]> and me too
<VITAS[m]> :D
<DasSkelett[m]> No chance, database doesn't want to cooperate.
<HebaruSan[m]> Your call, <span class="d-mention d-user">VITAS</span> , move the fix to master or try to get alpha or beta's db to downgrade?
<VITAS[m]> 77f76102f99c is that a ver you can test with?
<VITAS[m]> (db alembic)
<DasSkelett[m]> We can't downgrade alpha and beta at all.
<VITAS[m]> codewise or db?
<DasSkelett[m]> database stuck, in some way. Alembic or postgres bug or whatever.
<DasSkelett[m]> I tested down+upgrade on _my_ system, it works there.
<VITAS[m]> so you need a db thats at another alembic ver?
<VITAS[m]> DasSkelett: send you connect strings on matrix sdtest2 should have alembic ver 77f76102f99c
<VITAS[m]> if that helps
<VITAS[m]> sdtest1 is on 8something
<DasSkelett[m]> 85be165bc5dc is currently the latest one. Can't test upgrading with that.
<DasSkelett[m]> Would have to downgrade first, which doesn't work.
<VITAS[m]> yes but 7something
<VITAS[m]> send you connect strings on matrix sdtest2 should have alembic ver 77f76102f99c <-!!
<VITAS[m]> exactly where prod is stuck
<DasSkelett[m]> Okay, took sdtest1
<VITAS[m]> be calm :)
<VITAS[m]> we are professionals!
<VITAS[m]> :D
<DasSkelett[m]> Works
<VITAS[m]> so we can test it on prod then
<DasSkelett[m]> Yes
<VITAS[m]> if there isnt anything screwed up or new
<HebaruSan[m]> OK, merge incoming to master then, one moment please
<VITAS[m]> np
<HebaruSan[m]> OK, pull master again
<VITAS[m]> sec
<VITAS[m]> INFO [alembic.runtime.migration] Running upgrade d6f41a805840 -> 85be165bc5dc, Add Mod.score
<VITAS[m]> no errors
<DasSkelett[m]> Phew
<VITAS[m]> 85be165bc5dc
<VITAS[m]> prod
<HebaruSan[m]> kewl
<VITAS[m]> good work
<VITAS[m]> :)
<VITAS[m]> lets try to prevent that in the future
<DasSkelett[m]> Hard to do. Can't create a broken database locally.
<VITAS[m]> we talk about the how when sd is workign again
<VITAS[m]> i think they limitd storage speed while updating
<VITAS[m]> takes forver to sync mod storage
<VITAS[m]> https://sd-prod-live.52k.de <check if that ok apart from missing files and redirecting to spacedock.info from time to time
<HebaruSan[m]> Possibly the score column isn't populated
<VITAS[m]> problem?
<HebaruSan[m]> Yeah, that's a problem
<VITAS[m]> so needs urgent fixing?
<HebaruSan[m]> Although, the "most popular" section on https://sd-prod-live.52k.de/kerbal-space-program has the right amount of mods, so maybe the db is ok
<DasSkelett[m]> But /browse also only shows Scatterer
<HebaruSan[m]> It's treating page size as 1
<HebaruSan[m]> Or 2?
<HebaruSan[m]> Weird
<DasSkelett[m]> Huh
<DasSkelett[m]> Like if the offset is somehow screwef up.
<DasSkelett[m]> This is sooo weird. Can this be caused by us directly accessing the web server without ATS in front of it? I have no idea where our code could cause this.
<HebaruSan[m]> Or repeated failed migrations somehow corrupting the db?
<VITAS[m]> youre using ats
<VITAS[m]> i can reload that sec
<DasSkelett[m]> Oh we are? Hmm.
<DasSkelett[m]> Would be a weir corruption. The db always returns mod, and it seems to have all of them, it just never returns the one we ask for.
<DasSkelett[m]> Would be a weird corruption. The db always returns mod, and it seems to have all of them, it just never returns the ones we ask for.
<VITAS[m]> restarted
<DasSkelett[m]> Mhh, didn't help :/
<HebaruSan[m]> Maybe the `and_filters` thing doesn't work when empty?
<HebaruSan[m]> All signs seem to point to something within `search_mods`
<HebaruSan[m]> Maybe another glitch from default_version being None, or other similar corruption?
<VITAS[m]> i remember a bug like this years ago but have no idea why this happened
<VITAS[m]> does the db return the full set ?
<HebaruSan[m]> It's supposed to only return what is needed now
<VITAS[m]> but what does it actualy do?
<DasSkelett[m]> https://sd-prod-live.52k.de/api/browse/top returns the same as we see in the frontend, except it's veeeeery slow.
<VITAS[m]> aka is it a problem with db querys or display
<VITAS[m]> the slowness is because im running rsync
<VITAS[m]> on the same host
<DasSkelett[m]> /browse/top is not that slow, only /api/browse/top. But it even calls the same method to get the mods.
<VITAS[m]> caching does things?
<VITAS[m]> api wouldnt be cached i think
<VITAS[m]> anyways
<VITAS[m]> problem at hand :)
<DasSkelett[m]> Maybe it doesn't like the mods not being in the storage?
<DasSkelett[m]> It would be interesting to see what queries are made to the database.
<DasSkelett[m]> And what the db returns.
<VITAS[m]> can we?
<DasSkelett[m]> You can configure postgres to log queries
<VITAS[m]> is there another way to get this working now?
<VITAS[m]> and add it to the lsit we have to look at later?
<VITAS[m]> list
<DasSkelett[m]> I mean, all the other pages seem to work.
<DasSkelett[m]> */browse/top would be broken, but that doesn't affect the rest of the site.
<DasSkelett[m]> */browse/top would be broken, but that doesn't affect the rest of the site.
<VITAS[m]> ok
<DasSkelett[m]> Speaking of which, you are still moving the storage, right?
<VITAS[m]> yes
<VITAS[m]> i would have thought it would be faster
<VITAS[m]> 500mbit/s
<DasSkelett[m]> Although, if that behaviour is a result of some sort of db corruption during the upgrade process, we should fix that before we turn the site on again, in case we have to restore from the backup.
<VITAS[m]> yes but how likely is that and can we test if its corrupt?
<DasSkelett[m]> Looking at the mod table might reveal something.
<VITAS[m]> what do you need me to do?
<DasSkelett[m]> Look at the score column of the mod table and check if there are values.
<VITAS[m]> can you post a query i can run?
<VITAS[m]> or simply the mod table
<HebaruSan[m]> And if that works, throw in an order by
<VITAS[m]> there are scores
<VITAS[m]> most int and i se some float
<VITAS[m]> e.g. tweakscale "400588.6"
<DasSkelett[m]> Yep, float is expected. That looks correct.
<VITAS[m]> SETI rebalance "1596"
<VITAS[m]> yes
<VITAS[m]> 30 results
<VITAS[m]> all scatterer
<DasSkelett[m]> All?
<VITAS[m]> yes 30 lines of exactly the same
<HebaruSan[m]> I didn't think that was even possible in SQL
<VITAS[m]> mod id 141
<HebaruSan[m]> At least it explains what we're seeing on the front end
<VITAS[m]> yes it is
<VITAS[m]> my guess: soem join went the wrong way arround
<HebaruSan[m]> The joins haven't changed in 4 years
<VITAS[m]> if you remove ORDER BY mod.score DESC it works
<VITAS[m]> i get doubles if i order by mod.id
<VITAS[m]> so we have to unique mod.id in that query
<DasSkelett[m]> It returns one item for each mod version
<HebaruSan[m]> Ohhhhhh
<HebaruSan[m]> Hence Scatterer taking up a whole page with its tons of versions
<HebaruSan[m]> Yikes
<VITAS[m]> DISTINCT
<HebaruSan[m]> So no more `.join(Mod.versions)` ?
<DasSkelett[m]> Exactly. And that's the reason I don't saw it on my system nor alpha nor beta, because all mods combined don't have more than 30 releases.
<VITAS[m]> just do SELECT DISTINCT and youre golden for now
<HebaruSan[m]> Can you try the original query without `JOIN modversion ON mod.id = modversion.mod_id` ?
<VITAS[m]> unique results
<HebaruSan[m]> OK, <span class="d-mention d-user">DasSkelett</span> you want me to PR that, or do you want to look at it more?
<DasSkelett[m]> PR it. Just tried removing `.join(Mod.versions)` and it seems to work.
<VITAS[m]> as i said select distinct works without removing it
<HebaruSan[m]> Yeah but that's probably making the DB do more work and whatnot, the idea is to do it correctly
<VITAS[m]> correctly is to fix the join :)
<VITAS[m]> fast is to remove the join
<HebaruSan[m]> Depends if the join is neede
<HebaruSan[m]> Depends if the join is needed
<VITAS[m]> i cant say
<HebaruSan[m]> If it's not supposed to be there, then removing it is correct
<HebaruSan[m]> This function is searching for mods, not mod versions
<VITAS[m]> im assume that its there for a reason
<VITAS[m]> if that data isnt needed youre correct that its the correct way
<VITAS[m]> :)
<HebaruSan[m]> <span class="d-mention d-user">DasSkelett</span> https://github.com/KSP-SpaceDock/SpaceDock/pull/306
Diamondriverplays[m] has joined #spacedock
<Diamondriverplays[m]> im assuming its down?
<HebaruSan[m]> <span class="d-mention d-user">VITAS</span> don't worry it's going to be so efficient after all this, the old code was working around so many of its own bugs with hacks
<VITAS[m]> it is
<VITAS[m]> Diamondriverplays:
<Diamondriverplays[m]> Any eta on when its up
<VITAS[m]> i hope it will be back up soon
<Diamondriverplays[m]> k
<VITAS[m]> 1h
<VITAS[m]> seems like my error page is doing its job
DasSkelett[m] has quit [Quit: Client limit exceeded: 6]
VictorMout[m] has joined #spacedock
<VITAS[m]> thx
HebaruSan[m] has quit [Quit: Client limit exceeded: 6]
DasSkelett[m] has joined #spacedock
<DasSkelett[m]> lol
<VITAS[m]> im working on it :)
Diamondriverplays[m] has quit [Client Quit]
<VITAS[m]> cfcx means connection failed connect
HebaruSan[m] has joined #spacedock
<HebaruSan[m]> OK, pull master now pls
<VictorMout[m]> wth that bot seems awfully intelligent
<HebaruSan[m]> It's a bridge bot, it posts what VITAS says in another channel
<VITAS[m]> so apache webserver on sd host isnt runnign (as it should be)
<VictorMout[m]> ah
<VITAS[m]> sec i pull
<VITAS[m]> and thx VictorMout
<VITAS[m]> :D
<VITAS[m]> i assume i dont have to migrate the db
<HebaruSan[m]> Right
<DasSkelett[m]> No
<VITAS[m]> done
<DasSkelett[m]> It works! 🎉
<HebaruSan[m]> If we could come up with an alembic migration in this timeframe and test it that would be big brain status for sho
<HebaruSan[m]> WOOO
<HebaruSan[m]> Good investigation, I would not have figured that one out by myself, I don't think
<DasSkelett[m]> And no more BDArmory on page 2!!! 😄
VictorMout[m] has quit [Client Quit]
Savage[m] has joined #spacedock
<Savage[m]> What happened to Space dock?
<Savage[m]> D:
<VITAS[m]> updating the crap out of it
<HebaruSan[m]> Planned downtime
<VITAS[m]> Savage will be up soonish
<VITAS[m]> see and thats why i wanted to link a page
<Savage[m]> Of course, Haven't played KSP in literal months, but 2am on a random night i decide to play it's down. Just my fucking luck
<Savage[m]> F
<HebaruSan[m]> And that's why I wanted the page to say "Planned downtime" 🙂
<DasSkelett[m]> <span class="d-mention d-user">VITAS</span> is it safe if I already test mod creation? Or should I wait for the storage to finish transfering?
<VITAS[m]> lol
<VITAS[m]> bad luck i guess
<Savage[m]> Yea 100% should say it's planned or some shit
<Savage[m]> I thought it got like perma shut down
<VITAS[m]> uhmm you can test creation but not update
<Savage[m]> that page isn't very informative
<VITAS[m]> suggestions?
<VITAS[m]> Savage
<Savage[m]> well, Don't start with "SpaceDock isn't here." Sounds like it's like gone gone
<Savage[m]> Maintenance, updates, something that says 1.You know it's down. 2.You're working on it 3.Will be back soon-ish
Webchat533 has joined #spacedock
Webchat533 has quit [Client Quit]
<Savage[m]> a bit vague
<HebaruSan[m]> <span class="d-mention d-user">VITAS</span> I think everything is working, <span class="d-mention d-user">DasSkelett</span> you notice anything else off?
<VITAS[m]> the message is also shown if there is another error not only downtime
<VITAS[m]> i dont always know it is
<HebaruSan[m]> Oh I should check some API stuff
<VITAS[m]> sometimes it crashes
<VITAS[m]> :D
<VITAS[m]> or you made the server shit itself
<Savage[m]> Ahhh, is there anyway to differentiate? multiple caches images to present for different down reasons?
<HebaruSan[m]> Time zones are present, hooray
<DasSkelett[m]> So far everything I tested works. Didn't test mod creation and update just yet though.
<VITAS[m]> yes there is and youre welcome to stick arround and help me make better ones after were done
<VITAS[m]> :)
<Savage[m]> getting married, and moving, and have active orders, all in the next week
<Savage[m]> This is like my last bit o free time for a while
<Savage[m]> But sure
<HebaruSan[m]> Some of the stuff you want may be here:
<VITAS[m]> im happy to send you a zip with all the error files
DasSkelett[m] has quit [Quit: Client limit exceeded: 6]
FireStriker[m] has joined #spacedock
<FireStriker[m]> i like the new landing page
<HebaruSan[m]> CKAN archives mods automatically
Savage[m] has quit [Quit: Client limit exceeded: 6]
DasSkelett[m] has joined #spacedock
<DasSkelett[m]> Okay creating mods doesn't work yet, `Failed to save zip file`.
<VITAS[m]> FireStriker in terms of design or content? :D
FireStriker[m] has quit [Client Quit]
Savage[m] has joined #spacedock
<Savage[m]> Why on earth is this Bot actually intelligent?
<VITAS[m]> DasSkelett: most likely dir permissions
<DasSkelett[m]> He eats a lot of gummy bears, that's why.
<HebaruSan[m]> It posts VITAS's comments to and from another channel
<DasSkelett[m]> Thought so <span class="d-mention d-user">VITAS</span>
<VITAS[m]> im coming to you from beyond the great wall of discordia
<Savage[m]> It what?
<Savage[m]> ohhhhhh, so you're a human
<HebaruSan[m]> VITAS doesn't believe in Discord, he uses something called "Matrix" instead
<VITAS[m]> sometimes
<HebaruSan[m]> And that bot copies his chat across
<Savage[m]> the fuck is matrix
<HebaruSan[m]> No idea
<VITAS[m]> the better discord?
<VITAS[m]> the structure is like email
<Savage[m]> Damn, already worse
<VITAS[m]> everyone can host a server and they can talk to each other
<VITAS[m]> and it looks like discord
DasSkelett[m] has quit [Client Quit]
FireStriker[m] has joined #spacedock
<FireStriker[m]> Is it site up, i thought it was still down for the maintenance.
<FireStriker[m]> I was just saying i like the offline screen
<FireStriker[m]> had a different one from abour an hour ago
<VITAS[m]> well thx FireStriker :)
HebaruSan[m] has quit [Quit: Client limit exceeded: 6]
DasSkelett[m] has joined #spacedock
<DasSkelett[m]> We are still working on it <span class="d-mention d-user">FireStriker</span>
<VITAS[m]> im at "N" in my copying
<VITAS[m]> P
Savage[m] has quit [Client Quit]
HebaruSan[m] has joined #spacedock
<HebaruSan[m]> Well if you're past "K" the worst is behind us
<FireStriker[m]> what kind of maintenance is being done
<HebaruSan[m]> All of the maintenance
<HebaruSan[m]> We are installing new code changes and improving the way the updates are done
<VITAS[m]> mr kingtiger is now syncing
<DasSkelett[m]> There's still JNSQ <span class="d-mention d-user">HebaruSan</span> 😛
<HebaruSan[m]> 😢
<VITAS[m]> and im swapping all hosts for new ones
<FireStriker[m]> yea 8 hours sounds a little short for that kind of maintenance
<HebaruSan[m]> ABCDEFGHIJKLMN tho
<VITAS[m]> 8h is because the datacenter updates all their crap at the same time
DasSkelett[m] has quit [Client Quit]
<VITAS[m]> and they said 8h
Savage[m] has joined #spacedock
* Savage[m] uploaded an image: Desktop_Screenshot_2020.06.30_-_02.26.06.82.png (2145KB) < https://matrix.52k.de/_matrix/media/r0/download/52k.de/efjHvmnqLvMFwjuQxiFEgRnH >
<Savage[m]> oof
<FireStriker[m]> your text didnt load?
<VITAS[m]> i find that a bit long for beeing a datacenter
<VITAS[m]> and why?
<VITAS[m]> no its small
<VITAS[m]> seems like your browser doesnt know css milimeters
<Savage[m]> Chrome?
<VITAS[m]> and webfonts
<VITAS[m]> should do it
<Savage[m]> Nah just took longer to loud
<Savage[m]> Thought it was funny
<VITAS[m]> as i said: im open to improvements
<Savage[m]> *edit:* ~~Nah just took longer to loud~~ -> Nah just took longer to load
<Savage[m]> I'm no web designer
<Savage[m]> Strictly a hardware man
<Savage[m]> Coders aren't human
<VITAS[m]> yes the bg image is quitelarge
<VITAS[m]> im both but not at work anymore
<VITAS[m]> coders dont have weekends
<FireStriker[m]> fellow coder here and i can agree we are a totaly different class of human lol
<FireStriker[m]> fellow coder here and i can agree we are a totally different class of human lol
<VITAS[m]> i do what needs to be done to make my ideas reality
<VITAS[m]> letter "R"
<Savage[m]> I'll build you a computer
<Savage[m]> It'll reciever power
<Savage[m]> That's where my ship sails
<Savage[m]> Coding ain't nature I tell ya
<Savage[m]> Coding ain't natural I tell ya
<VITAS[m]> youre welcome to donate computers :D
<VITAS[m]> my i7 2700k could use a replacement
* Savage[m] uploaded an image: D4aquBgU0AAlYyA.png (856KB) < https://matrix.52k.de/_matrix/media/r0/download/52k.de/CCwdxuiFkxnBzAjXSmLBKOJh >
<HebaruSan[m]> My wife's computer needs a new power supply I think, its fan keeps making this noise
<VITAS[m]> that does look like a coder
<Savage[m]> i mean.
<VITAS[m]> :P
<Savage[m]> If you guys are near south Clifornia
<Savage[m]> If you guys are near south California
<Savage[m]> I'd be down
<VITAS[m]> we are sort of all over the globe
<Savage[m]> figures
<VITAS[m]> i think dsonbill in in Arizona
<Savage[m]> I'm US-W as i said, where u bois at
<VITAS[m]> hamburg
<HebaruSan[m]> Flyover country
<VITAS[m]> the thing where the burgers came from
<FireStriker[m]> i am a hardware person but i do know how to code even tho i am trash at it
<Savage[m]> Deutschland?
<VITAS[m]> correct
<Savage[m]> you speak German?
<VITAS[m]> we have also Darklight from down under, RockyTV (IRC) from brazil and so on
<VITAS[m]> no
HebaruSan[m] has quit [Quit: Client limit exceeded: 6]
<VITAS[m]> :P
RB101[m] has joined #spacedock
<Savage[m]> You faker
<RB101[m]> Where has the KSP spacedock gone?
* RB101[m] uploaded an image: unknown.png (1932KB) < https://matrix.52k.de/_matrix/media/r0/download/52k.de/CyjEoruZxmVrYHtUhSGNlrQu >
<VITAS[m]> RB101 into maintenance mode
<Savage[m]> Ur not a real German
<Savage[m]> See Vitas
<Savage[m]> I told you.
<VITAS[m]> i speak swabian
<FireStriker[m]> maybe you should add on that page that its in maintenance mode
<VITAS[m]> and cologne
<Savage[m]> > well, Don't start with "SpaceDock isn't here." Sounds like it's like gone gone
<Savage[m]> <span class="d-mention d-user">Savage</span>
<FireStriker[m]> other then that i love it
<VITAS[m]> i wanted to ad a link to a page where we can post more info
RB101[m] has quit [Client Quit]
HebaruSan[m] has joined #spacedock
<HebaruSan[m]> It is high in visual appeal
<FireStriker[m]> thats a good idea
<VITAS[m]> *looks at HebaruSan and DasSkelett *
<VITAS[m]> seeeee!
<VITAS[m]> :D
<Savage[m]> Hey Vitas
<Savage[m]> Question
<HebaruSan[m]> Dude none of this is news to us
<HebaruSan[m]> We told you the landing page should explain it
<VITAS[m]> Savage will save us (in terms of error pages)
<Savage[m]> eventaully
<Savage[m]> eventually
<VITAS[m]> i believe in you
<Savage[m]> : D
<Savage[m]> 😄
<Savage[m]> : D
<VITAS[m]> savage shell but soft core
<Savage[m]> #0000
<Savage[m]> wtf
<VITAS[m]> letter T
<Savage[m]> How did you 😂
<Savage[m]> How did you : D
<FireStriker[m]> i could see, Discord Link + Error was gonna end with a bunch of people entering and asking why its down and if your lucky mentioning cfcx.
<FireStriker[m]> Im surprised i have only seen one join and ask since i joined
<VITAS[m]> youre a ksp fan you must be a nice person
<Savage[m]> Vitas
<Savage[m]> Question
<FireStriker[m]> I gotta say
<FireStriker[m]> how many years has it been?
<FireStriker[m]> either way thanks for spacedock
<VITAS[m]> https://pad.52k.de/p/sderrortext i hereby crowdsource the text
<VITAS[m]> please improve
<VITAS[m]> :)
<FireStriker[m]> i saw kerbal stuff rise and fall then spacedock was formed
<VITAS[m]> FireStriker: dont know 4? 6? soemthing like that
Webchat779 has joined #spacedock
Webchat779 has quit [Client Quit]
<VITAS[m]> i only hope it will exist with ksp2
<VITAS[m]> Savage: question....=
<VITAS[m]> ?
<Savage[m]> What the FUCK is Swabian?
<VITAS[m]> south west germany
<VITAS[m]> its a dialect
HebaruSan[m] has quit [Quit: Client limit exceeded: 6]
<VITAS[m]> sounds like the soft version of swiss german
DasSkelett[m] has joined #spacedock
<DasSkelett[m]> <span class="d-mention d-user">VITAS</span> did you just dump all games of Steam into the games table? Theres's a _ton_.
<VITAS[m]> DasSkelett: i wrote a script that connect to a gamedb site api once
<VITAS[m]> not steam
<Savage[m]> Es gibt keine Köln Sprache
<VITAS[m]> yes there is
<VITAS[m]> "kölsch"
<FireStriker[m]> 2016?
<VITAS[m]> beer and dialect
<VITAS[m]> at least yes FireStriker
<DasSkelett[m]> I see. Wondered where the 20k games come from.
<FireStriker[m]> i would donate if i had the funds
<VITAS[m]> i did d-mp.org before that
<VITAS[m]> donate work FireStriker
<VITAS[m]> DasSkelett and HebaruSan could use a hand coding
<VITAS[m]> or someone could finaly read support@spacedock.info
<VITAS[m]> :D
<Savage[m]> My Swiss friend is calling your BS Vitas. No clue why she's so up in arms
<Savage[m]> too bad I can't PM u
<FireStriker[m]> im not sure how i could help, i do know how to code but im not very good at it
Webchat498 has joined #spacedock
DasSkelett[m] has quit [Client Quit]
HebaruSan[m] has joined #spacedock
<HebaruSan[m]> There are bug reports and enhancement suggestions here, and the code is on GitHub too:
<Savage[m]> How much does SpaceDock cost you guys?
<VITAS[m]> FireStriker: np spacedocks code quality isnt great either
<Savage[m]> unless you've got like an old laptop hostin
<VITAS[m]> Savage: i pay about 70€/month for server stuff
<VITAS[m]> atm
<Savage[m]> Damn my guy
<Savage[m]> For such a simple website?
<VITAS[m]> a well used website with code that needs some kicking to get going
<VITAS[m]> nearly every ksp user out there is downloading mods form it
<FireStriker[m]> how many gb of mods are hosted on it?
Webchat911 has joined #spacedock
<Savage[m]> 239
<Savage[m]> Guessing
<VITAS[m]> uhm 400?
<VITAS[m]> i think
Webchat911 has quit [Client Quit]
<VITAS[m]> its more about how often do people download them
<VITAS[m]> just think about scatterer and so on
hyx5020 has joined #spacedock
<VITAS[m]> and the server also does other ksp related things
<VITAS[m]> like dmp
<FireStriker[m]> whistling dont look over here
<FireStriker[m]> i download A LOT
<VITAS[m]> np
<VITAS[m]> for the amount of money traffic and storage isnt an issue
<FireStriker[m]> i have been downloading from github more and more but you cant beat the community mod site
<VITAS[m]> sd for me has one job: give you the mod. instantly
<FireStriker[m]> yep
<VITAS[m]> thats where kerbalstuff failed sometimes
<Savage[m]> What do you do Vitas?
<VITAS[m]> currently?
<FireStriker[m]> kerbalstuff had a lot of issues
<FireStriker[m]> even with reuploades
<VITAS[m]> and slowness on ksp update days
<FireStriker[m]> im not gonna lye i reuploaded Aset to KerbalStuff when it was deadlinks
<Savage[m]> Yea. Like for work
<VITAS[m]> nothing atm
<Savage[m]> i assume you don't live in a carboard box with that monthly upkeep fee
<VITAS[m]> i worked for lufthansa technik last
<VITAS[m]> and corona made that stop
<FireStriker[m]> or was it spacedock, i forget but i havent done that before
<Savage[m]> I'm an American
<Savage[m]> the fuck does that mean
<HebaruSan[m]> The cardboard box is an extra 25 euros
<FireStriker[m]> is that the airline?
<Savage[m]> Well based on Tech, and the coder convo I'd say no
<VITAS[m]> lufthansa = german airline (also owns many other airlines), technik= maintenance of planes and modification of planes
<Savage[m]> Sounds like a PC place
<HebaruSan[m]> Yeah it's kind of named after https://en.wikipedia.org/wiki/Hanseatic_League
<Savage[m]> well fuck me
<VITAS[m]> my official ttitle was: senior it consultant for corporate security access control
<VITAS[m]> so basicly the person who has the keys to every thing that controlls the keys to everything
<FireStriker[m]> did you have to tell them to turn the 787s off and on again?
<VITAS[m]> no i revoked access cards
<VITAS[m]> the last one was my own :D
<FireStriker[m]> 😦
<Savage[m]> u sound like ur job was pretty high up
<VITAS[m]> it was well paying until it wasnt
<Savage[m]> You don't say "mock surprise :O"
<FireStriker[m]> if you didnt known if the 787 was on ground power for a month or so it had to be powered down or the guidance would malfunction
<VITAS[m]> btw airbus final assembly is in hamburg too
<FireStriker[m]> it could be fixed but turning it off before 30 days avoided the issue all togther
<FireStriker[m]> i wonder how many 787s are gonna need attention after covid
<FireStriker[m]> wait no not ground power
<FireStriker[m]> just siting not powered
<VITAS[m]> so when some saudi prince bought a new private plane they where assembled at airbus, send across the city to lufthansa technik and where customized to the buyers liking
<FireStriker[m]> <- - - - HUGE AV Geek
<VITAS[m]> i studied mediasience
<VITAS[m]> but thats a different AV?
<VITAS[m]> :D
<FireStriker[m]> *edit:* ~~<- - - - HUGE AV Geek~~ -> <- - - - HUGE AVGeek
<FireStriker[m]> love planes
<VITAS[m]> i did fly sailplanes
<VITAS[m]> even acrobatics
<VITAS[m]> so yes i love planes too
* VITAS[m] uploaded an image: IMG_v20200225_170100.jpg (7595KB) < https://matrix.52k.de/_matrix/media/r0/download/52k.de/aJjWfnpTQnJIHwteSjxIMIia >
<VITAS[m]> why does rsync start at b again after reaching z?
HebaruSan[m] has quit [Quit: Client limit exceeded: 6]
DasSkelett[m] has joined #spacedock
<DasSkelett[m]> Forgot it the first time?
<VITAS[m]> :D
<VITAS[m]> now its at Linuxgurugamer
<FireStriker[m]> Airbus?
<VITAS[m]> dont know what it is
<VITAS[m]> coudl aos be a small boing?
<VITAS[m]> that was one of the hangars at work
<FireStriker[m]> rolls roycs engines
Webchat408 has joined #spacedock
* VITAS[m] uploaded an image: IMG_v20200225_170038.jpg (7567KB) < https://matrix.52k.de/_matrix/media/r0/download/52k.de/gGVFbYakrPsofbQLtbbcZrgD >
<FireStriker[m]> when was that photo?
<VITAS[m]> 25th feb 2020
<VITAS[m]> 1700 and 35s
<VITAS[m]> says the filename
<VITAS[m]> 38
Webchat408 has quit [Client Quit]
Savage[m] has quit [Quit: Client limit exceeded: 6]
HebaruSan[m] has joined #spacedock
<HebaruSan[m]> <span class="d-mention d-user">VITAS</span> you need us to work on or investigate anything else, or is it looking good at this point?
<VITAS[m]> you tell me :D
<VITAS[m]> we can see whats left once the sync is compleate
<VITAS[m]> kölsch
DasSkelett[m] has quit [Quit: Client limit exceeded: 6]
Pak9999[m] has joined #spacedock
<Pak9999[m]> When will the site be up and running again?
FireStriker[m] has quit [Quit: Client limit exceeded: 6]
DasSkelett[m] has joined #spacedock
<DasSkelett[m]> TBD
HebaruSan[m] has quit [Quit: Client limit exceeded: 6]
FreeThinker[m] has joined #spacedock
<FreeThinker[m]> TBD = To Be Determined>
<FreeThinker[m]> TBD = To Be Determined?
<DasSkelett[m]> Yes. But shouldn't take that long anymore, we're mostly through.
<Pak9999[m]> ok thx for the info.
<FreeThinker[m]> SO whats new?
<DasSkelett[m]> This PR has a good overview of all the changes: https://github.com/KSP-SpaceDock/SpaceDock/pull/301
<FreeThinker[m]> I wish a feature that would allow you to select a compatible version range for a mod
<FreeThinker[m]> I wish a feature could be added that would allow you to select a compatible version range for a mod.
<FreeThinker[m]> Now I have to choose between the minum version (which makes to mod out of date) and latest version (which makes the mod up to date)
<FreeThinker[m]> I tried to upload all version seperatly in the past but this cost too much time
Webchat734 has joined #spacedock
VITAS[m] has quit [Quit: Client limit exceeded: 6]
FireStriker[m] has joined #spacedock
<FireStriker[m]> i think it might be a a320 but i ma not sure
<FreeThinker[m]> a320 ?
Webchat734 has quit [Client Quit]
<FireStriker[m]> talking to VITAS about a plane he took a photo of, looks to be a small twin engine narrow body airplane
<FreeThinker[m]> alternative, Spacedock should just look at the version file to determine if its up to date
<FreeThinker[m]> alternatively, Spacedock should just look at the version file to determine if its up to date
Pak9999[m] has quit [Quit: Client limit exceeded: 6]
HebaruSan[m] has joined #spacedock
<HebaruSan[m]> <span class="d-mention d-user">FreeThinker</span> the focus right now is on getting the update working, try https://github.com/KSP-SpaceDock/SpaceDock/issues for enhancement ideas
DasSkelett[m] has quit [Quit: Client limit exceeded: 6]
VITAS[m] has joined #spacedock
<VITAS[m]> somehow stuff froms torage still isnt loading
FireStriker[m] has quit [Quit: Client limit exceeded: 6]
Darklight[m] has joined #spacedock
<Darklight[m]> Did I miss anything?
<HebaruSan[m]> 3 hotfixes
Webchat111 has joined #spacedock
FreeThinker[m] has quit [Quit: Client limit exceeded: 6]
VITAS[m] has quit [Quit: Client limit exceeded: 6]
KarolOfGutovo[m] has joined #spacedock
<KarolOfGutovo[m]> Should spacedock be up rn?
DasSkelett[m] has joined #spacedock
<DasSkelett[m]> Some thumbs load, some don't. Can you check whether `godarklight_151/DarkMultiPlayer/thumb_DarkMultiPlayer-1456094845.1546948.png` exists in the storage?
<Webchat111> what happend
<DasSkelett[m]> Planned maintenance @Webchat111
<KarolOfGutovo[m]> How long is it estimated to last?
<Webchat111> i miss it already
<Webchat111> when will it be up and running again
<DasSkelett[m]> Unknown <span class="d-mention d-user">KarolOfGutovo</span> @Webchat111, maybe one or two hours, possibly longer. Hard to say.
<Webchat111> ok thx
<KarolOfGutovo[m]> Nice. Can't wait to download another share of mods that I will never use but appreciate nonetheless
<Webchat111> also can i ask a question
Darklight[m] has quit [Client Quit]
FireStriker[m] has joined #spacedock
<FireStriker[m]> be patient it will be up soon™️
HebaruSan[m] has quit [Quit: Client limit exceeded: 6]
Darklight[m] has joined #spacedock
<Darklight[m]> Errr, when did the update start?
<FireStriker[m]> um
<Darklight[m]> On pc now so I can check dasskellet
<Webchat111> how do you update mods because 1.10 is tomorow
<DasSkelett[m]> 06:02 UTC
<Darklight[m]> 16:02 my time oof
<Darklight[m]> Hours ago
<Webchat111> 7pm in my time then
<FireStriker[m]> 17:04 here
<Webchat111> so how do you update mods on spacedock
<Webchat111> because i only started using it for a couple of weeks
<DasSkelett[m]> You can't right now @Webchat111. Be patient.
<Webchat111> i mean after its online
<FireStriker[m]> are you updating your mod?
<Darklight[m]> darklight@sd1:/srv/storage/kspmods/godarklight_151/DarkMultiPlayer$ ls -alh /srv/storage/kspmods/godarklight_151/DarkMultiPlayer/thumb_DarkMultiPlayer-1456094845.1546948.png
<Darklight[m]> -rw-r--r-- 1 www-data www-data 4.8K Apr 9 2016 /srv/storage/kspmods/godarklight_151/DarkMultiPlayer/thumb_DarkMultiPlayer-1456094845.1546948.png
<Webchat111> no
<Darklight[m]> *edit:* ~~darklight@sd1:/srv/storage/kspmods/godarklight_151/DarkMultiPlayer$ ls -alh /srv/storage/kspmods/godarklight_151/DarkMultiPlayer/thumb_DarkMultiPlayer-1456094845.1546948.png
<Darklight[m]> -rw-r--r-- 1 www-data www-data 4.8K Apr 9 2016 /srv/storage/kspmods/godarklight_151/DarkMultiPlayer/thumb_DarkMultiPlayer-1456094845.1546948.png~~ -> ```darklight@sd1:/srv/storage/kspmods/godarklight_151/DarkMultiPlayer$ ls -alh /srv/storage/kspmods/godarklight_151/DarkMultiPlayer/thumb_DarkMultiPlayer-1456094845.1546948.png
<Darklight[m]> -rw-r--r-- 1 www-data www-data 4.8K Apr 9 2016 /srv/storage/kspmods/godarklight_151/DarkMultiPlayer/thumb_DarkMultiPlayer-1456094845.1546948.png```
<Darklight[m]> It exists
<DasSkelett[m]> There's a big "Update this Mod" button on your mod's page when you are logged in @Webchat111
<FireStriker[m]> What do you plan to update?
KarolOfGutovo[m] has quit [Quit: Client limit exceeded: 6]
VITAS[m] has joined #spacedock
<VITAS[m]> Darklight: what to have a look too
<Webchat111> i mean after 1.10 many mods will update like knes and i don't know how to update them
<VITAS[m]> we are on sd1a
<Darklight[m]> Oh I was on prod
<VITAS[m]> sd1 isnt used anymore
<FireStriker[m]> be patient webchat111, if we are lucky most part mods will work in 1.10 and it will take time for modders to update to 1.10
<VITAS[m]> sd1 is currently prod
<VITAS[m]> sd1a
<Webchat111> ok
<VITAS[m]> i get 400 errors froma pache
<VITAS[m]> webserver
Webchat111 has quit [Quit: webchat.esper.net]
<Darklight[m]> Can we take down everything but 8004 so if we get errors we can see them, currently it's in a bazillion different logs 😛
<Darklight[m]> I am not seeing errors yet though, one sec
<VITAS[m]> be my guest
DasSkelett[m] has quit [Quit: Client limit exceeded: 6]
<VITAS[m]> the site itself works
LimpRamen[m] has joined #spacedock
<LimpRamen[m]> just got this code "cfcx" what does it mean?
<Darklight[m]> Updating spacedock 😉
<FireStriker[m]> Its fine limp
<VITAS[m]> its everythign froms torage
<FireStriker[m]> spacedock is getting updated
<FireStriker[m]> is it getting a fresh lick of paint by any chance?
<LimpRamen[m]> ahhh ok thats great!
<FireStriker[m]> If a mod is not working and isnt getting maintained you could always look at the post by LinuxGuruGamer on how to maintain a mod. This is if it doesnt have a NoDerivatives license. If it has one of them you are just gonna have to wait for the author to return
<FireStriker[m]> how does that irc bot work?
<Darklight[m]> Odd.... 50's
<Darklight[m]> Odd.... 502's
<VITAS[m]> yes
<VITAS[m]> all the errors
<VITAS[m]> i only get them when acc either stuff from storage or using internal domains
<VITAS[m]> not with lan ip or external domain and dynamic or static content from gunicorn
<Darklight[m]> I'm using the actual DNS for the new endpoint, I am not seeing any new accesses in apache so the problem exists higher up maybe? I'll try an ssh tunnel in and see if it's fine
<VITAS[m]> you should check the error log in /var/log/apache2/spacedock.info-access.log
<VITAS[m]> i see acc there
<VITAS[m]> i think it has to do with apache webserver config and storage config
<VITAS[m]> sd itself is fine i think
<Darklight[m]> Oh I thought it was in the root folder
<VITAS[m]> i moved it
<VITAS[m]> didnt delete it
Webchat818 has joined #spacedock
<VITAS[m]> maybe acc rigths or paths to storage?
<VITAS[m]> the apache config worked before on that host
<VITAS[m]> maybe something got broken whyile rsyncing /storage/sdmods
<VITAS[m]> the files are fine and i can open them
LimpRamen[m] has quit [Quit: Client limit exceeded: 6]
DasSkelett[m] has joined #spacedock
<DasSkelett[m]> Restart the webserver?
<VITAS[m]> multiple times
* Darklight[m] uploaded an image: theheck.png (122KB) < https://matrix.52k.de/_matrix/media/r0/download/52k.de/eKIuUCHihPjbgklvbracYgKL >
<Darklight[m]> The heck is this
<VITAS[m]> restarted all the things
<VITAS[m]> its apache sending error pages as image?
<Darklight[m]> It's not sending headers properly at all
<Darklight[m]> (This is using the ssh tunnel so no ATS)
<VITAS[m]> wy 8080
<Darklight[m]> Because I have something on 80 I think
<Darklight[m]> I am using -L 8080:127.0.0.1:80
<VITAS[m]> i get headers
<VITAS[m]> try wget on the host itself
<Darklight[m]> Listens on 8080, forwards to ssh host's 80
<VITAS[m]> and emulates servername?
<Darklight[m]> Same problem on the host itself
FireStriker[m] has quit [Quit: Client limit exceeded: 6]
Jordi2006[m] has joined #spacedock
<Jordi2006[m]> Why when I go on spacedock I have this error code : cfcx ?
<DasSkelett[m]> Because we do maintenance <span class="d-mention d-user">Jordi2006</span>
VITAS[m] has quit [Quit: Client limit exceeded: 6]
FireStriker[m] has joined #spacedock
<FireStriker[m]> i think i got this, i have a message in my clipboard
<Jordi2006[m]> ok
<FireStriker[m]> what do you think
<FireStriker[m]> or is it a bit eh
Darklight[m] has quit [Quit: Client limit exceeded: 6]
VITAS[m] has joined #spacedock
<VITAS[m]> the chat should always be that popular
<FireStriker[m]> i was about to ask does cdcx mean anything or is it random?
DasSkelett[m] has quit [Quit: Client limit exceeded: 6]
Jordi2006[m] has quit [Client Quit]
private9001[m] has joined #spacedock
<private9001[m]> do you have an eta of when the site will be back up?
DasSkelett[m] has joined #spacedock
<DasSkelett[m]> <span class="d-mention d-user">VITAS</span> easy, just take down SpaceDock regularly 😛
VITAS[m] has quit [Client Quit]
Darklight[m] has joined #spacedock
<Darklight[m]> I think vitas did something as it is 403 😛
<FireStriker[m]> Was the eta 14:00 UTC?
<DasSkelett[m]> Well, everything is a 403 now.
<FireStriker[m]> could be shorter could be longer
<private9001[m]> ok thank you
<private9001[m]> ok thank you
<FireStriker[m]> i plan to keep this place active after the downtime
<FireStriker[m]> nice foke in here
<Darklight[m]> Give us a little bit is all, we are just seeing some very strange stuff
<FireStriker[m]> ^
<Darklight[m]> I don't get why we're getting weird headers, I've only seen this once before in a bug with uhttpserver with LMP (nothing to do with spacedock)
<FireStriker[m]> what kind of funky headers
DasSkelett[m] has quit [Client Quit]
VITAS[m] has joined #spacedock
<VITAS[m]> i think its you
<VITAS[m]> because i get normal headers
private9001[m] has quit [Client Quit]
DasSkelett[m] has joined #spacedock
<DasSkelett[m]> Oh we're back to 502s now.
<FireStriker[m]> as long as we dont get a 404
<VITAS[m]> yes i know because im playing with the apache config
<VITAS[m]> can do that for you
<FireStriker[m]> <span class="d-emoji">:grimmy1Sip:</span>
Webchat607 has joined #spacedock
<FireStriker[m]> 404 dock not found, maybe its been moved to another part of space
Webchat607 has quit [Client Quit]
<VITAS[m]> if i remove nearly all of apacche webservers config and put the image in /var/www/html it works http://10.150.1.63/test.png
<Darklight[m]> Ok I see something now
<Darklight[m]> Can I fix it, I see an issue?
<Darklight[m]> ``/srv/storage/kspmods/`` is not correct in apache config
<Darklight[m]> Hrmm. borksed
<VITAS[m]> yes
<VITAS[m]> because i know
<VITAS[m]> look again
<Darklight[m]> I saw it changed 😉
<VITAS[m]> i copied over sd1 conf
<VITAS[m]> and was just altering it
<VITAS[m]> we know thats good
<DasSkelett[m]> `/srv/storage/kspmods/` appears multiple times in the config, did you change all of them?
<VITAS[m]> yes search replace
<Darklight[m]> Looks like it, apache is being super strange...
<VITAS[m]> it has to do with the location
<Darklight[m]> Can we comment out SendFile?
<VITAS[m]> if i move a file to /var/www/html and remove all crap except the bar eminimum its serving it
<Darklight[m]> Because static has the same config except sendfile
<Darklight[m]> And static works
<VITAS[m]> im going with the known good config from sd1 atm
<VITAS[m]> but be my guest
<Darklight[m]> It's not known good because it's broke 😛
<VITAS[m]> its still working
<VITAS[m]> only not on this host
<VITAS[m]> :D
<VITAS[m]> i belive it has to do with some rights issues or anythign regarding the sahre/storage
<VITAS[m]> apache has problems reading files from it
<VITAS[m]> thats my guess
<VITAS[m]> i had it working before we migrated
<VITAS[m]> i blame the sahre and maybe rsync
<FireStriker[m]> whats it coded in?
<Darklight[m]> Hrmm, if I don't proxypass it works correctly
<Darklight[m]> So there must be a proxy flag messing it up perhaps
<VITAS[m]> go ahead and edit the config
<Darklight[m]> Will do, I will see what happens if I drop the balancer in a sec
<VITAS[m]> shouldnt storage bypass the balancer?
<DasSkelett[m]> <span class="d-mention d-user">FireStriker</span> you mean SpaceDock? It is Python+Flask+SqlAlchemy.
<Darklight[m]> Err actually good point, but let me fiddle with apache. It's definitely apache anyway
<VITAS[m]> i let you
<VITAS[m]> ill get some food
<VITAS[m]> been at for 6 now
FireStriker[m] has quit [Quit: Client limit exceeded: 6]
Snowyy[m] has joined #spacedock
<Snowyy[m]> why is spacedock down
DasSkelett[m] has quit [Quit: Client limit exceeded: 6]
FireStriker[m] has joined #spacedock
<FireStriker[m]> its being updated
<Snowyy[m]> ok
<FireStriker[m]> it will be back up Soon™️
<VITAS[m]> FireStriker: youre doing a great job :)
<Darklight[m]> I am tempted to do an upgrade just incase apache borked something, this does seem like an apache bug
<VITAS[m]> found gummybears and prezels
<FireStriker[m]> thanks
<Darklight[m]> It's putting the first part of the HTTP header right at the end, possibly
<Darklight[m]> There is a thing on the end that changes anyway
<VITAS[m]> interweb says: apache doesnt like _ and stuff
<VITAS[m]> tends to get all worked up if config contains chars it doesnt like
ummm has joined #spacedock
ummm has quit [Client Quit]
Webchat787 has joined #spacedock
<VITAS[m]> that works
<VITAS[m]> winner
<Darklight[m]> Yeah maybe we have to let gunicorn do xsendfile rather than bypassing it completely for now?
<Darklight[m]> This HAS to be an apache bug
Snowyy[m] has quit [Quit: Client limit exceeded: 6]
DasSkelett[m] has joined #spacedock
<DasSkelett[m]> 🎉
<Darklight[m]> Also I can bring the balancer back, I have no fucking idea what is going on and why content doesn't work but static *does*
<VITAS[m]> ah i see what you did
<Darklight[m]> They are under the exact same config
<Darklight[m]> Yeah commented it out
<Darklight[m]> Let gunicorn send it instead
<Darklight[m]> You can bring back the balancer, I only did that for debugging
<VITAS[m]> < fears the gunicorn
<Darklight[m]> I'm going to check how gunicorn looks
<VITAS[m]> but yes better some page than no page
<DasSkelett[m]> You guys tell me when you think it's safe to test uploading.
<VITAS[m]> we will
<FireStriker[m]> fingers crossed
<Darklight[m]> Something is wrong when accessing 8004 directly, static is completely missing 🤔
Webchat787 has quit [Quit: webchat.esper.net]
<VITAS[m]> and if i use internal domains i still gett 400 for the whole site
<Darklight[m]> For me the page loads and content loads, but static does not
<Darklight[m]> That may be a production setting though
<VITAS[m]> for me everything loads if i use the lan ip
<DasSkelett[m]> Isn't static also handled by the web server?
<Darklight[m]> Yes
<Darklight[m]> Which is why it works with the webserver
<VITAS[m]> and nothing if i use sd1a.52k (no .de)
<VITAS[m]> from lan
<Darklight[m]> I am using ssh port forwarding to check this otu
<Darklight[m]> I am using ssh port forwarding to check this out
<VITAS[m]> that works on the other hand
Webchat288 has joined #spacedock
Webchat288 has quit [Client Quit]
FireStriker[m] has quit [Quit: Client limit exceeded: 6]
HebaruSan[m] has joined #spacedock
<HebaruSan[m]> Alright, I'm going offline for a couple of hours. Good luck.
<Darklight[m]> I think what may be worth doing is seeing if apache is using different mods between old prod and new prod
<Darklight[m]> I'll check that out
<VITAS[m]> so to sum it up: we dont know whats wrong. we got half working by commenting out bits and the other half isnt for no apparent reason
<VITAS[m]> good times :/
<VITAS[m]> i can go by ip if needed
<VITAS[m]> seems like we have to fix some stuff soon anyway
<VITAS[m]> my thoughts: lets go with lb and without bypass for content for now and try to come up with a solution on sd1b (it should act the same way)
<Darklight[m]> The only difference is the old server has mod_proxy_hcheck
<Darklight[m]> I guess I can add that...
<VITAS[m]> yes
<VITAS[m]> just remember add everything on a & b
<VITAS[m]> not only on one
Webchat374 has joined #spacedock
<VITAS[m]> we wills cratch our hads later if we dont
<VITAS[m]> < hands out vouchers
<VITAS[m]> sorry for the inconvinience
DasSkelett[m] has quit [Quit: Client limit exceeded: 6]
FireStriker[m] has joined #spacedock
<FireStriker[m]> whats it doing this time
<VITAS[m]> we dont know thats the problem
<VITAS[m]> :D
<VITAS[m]> in a nutshell: i set up a new host to run SD from. i copied over the mod storage folder and got it working. today we updated the code and i synced the mod storage. somehow its now throwing 400 errors when accessing the mod storage
<FireStriker[m]> oh so like all the mm patches i write, matches the syntax, nothing wrong, ERROR
<FireStriker[m]> im currently troubleshooting 2
<FireStriker[m]> one that is a warning and one thats an error
<Darklight[m]> Going to change some stuff back to prod-like, if the error exists with hcheck we should just disable proxypass for content - gunicorn offloads it anyway
<VITAS[m]> yes
<VITAS[m]> and then find a more permanent solution suing sd1b
<VITAS[m]> using
<FireStriker[m]> was the new code working before the migration?
HebaruSan[m] has quit [Quit: Client limit exceeded: 6]
<VITAS[m]> yes
<VITAS[m]> we have testing
<VITAS[m]> at least some
Darklight[m] has quit [Quit: Client limit exceeded: 6]
DasSkelett[m] has joined #spacedock
<DasSkelett[m]> Well, mostly.
<VITAS[m]> but we could use beta testers
Webchat374 has quit [Quit: webchat.esper.net]
<FireStriker[m]> i wonder what broke during the migration then
<FireStriker[m]> I didnt think spacedock was so touch wood lol
<DasSkelett[m]> Currently they're working on the updated Apache Web Server behaving differently than the old one.
<VITAS[m]> uhm it is crapy old code we try to improve over time
FireStriker[m] has quit [Quit: Client limit exceeded: 6]
Darklight[m] has joined #spacedock
<Darklight[m]> We are clearly fighting an apache bug
<Darklight[m]> Maybe something is odd about mount
<Darklight[m]> Let's not proxypass, I can try to reproduce this later with those mount settings
<VITAS[m]> i remember when i set the host up i had similar issues and got it to work without knowing why
<Darklight[m]> For now let's just get it up I think
DasSkelett[m] has quit [Client Quit]
FireStriker[m] has joined #spacedock
<FireStriker[m]> now how do we get the bug out of the apache, it could do some damage in that
<FireStriker[m]> mind my puns
<VITAS[m]> something todo with chars in the config that disturbed it and i couldnt see or soemthing
<VITAS[m]> FireStriker: my finger nails curl from that level of pun
<FireStriker[m]> <span class="d-emoji">:grimmy1Sip:</span>
<VITAS[m]> Darklight: yes i want to relax a bit
<Darklight[m]> I've set it back to prod-like, just with content not proxypass'd but remember we do have xsendfile
<Darklight[m]> I'd say get skellet to try uploading
<VITAS[m]> DasSkelett: ?
<VITAS[m]> go
DasSkelett[m] has joined #spacedock
<DasSkelett[m]> Okay
Webchat854 has joined #spacedock
Webchat854 has quit [Client Quit]
FireStriker[m] has quit [Client Quit]
James566[m] has joined #spacedock
<James566[m]> hey
<James566[m]> is the side down for maintenance
<VITAS[m]> yes
<VITAS[m]> but we are nearly done
<James566[m]> Ah ok thanks
<Darklight[m]> I think it will be up soon, just hit a webserver bug for sure
<VITAS[m]> < waits on DasSkelett
<VITAS[m]> you might have problems with redirects to spacedock.info
<DasSkelett[m]> Updating and Creating new mods works, updating old mods works, downloading both old and new mods works when circumventing the redirect by editing the url.
<DasSkelett[m]> We are Go from my side ✅
<VITAS[m]> ok
<DasSkelett[m]> *edit:* ~~Updating and Creating new mods works, updating old mods works, downloading both old and new mods works when circumventing the redirect by editing the url.
<DasSkelett[m]> We are Go from my side ✅~~ -> Creating new mods works, updating old mods works, downloading both old and new mods works when circumventing the redirect by editing the url.
<DasSkelett[m]> We are Go from my side ✅
<VITAS[m]> then ill make it live
James566[m] has quit [Client Quit]
FireStriker[m] has joined #spacedock
<FireStriker[m]> We are Go for Launch
<DasSkelett[m]> Phew, finally. Tough one.
<FireStriker[m]> main engine start
<VITAS[m]> hmm ipv6 problems
<VITAS[m]> sec
<DasSkelett[m]> I can reach it fine via IPv6.
<FireStriker[m]> i see a Cheeseburger
<VITAS[m]> hmm i too my monitoring said nope
<VITAS[m]> but maybe its delayed from all the restarting things
<VITAS[m]> i want a cheesburger
<FireStriker[m]> some one uploaded a Cheeseburger
<VITAS[m]> original plan was to cycle trough the city and get some soup
<VITAS[m]> but weather isnt nice and this took longer than expected
<VITAS[m]> can $ someone post on the forums that we are done?
<DasSkelett[m]> Will do
Darklight[m] has quit [Quit: Client limit exceeded: 6]
James566[m] has joined #spacedock
<James566[m]> eyy its back up
<VITAS[m]> yes
<VITAS[m]> finaly
<FireStriker[m]> im just gonna say (bc of my shuttle puns) the SSMEs have a sexxy startup
<VITAS[m]> FireStriker: i cant see the cheesburger
<FireStriker[m]> nothing i have seen comes close
<hyx5020> So, has the site been upgraded, or has it been rolled back?
<VITAS[m]> forwards is the only way
<VITAS[m]> :D
<hyx5020> lol
<VITAS[m]> but we will ahve to fix soem things that came up in a few days
<FireStriker[m]> Good morning cheeseburger
<FireStriker[m]> strange mod name tbh
<VITAS[m]> < made a list of all the crap that went wrong
<VITAS[m]> good morning usa
<VITAS[m]> i can clearly see that SD is back up again
<FireStriker[m]> i just informed the r/ksp discord
<VITAS[m]> had a sudden jump by at least 300mbit/s
<DasSkelett[m]> Haha
<VITAS[m]> < goes to do some chillaxing
James566[m] has quit [Quit: Client limit exceeded: 6]
RockyTV[m] has joined #spacedock
<RockyTV[m]> did someone mention me?
<VITAS[m]> always
<RockyTV[m]> my backlog is limited to 150 messages :/
<RockyTV[m]> on irc
<VITAS[m]> so youll never know what we said about you
<VITAS[m]> only nice things :)
<RockyTV[m]> so beta is finally live?
<DasSkelett[m]> Yes. Look at how fast https://spacedock.info/kerbal-space-program/browse/top is now
<RockyTV[m]> yeah
<RockyTV[m]> why is the embed bugged? 😛
<RockyTV[m]> lol
* RockyTV[m] uploaded an image: unknown.png (8KB) < https://matrix.52k.de/_matrix/media/r0/download/52k.de/pvuDwZQDBMkShqkunQScDjeb >
<VITAS[m]> you missed the update wars
<VITAS[m]> of june 30th
<VITAS[m]> i hope your job goes well
<RockyTV[m]> oh it is, but driving me insane lately cuz I haven't been doing anything at all (other than watching people code to try and learn how the repos are structured and how each project works), hopefully it will change today, I already got access to their azure devops
<VITAS[m]> i had to sort a room with tons of computer cables once
<VITAS[m]> i know how you feel
<VITAS[m]> they should give you some test proj where you can try out what you observed
<VITAS[m]> would help learning
FireStriker[m] has quit [Quit: Client limit exceeded: 6]
Darklight[m] has joined #spacedock
<Darklight[m]> So I guess I go into sd1b and comment out that same line...
<Darklight[m]> Done
<VITAS[m]> yes
<VITAS[m]> and if you stillw ant to you can play with sd1b to solve the problem
<VITAS[m]> you can temp use prod db for it
<VITAS[m]> its then as easy as changing a dns entry to put them into production
<RockyTV[m]> <span class="d-mention d-user">HebaruSan</span> do you have any screenshots for #293 (modpack fixes)?
DasSkelett[m] has quit [Quit: Client limit exceeded: 6]
KineticSloth8StoneBlue[m] has joined #spacedock
<KineticSloth8StoneBlue[m]> so there are rumours that supposedly, KSP 1.10 is set to release today? vOv
<VITAS[m]> yes
<VITAS[m]> someone (tm) will have to add it when it does
<KineticSloth8StoneBlue[m]> 🤦 I dont think I'll be doing it... I pretty much forgot how, and I'm not about to screw it up, when the KSP update is happening around the *same time* 😦
<RockyTV[m]> 1.10 releases tomorrow, no? july 1st
<VITAS[m]> timezones?
<VITAS[m]> ok then i have to
Darklight[m] has quit [Quit: Client limit exceeded: 6]
DasSkelett[m] has joined #spacedock
<DasSkelett[m]> Speaking of adding game versions, I don't think Balsa has one yet.
<VITAS[m]> i did add one
<DasSkelett[m]> Going through https://spacedock.info/admin/gameversions/1 one by one I can't find it.
<DasSkelett[m]> (And the search isn't quite working as intended yet...)
<VITAS[m]> ill check
<VITAS[m]> < stands up from bed
<VITAS[m]> btw how bad would it be if i added 1.10 now?
<DasSkelett[m]> YOu'd get a bunch of confused mod authors thinking they missed the update 😛
<DasSkelett[m]> You'd get a bunch of confused mod authors thinking they missed the update 😛
<VITAS[m]> youre right i cant find it either
<VITAS[m]> strange
<VITAS[m]> what was the version of the demo again?
<RockyTV[m]> 0.25.something
<VITAS[m]> not precise enough :)
<KineticSloth8StoneBlue[m]> ppfffttt... people would complain if 1.10 is set early on SD.... complain if its not set within a couple minutes *after* 1.10 releases ... vOv
<KineticSloth8StoneBlue[m]> Do whats easiest for SD... 😛
<VITAS[m]> esiest would be now because im allready adding versions to things
<VITAS[m]> but ill wait a bit and let you do it :P
DasSkelett[m] has quit [Quit: Client limit exceeded: 6]
Darklight[m] has joined #spacedock
<Darklight[m]> I added a directory to my "spacedock checker" vm, It's version ``2.4.38-3+deb10u3`` meanwhile ubuntu's is ``2.4.41-4ubuntu3``
<VITAS[m]> balsa?
<Darklight[m]> But my server runs debian/unstable which is ``2.4.43-1``
<VITAS[m]> context?
<Darklight[m]> I tried serving a cifs fileystem
<Darklight[m]> It worked fine, as prod always had, it looks like I need to get a ubuntu vm to test..
<VITAS[m]> what are you exactly trying to do?
<Darklight[m]> Reproduce the bug
<VITAS[m]> as i said: try sd1b
<VITAS[m]> it should have the same bug
<VITAS[m]> and if you fix it we can switch over to it
<Darklight[m]> I commented out the proxypass line for now, but I am just proving to myself that it is apache without messing up a prod box
<VITAS[m]> sd1b isnt live
<VITAS[m]> apart from changing storage content there isnt anything to mes sup
<VITAS[m]> its exactly why it exists: to have something that is the same as whats currently serving and we can update without taking down spacedock
<VITAS[m]> i still need to know balsas exact version number
<VITAS[m]> for now its demo-0.25
<Darklight[m]> The demo can't have mods apart from my patched version, when the beta drops though that is when you're going to be able to use mods
<RockyTV[m]> what bug? storage one?
<RockyTV[m]> or balsa-related?
<VITAS[m]> is till want a version to be present
<VITAS[m]> lets call it a signal of support
<VITAS[m]> RockyTV: theres a bug in apache webserver we encountered while updating SD Darklight is looking into it
<VITAS[m]> i on the other hand have to add a version for balsa to the db (because somehow my first attempt failed)
hyx5020 has quit [Quit: webchat.esper.net]
hyx5020 has joined #spacedock
hyx5020 has quit [Client Quit]
KineticSloth8StoneBlue[m] has quit [Quit: Client limit exceeded: 6]
DasSkelett[m] has joined #spacedock
<DasSkelett[m]> The API is _really_ slow in some cases, not sure what that's about.
Darklight[m] has quit [Quit: Client limit exceeded: 6]
FireStriker[m] has joined #spacedock
<FireStriker[m]> has anyone ever had any issues with npp
<FireStriker[m]> im currently fighting the indent system to get it to work correctly
<DasSkelett[m]> It seems to be `mod_version()` that is slowing things down. So maybe `Modversion.download_count()`?
<DasSkelett[m]> Nope, not using Notepad++
<FireStriker[m]> well there goes that lol, if you need me i will be trying to beat it back into shape or figuer out how to turn that feature off
<VITAS[m]> api was never fast
RockyTV[m] has quit [Quit: Client limit exceeded: 6]
Darklight[m] has joined #spacedock
<Darklight[m]> I confirmed the bug definitely exists in the latest ubuntu apache2, it does not exist in debian/stable's version, I will test debian/unstable which is newer than ubuntu
<DasSkelett[m]> It should've been sped up with all the new indices and the score precalculation. But now https://spacedock.info/api/browse/top is timing out.
* Darklight[m] uploaded an image: corrupt.png (19KB) < https://matrix.52k.de/_matrix/media/r0/download/52k.de/vvHufFbNpdSxvlPcDbBTrjHj >
<Darklight[m]> For reference
<Darklight[m]> It's not mod_expires either
FireStriker[m] has quit [Quit: Client limit exceeded: 6]
<VITAS[m]> we could try something different than apache webserver for the job
RockyTV[m] has joined #spacedock
<RockyTV[m]> any logs?
<DasSkelett[m]> (All the other /browse pages are timing out too)
<RockyTV[m]> looks at nginx
<VITAS[m]> yes
<RockyTV[m]> spacedock is a bit slower than what it was an hour ago
<VITAS[m]> because we removed the bypass
<VITAS[m]> and i might need to tweek some settings in ats and for the sd containers
<DasSkelett[m]> Everything except the api seems to be quite fast still.
<VITAS[m]> i gave sd less ram
<VITAS[m]> 10gb instead of 20
<VITAS[m]> because i think it doesnt need such a big slice
<VITAS[m]> ats also has to build its cache again
<RockyTV[m]> wow, /api/browse/top is still loading (about 3 minutes now)
<VITAS[m]> i think its a good idea to get a more realistic testbed
<VITAS[m]> cant be tat we only discover what doesnt work when we put it into prod
<VITAS[m]> we need stuff like db seeding, load simulation and tests
<DasSkelett[m]> We'd need a db with 2k mods, 45k users, a bunch of versions per mod, a big bunch of download events per mod version.
<DasSkelett[m]> These are the most performance impacting tables.
<VITAS[m]> db seeding
<VITAS[m]> can do that for you
<VITAS[m]> it fills the db with predefined typs of values
<Darklight[m]> Confirmed that debian's .43 version is not affected by the bug (although tested it on my real server, so it isn't the most-simple-case, but still...)
<DasSkelett[m]> MAybe I can firgure out some code to put into the `./spacedock` script for seeding.
<VITAS[m]> Darklight: could you check if the bug is allready posted?
<VITAS[m]> DasSkelett: normaly there are libs for it mostly part of the db layer aka alembic
<VITAS[m]> you dont have to write that by hand
<VITAS[m]> because the db layer knows the db structure
<VITAS[m]> you then simply runa command telling it to put x amount of entries in the db
<VITAS[m]> the laravel vue version of sd i started to code can do that
<DasSkelett[m]> SqlAlchemy might have an option for that, I don't think Alembic has.
<VITAS[m]> i can even define: this is a persons name so i want first and last names
<VITAS[m]> you could investigate
<DasSkelett[m]> That's what I'm doing right now.
<Darklight[m]> https://pastebin.com/aFZNcBtb for reference this makes the error happen on the latest ubuntu
<VITAS[m]> first results i found
<Darklight[m]> Where sdmods is a cifs mount with these options: ``guest,rw,vers=3.1.1,cache=strict,uid=33,forceuid,gid=33,forcegid,file_mode=0777,dir_mode=0777,soft,nounix,serverino,mapposix,rsize=4194304,wsize=4194304,echo_interval=60,actimeo=1``
<Darklight[m]> I gotta go now, it's past midnight and I work early tomorrow again
<Darklight[m]> Short story: ubuntu affected, debian is not
<VITAS[m]> Darklight: apache should be made aware of the bug if they arent
<DasSkelett[m]> <span class="d-mention d-user">RockyTV</span> I found that, they are doing it manually there though. Let me check what VITAS found.
<VITAS[m]> Darklight: thx for your help :)
<Darklight[m]> Imma sleeeeep
<Darklight[m]> But yeah all g, hopefully you don't have too many fires left over 😛
<Darklight[m]> And even then our "bug" isn't a huge one because we have xsendfile
<VITAS[m]> DasSkelett: it should be something that can be run seperatly as a command and uses the existing migration defnitions as rule or even integrate into them
<VITAS[m]> with laravel its as easy as defining your db structure and then adding options for the seeder to that config
<DasSkelett[m]> I don't think this should be an alembic script.
<DasSkelett[m]> Seeding is not really part of the migration. I would keep it separate, e.g. as command in `./spacedock`
<Darklight[m]> I don't know what you mean by seeding, I was massively distracted as you saw, but just hammer spacedock's API if you need to have a test database setup
<RockyTV[m]> ^
<RockyTV[m]> shouldn't be too hard to create 45k users with a for loop
<VITAS[m]> DasSkelett: it is seperate but to be able to seed it has to know the structure
<DasSkelett[m]> Directly using SqlAlchemy to insert would probably be faster than going via a webserver
<Darklight[m]> It definitely is
<Darklight[m]> Alrighty, going for real ^_^
<DasSkelett[m]> <span class="d-mention d-user">VITAS</span> our structures are defined in `objects.py`
<VITAS[m]> heres how it works in laravel: https://laravel.com/docs/7.x/seeding
<Darklight[m]> Creating 10k mods takes a few minutes because there is 3 calls you have to do per mod
<Darklight[m]> Create, edit, publish
<VITAS[m]> so you see what im trying to say
<Darklight[m]> The API has no "this is the description for this mod" thing
<VITAS[m]> seeding has the nice effect of testing random variations and finding bugs that way
<DasSkelett[m]> <span class="d-mention d-user">Darklight</span> this is why directly using SqlAlchemy would be faster.
<VITAS[m]> it has to be replicated by others
<DasSkelett[m]> Random data will be hard to replicate though
<VITAS[m]> it has to be well defined so others can even use it
<VITAS[m]> just read up on the last link i posted
<VITAS[m]> its a proven dev method like unit tests
RockyTV[m] has quit [Quit: Client limit exceeded: 6]
Darklight[m] has quit [Quit: Client limit exceeded: 6]
<DasSkelett[m]> Something's up again, the site is really slow.
<DasSkelett[m]> Or is it my browser?
<VITAS[m]> no im getting warnings
<VITAS[m]> its the db
Webchat818 has quit [Quit: webchat.esper.net]
<VITAS[m]> restarted sd but something is hammering it
<DasSkelett[m]> That actually might be the netkan bot hitting the api, which I suspect floods the database with queries.
<VITAS[m]> great
<DasSkelett[m]> I'm not able to confirm it until I have the seeding set up, but I suspect it's https://github.com/KSP-SpaceDock/SpaceDock/pull/286.
<DasSkelett[m]> We might have to remove the `"downloads": version.download_count()` key again.
<VITAS[m]> and i want to eat my spätzle now. pleas dont kill the site
<VITAS[m]> :)
<VITAS[m]> can you somehow ratelimit the bot?
<VITAS[m]> its againr amping up
<DasSkelett[m]> Not really
<DasSkelett[m]> <span class="d-mention d-user">HebaruSan</span> are you around? Do you think it's worth a try to remove the per-version download count from the api again for now?
HebaruSan[m] has joined #spacedock
<HebaruSan[m]> I'm catching up now. The API is slow?
<VITAS[m]> api slow sd overloading db
<VITAS[m]> to the point of no answer
<VITAS[m]> suspect ckan bot
<HebaruSan[m]> Sure, it makes sense to me to remove that or fix it
<HebaruSan[m]> Did we change anything else? Removing extra spaces couldn't cause this?
<DasSkelett[m]> Added time zone, doubt that's it though.
<HebaruSan[m]> There's a backref from DownloadEvent -> ModVersion anyway, should be using that instead of a query.filter
<HebaruSan[m]> ModVersion.downloads
<VITAS[m]> whats the bot ip?
<HebaruSan[m]> Hmm, maybe there are just too many DownloadEvent rows
<HebaruSan[m]> Yeah let's pull that
<DasSkelett[m]> Doing a PR
<HebaruSan[m]> We could switch to using ModVersion.downloads, but if there are thousands of records, that may not help much
<HebaruSan[m]> The test looks for that property, just take that out
<HebaruSan[m]> Also are we starting in alpha again?
<HebaruSan[m]> Also are we starting in alpha again?
<DasSkelett[m]> Ah damn, misclicked.
<HebaruSan[m]> So what is `DownloadEvent.query.count()` in prod? Like 2 billion?
<DasSkelett[m]> A lot, I guess.
<HebaruSan[m]> Are the alpah and beta servers running? I get 502 and 503
<HebaruSan[m]> Are the alpha and beta servers running? I get 502 and 503
<VITAS[m]> dont know might also have been affected
<HebaruSan[m]> OK <span class="d-mention d-user">VITAS</span> pull master to fix the API slowness issue
<VITAS[m]> on prod?
<VITAS[m]> !!
<DasSkelett[m]> Yes
<VITAS[m]> if that breaks anything i will come and get you
<HebaruSan[m]> Well deploy it however you want
<HebaruSan[m]> You don't have to run just a `git pull` because I said so, but the changes are there
<VITAS[m]> exactly
<VITAS[m]> i do it because i trust you and you take responsibility for your suggestions :)
<VITAS[m]> if you dont trust your code enough to do not mess up anything i wont either
<DasSkelett[m]> We wouldn't have merged it if we though it breaks something.
<DasSkelett[m]> We wouldn't have merged it if we thought it breaks something.
<HebaruSan[m]> RIght. I thought we were in emergency mode trying to solve this as it was
<VITAS[m]> my alternative would be to limit the bots connections
<VITAS[m]> until we fixed it
<DasSkelett[m]> This won't solve it. It will always slow down over time, the bot isn't the only one accessing SpaceDock.
<HebaruSan[m]> `DownloadEvent` is like that old saying, "Water, water, everywhere, but not a drop to drink"
<VITAS[m]> i dont want you to say stuff like "your choice" i know its mine. it feels like you can say "was your choice" if it explodes
<VITAS[m]> makes me cautious
<HebaruSan[m]> Well however you do it, get that change into prod
<HebaruSan[m]> Otherwise the server will stay broken
<DasSkelett[m]> But we won't. We know it was my code change + PR, and HebaruSan approved it. If it explodes, we all are at fault. I will never blame you for that.
<HebaruSan[m]> What about your A/B thing? Could you try it in the inactive one?
<VITAS[m]> i put it on b first
<VITAS[m]> exactly
<VITAS[m]> what im doing atm
<VITAS[m]> https://sd-prod-stage.52k.de/kerbal-space-program <- are there tests you can do?
<HebaruSan[m]> Yeah https://sd-prod-stage.52k.de/api/browse/new is blazingly fast now
<HebaruSan[m]> Good job <span class="d-mention d-user">DasSkelett</span>
<VITAS[m]> it uses the live db
<HebaruSan[m]> Err, https://sd-prod-stage.52k.de/api/browse/top is better
<HebaruSan[m]> Yeah confirmed that was the issue
<VITAS[m]> why are my images broken here?
<DasSkelett[m]> Wow, that's really fast. 🏎️
<VITAS[m]> <checks apache db
<VITAS[m]> -db +config
<HebaruSan[m]> Looks good, safe to go to prod
<VITAS[m]> i got no images again :(
<VITAS[m]> is live
<VITAS[m]> and ive another problem ive to fix :/
pizzaoverhead has joined #spacedock
pizzaoverhead has quit [Client Quit]
pizzaoverhead has joined #spacedock
<VITAS[m]> 70% less cpu usage atm
<VITAS[m]> good work
<HebaruSan[m]> <span class="d-mention d-user">DasSkelett</span>
<DasSkelett[m]> Finally! Haha 😛
<VITAS[m]> :)
<HebaruSan[m]> And in case anyone is curious, last page: https://spacedock.info/kerbal-space-program/browse/top?page=64
<DasSkelett[m]> Yes, went there earlier to try see mods without default version and 0 score, but I think we're hiding them.
<HebaruSan[m]> Yeah that's what I was looking for as well
<VITAS[m]> cascading delete
<DasSkelett[m]> As in, query all and iterate over it, deleting them one by one?
<VITAS[m]> the tables should have references to each ohter and if you delete cascading the db delates all linked entries in other tables
<HebaruSan[m]> What is it you want to delete, Mods, or ModVersions?
<DasSkelett[m]> In the end, both. All mods of this game and all mod versions of mods of this game.
<DasSkelett[m]> That cascade delete looks interesting. It needs a schema update though...
<VITAS[m]> yes but worth it
<VITAS[m]> will prevent amny other situations
<VITAS[m]> many
pizzaoverhead has quit [Ping timeout: 189 seconds]
<VITAS[m]> its best to use a db designer or do a achart at least to figure out what is connected to what
<VITAS[m]> to prevent ring dependencycs and so on
pizzaoverhead has joined #spacedock
<DasSkelett[m]> Hmm, that would expand the scope of the simple database seeding commit quite a bit.
<VITAS[m]> yes into affecting quite a bit of sd code
<VITAS[m]> because you cnat simply delete a parent alayment anymore wihtout clearing out children first and so on
<VITAS[m]> depends on the amount of work you want into streamlining things
pizzaoverhead has quit [Ping timeout: 189 seconds]
<VITAS[m]> cascading and key constraints happen in the db level so even if you screw up your code you cant mess up the db structure
<DasSkelett[m]> `ModVersion` doesn't have a `game_id` column.
<VITAS[m]> and speedups are also included
<HebaruSan[m]> > `ModVersion` doesn't have a `game_id` column.
<HebaruSan[m]> <span class="d-mention d-user">DasSkelett</span> Ouch!
pizzaoverhead has joined #spacedock
<VITAS[m]> game_id of mod version should come via mod as parent obj of modversion shouldnt it?
<HebaruSan[m]> Yeah, it just complicates the delete he's trying to do
<VITAS[m]> yes as i said: hes at a crossroads
<VITAS[m]> i suggest waiting a few days and if prod runs good enough we dont need urgent fixing we can decide if we want to invest the time
<VITAS[m]> if you go with key constraints it will surface some problems with existing querys
<DasSkelett[m]> If I'm honest, I don't really want to surface existing query problems...
<VITAS[m]> you could go with Darklights script to fill a db for now
<VITAS[m]> it is seeding youre doing isnt it?
<DasSkelett[m]> I have the filling part (mostly, still trying do speed it up with bulk inserts), it's the cleaning part that I'm stuck with.
<VITAS[m]> ah ok
<VITAS[m]> and loops arent working because obove
<VITAS[m]> above
<DasSkelett[m]> I though it would be quite easy to do to just remove all the columns again so I can test the seeding multiple times.
<HebaruSan[m]> Maybe something with `subquery` and `in_`?
<DasSkelett[m]> Apparently, once inserted SQL doesn't like giving data away again.
<VITAS[m]> you can use last id
<VITAS[m]> to get the last incremental id inserted
<DasSkelett[m]> Best case "unseeding" would still work after I did some other changes to the db, like manual mod uploads.
<VITAS[m]> just truncate the table and be done with it
<VITAS[m]> :D
<HebaruSan[m]> There's nothing at the db level to "reset all tables to previous state" is there?
<VITAS[m]> if its random test data
<VITAS[m]> no
<VITAS[m]> you can do backups
<VITAS[m]> like dump to sql file and then empty db and run that again
<VITAS[m]> i think this is getting way more complex than a dirty fix should be :)
<HebaruSan[m]> Meanwhile I forget <span class="d-mention d-user">DasSkelett</span>, were we ready to merge CKAN#3059?
<DasSkelett[m]> Good question. It looks like I have already marked most files as "Viewed" (which I use to remember which files I've already reviewed and am happy with).
<DasSkelett[m]> Let me try it out for SpaceDock mods again, then I think we're good.
<DasSkelett[m]> So yeah, the subquery thing gets me further, but then it fails becuase of the foreign key constraint and the rows referencing each other.
<DasSkelett[m]> Looks like we _do_ have to setup the cascade stuff, but for now, I'm going to drop the entire database and recreate it.
<HebaruSan[m]> Wow, SQL is really picky
pizzaoverhead_ has joined #spacedock
pizzaoverhead has quit [Ping timeout: 378 seconds]
<DasSkelett[m]> Ouch, creating 10k users takes 60 minutes, even with bulk inserts :/
<HebaruSan[m]> ~3 per second?
<DasSkelett[m]> Around that, yes. Just clocked up my PC, now I'm at around 6 per second.
<DasSkelett[m]> That's actually just generating the user objects, inserting should be done in one big bulk at the end.
<DasSkelett[m]> Maybe I can remove some string concatenations.
<HebaruSan[m]> Wait are you inserting 10k in one block?
<DasSkelett[m]> Trying it ^^
RockyTV[m] has joined #spacedock
<HebaruSan[m]> Or 100 or something
<RockyTV[m]> try inserting like 1k per block, no?
<RockyTV[m]> or comitting each single one after you create it 😛
<HebaruSan[m]> Might this be something to do directly in SQL, without the sqlalchemy layer taking up memory and CPU?
<DasSkelett[m]> Did insert after each one in the beginning, wasn't very fast either.
<DasSkelett[m]> Good idea <span class="d-mention d-user">HebaruSan</span> , let's try.
<HebaruSan[m]> After all all those objects just exist to be compiled down to an SQL statement
<HebaruSan[m]> (unless my understanding of sqlalchemy is way off, which it may very well be)
<VITAS[m]> i think its more about one insert per row or one for all
<DasSkelett[m]> Found the trouble-maker: `user.set_password()`. Secure hashing takes time...
<HebaruSan[m]> It's always the hashes!
<VITAS[m]> how do you generate the values?
<DasSkelett[m]> Hehe, should've known better by now.
<VITAS[m]> you are still at seeding the db arnt you?
<DasSkelett[m]> Yes
<VITAS[m]> how do you generate the values?
<DasSkelett[m]> Which values? Passwords?
<VITAS[m]> no to seed the db
RockyTV[m] has quit [Quit: Client limit exceeded: 6]
VictorMout[m] has joined #spacedock
<VictorMout[m]> You know this might not be the most secure way to talk about modifying your website might wanna make a private channel
<VITAS[m]> why?
<VITAS[m]> its open source
<HebaruSan[m]> They're not saying anything confidential
<DasSkelett[m]> Oh, I'm not yet filling out much, just what's needed. Currently all the values are the same / count up.
<VictorMout[m]> Ah i didn’t know that
<VITAS[m]> youre welcome to join
<DasSkelett[m]> If nobody's posting any secret connection strings, everything's fine 😬
<HebaruSan[m]> Also last time I advised VITAS to make a private channel he just made another public one
<VITAS[m]> DasSkelett: you should randomize vars they can trigger bugs that way
<VITAS[m]> i dont know much about discord
<DasSkelett[m]> <span class="d-mention d-user">VITAS</span> yep, planned. But want to get the basic functionality working first, plugging in randomization should be fairly easy afterwards.
<VITAS[m]> only that it scans my drive and watches my processes
<VITAS[m]> DasSkelett: you write evrything yourself?
<VITAS[m]> why?!
<DasSkelett[m]> Not sure what you mean with writing everything myself.
<VITAS[m]> if youre using a ready made seeding function you usaly define the type of values your tables have and it generatres matching ones
<VITAS[m]> e.g. names
<VITAS[m]> you just tell the seed command how many entries you want
<DasSkelett[m]> I have yet to find a seeding command that you just need to give a number of rows.
<VITAS[m]> whatever you use needs to know the structure of your db first
<DasSkelett[m]> Yes?
<HebaruSan[m]> What's the rate on that? Still 2-3/sec?
<DasSkelett[m]> Oh no, that's 50k in ~12 seconds
<HebaruSan[m]> Oh nice!
<VITAS[m]> its not about less lines as you know
<DasSkelett[m]> So the whole seeding process with 50k users, 10k mods and 100k mod versions (10 per mod) takes 1m 15s right now.
<VITAS[m]> its not about troughput either
<HebaruSan[m]> `DownloadEvent`?
<DasSkelett[m]> Don't have it yet <span class="d-mention d-user">HebaruSan</span>
<VITAS[m]> i want as much codes others maintain for us as possible
<HebaruSan[m]> I bet the DownloadEvent table is a high percentage of prod's total disk space
<VITAS[m]> id wish we would use established processes and tools
<DasSkelett[m]> for loops are established, I'd say.
<VITAS[m]> sigh
<VITAS[m]> if you insist
<HebaruSan[m]> As is sqlalchemy
<HebaruSan[m]> It's not like he's composing SQL commands with a bash script
<HebaruSan[m]> I kind of wonder if it would make sense to create that list with a generator comprehension expression thing
<DasSkelett[m]> Again, if you have a certain tool you want me to use <span class="d-mention d-user">VITAS</span>, tell me, but I don't want to search through Pypi for hours figuring out what each module does, how it works and if it's usable in our case and maintained. And trying it out, realizing it doesn't work as expected, ditching it, trying another one...
<HebaruSan[m]> `users = (User(...) for i in range(user_count))`
<HebaruSan[m]> Then we'd have the option of batching them in smaller groups later if we want to
<HebaruSan[m]> Could probably copy/paste Leon's sqs queue helper function
<VITAS[m]> there are 3 seeders on the page. i dont know the one fitting your needs
<VITAS[m]> was a long day im tired
<VITAS[m]> night
<HebaruSan[m]> Good night!
pizzaoverhead_ has quit [Quit: Leaving]
VictorMout[m] has quit [Quit: Client limit exceeded: 6]
* HebaruSan[m] uploaded an image: unknown.png (41KB) < https://matrix.52k.de/_matrix/media/r0/download/52k.de/yxOGXgSDrIEUAYpvJORpLDcT >
<HebaruSan[m]> <span class="d-mention d-user">VITAS</span> https://spacedock.info/mod/2458/JebKerman%27s%20Enhanced%20Part%27s
<HebaruSan[m]> That's not published yet, but it looks like malware
<HebaruSan[m]> Shall we try locking it?
DasSkelett[m] has quit [Quit: Client limit exceeded: 6]
<HebaruSan[m]> > <span class="d-mention d-user">HebaruSan</span> do you have any screenshots for #293 (modpack fixes)?
<HebaruSan[m]> <span class="d-mention d-user">RockyTV</span> Not yet, I'll add some
VITAS[m] has quit [Quit: Client limit exceeded: 6]
RockyTV[m] has joined #spacedock
<RockyTV[m]> > Shall we try locking it?
<RockyTV[m]> I guess so (there's no way to check file contents automatically, right?)
<HebaruSan[m]> I'll let <span class="d-mention d-user">DasSkelett</span> do the honrs
<HebaruSan[m]> I'll let <span class="d-mention d-user">DasSkelett</span> do the honors